-
對(duì)稱(chēng)加密算法-PBE查看全部
-
對(duì)稱(chēng)加密算法-AES使用場(chǎng)景查看全部
-
對(duì)稱(chēng)加密算法-AES查看全部
-
對(duì)稱(chēng)加密算法-AES查看全部
-
對(duì)稱(chēng)加密算法-3DES查看全部
-
對(duì)稱(chēng)加密算法-DES查看全部
-
對(duì)稱(chēng)加密算法查看全部
-
對(duì)稱(chēng)加密算法-PBE查看全部
-
對(duì)稱(chēng)加密算法-AES查看全部
-
對(duì)稱(chēng)加密算法-DES查看全部
-
對(duì)稱(chēng)加密算法3DES查看全部
-
pbe流程查看全部
-
DES代碼查看全部
-
對(duì)稱(chēng)加密算法回顧:<br> 1:DES是最基本的算法,出身比較好美國(guó)軍方通過(guò)IBM來(lái)實(shí)現(xiàn)的<br> 2:3DES由于DES有漏洞不安全,所以,產(chǎn)生了3DES,應(yīng)用更加的廣泛,不過(guò)效率不高,所以才有了后來(lái)的AES<br> 3:AES是應(yīng)用更加廣泛的一種對(duì)稱(chēng)加密算法,安全性更高<br> 4:PBE本質(zhì)是其他對(duì)稱(chēng)加密算法一種綜合,加入了鹽(隨機(jī)字符串)防止密碼的暴力破解 注意:實(shí)際的加密解密不是在一起的,通常是將秘要發(fā)送給解密的那一方來(lái)實(shí)現(xiàn)的,或者實(shí)現(xiàn)約定好了的查看全部
-
public static void jdkPBE() { try { SecureRandom random = new SecureRandom(); byte[] salt = random.generateSeed(8); // 加 密 口令與密鑰 String password = "imooc"; PBEKeySpec pbeKeySpec = new PBEKeySpec(password.toCharArray()); SecretKeyFactory factory = SecretKeyFactory.getInstance("PBEWITHMD5andDES"); Key key = factory.generateSecret(pbeKeySpec); PBEParameterSpec pbeParameterSpec = new PBEParameterSpec(salt,100); Cipher cipher = Cipher.getInstance("PBEWITHMD5andDES"); cipher.init(Cipher.ENCRYPT_MODE, key, pbeParameterSpec); byte[] result = cipher.doFinal(src.getBytes()); System.out.println("jdk PBE encrypt: " + Base64.encodeBase64String(result)); //解密 //初始化 cipher.init(Cipher.DECRYPT_MODE, key,pbeParameterSpec); result = cipher.doFinal(result); System.out.println("jdk PBE decrypt: " + new String(result)); } catch (Exception e) { e.printStackTrace(); } }查看全部
舉報(bào)
0/150
提交
取消