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 加密库文档

图片展示

AES 加密算法

RSA 加密算法

Bouncy Castle 加密库