Java 加密是保证数据安全的重要手段。本文将为您介绍 Java 中常用的加密算法和操作。
常用加密算法
- 对称加密:使用相同的密钥进行加密和解密,如 AES、DES。
- 非对称加密:使用一对密钥进行加密和解密,如 RSA、ECC。
- 哈希加密:将任意长度的数据转换成固定长度的字符串,如 MD5、SHA-1。
Java 加密库
Java 提供了丰富的加密库,以下是一些常用的:
- JCE (Java Cryptography Extension):Java 标准加密扩展库。
- Bouncy Castle:一个开源的加密库,提供了更多加密算法。
示例:AES 加密
以下是一个使用 AES 加密算法的示例:
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
public class AESEncryption {
public static void main(String[] args) throws Exception {
// 生成密钥
KeyGenerator keyGenerator = KeyGenerator.getInstance("AES");
keyGenerator.init(128);
SecretKey secretKey = keyGenerator.generateKey();
// 创建加密器
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(secretKey.getEncoded(), "AES"));
// 加密数据
String data = "Hello, world!";
byte[] encryptedData = cipher.doFinal(data.getBytes());
// 输出加密后的数据
System.out.println("Encrypted data: " + new String(encryptedData));
}
}
扩展阅读
更多关于 Java 加密的信息,您可以访问我们的 Java 加密库文档。