700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Java中常用的加密算法MD5 SHA RSA

Java中常用的加密算法MD5 SHA RSA

时间:2022-08-08 00:36:49

相关推荐

Java中常用的加密算法MD5 SHA RSA

1.MD5加密,常用于加密用户名密码,当用户验证时。

protectedbyte[]encrypt(byte[]obj){try{MessageDigestmd5=MessageDigest.getInstance("MD5");md5.update(obj);returnmd5.digest();}catch(NoSuchAlgorithmExceptione){e.printStackTrace();}}

2.SHA加密,与MD5相似的用法,只是两者的算法不同。

protectedbyte[]encrypt(byte[]obj){try{MessageDigestsha=MessageDigest.getInstance("SHA");sha.update(obj);returnsha.digest();}catch(NoSuchAlgorithmExceptione){e.printStackTrace();}}

3.RSA加密,RAS加密允许解密。常用于文本内容的加密。

importjava.security.KeyPair;importjava.security.KeyPairGenerator;importjava.security.interfaces.RSAPrivateKey;importjava.security.interfaces.RSAPublicKey;importjavax.crypto.Cipher;/***//***RSAEncrypt**@authormaqujun*@see*/publicclassRSAEncrypt{/***//***MainmethodforRSAEncrypt.*@paramargs*/publicstaticvoidmain(String[]args){try...{RSAEncryptencrypt=newRSAEncrypt();StringencryptText="encryptText";KeyPairGeneratorkeyPairGen=KeyPairGenerator.getInstance("RSA");keyPairGen.initialize(1024);KeyPairkeyPair=keyPairGen.generateKeyPair();//GeneratekeysRSAPrivateKeyprivateKey=(RSAPrivateKey)keyPair.getPrivate();RSAPublicKeypublicKey=(RSAPublicKey)keyPair.getPublic();byte[]e=encrypt.encrypt(publicKey,encryptText.getBytes());byte[]de=encrypt.decrypt(privateKey,e);System.out.println(encrypt.bytesToString(e));System.out.println(encrypt.bytesToString(de));}catch(Exceptione){e.printStackTrace();}}/***//***ChangebytearraytoString.*@returnbyte[]*/protectedStringbytesToString(byte[]encrytpByte){Stringresult="";for(Bytebytes:encrytpByte){result+=(char)bytes.intValue();}returnresult;}/***//***EncryptString.*@returnbyte[]*/protectedbyte[]encrypt(RSAPublicKeypublicKey,byte[]obj){if(publicKey!=null){try...{Ciphercipher=Cipher.getInstance("RSA");cipher.init(Cipher.ENCRYPT_MODE,publicKey);returncipher.doFinal(obj);}catch(Exceptione){e.printStackTrace();}}returnnull;}/***//***Basicdecryptmethod*@returnbyte[]*/protectedbyte[]decrypt(RSAPrivateKeyprivateKey,byte[]obj){if(privateKey!=null){try{Ciphercipher=Cipher.getInstance("RSA");cipher.init(Cipher.DECRYPT_MODE,privateKey);returncipher.doFinal(obj);}catch(Exceptione){e.printStackTrace();}}returnnull;}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。