AES加密
Posted 学习、实践、总结
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AES加密相关的知识,希望对你有一定的参考价值。
AES加密叫Advanced Encryption Standard,是高级加密标准。
这个标准用来替代原来的DES
优点:
① 抵抗所有已知的攻击。
② 在多个平台上速度快,编码紧凑。
③ 设计简单。
Java加密代码如下:
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
private static String encrypt(String inputKey, String inputContent) { try { SecretKeySpec secretKeySpec = new SecretKeySpec(inputKey.getBytes("UTF-8"), "AES"); Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec); byte[] encodedBytes = cipher.doFinal(inputContent.getBytes("UTF-8")); StringBuilder builder = new StringBuilder(); for (byte b : encodedBytes) { String plainText = Integer.toHexString(0xff & b); if (plainText.length() < 2) plainText = "0" + plainText; builder.append(plainText); } return builder.toString(); } catch (Exception e) { System.out.println(e.getMessage()); } return ""; }
如上代码的正确性有待商榷。
以上是关于AES加密的主要内容,如果未能解决你的问题,请参考以下文章
更新实现代码对称加密与解密剖析:AES,高级加密标准(Advanced Encryption Standard,缩写AES)