java生成key
时间: 2023-07-16 07:16:02 浏览: 116
java密钥生成工具
3星 · 编辑精心推荐
在 Java 中生成 Key 可以使用 Java 的密钥工厂(KeyFactory)类。下面是一个简单的示例:
```java
import java.security.*;
import java.security.spec.*;
public class GenerateKey {
public static void main(String[] args) throws Exception {
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(2048);
KeyPair keyPair = keyPairGenerator.generateKeyPair();
PrivateKey privateKey = keyPair.getPrivate();
PublicKey publicKey = keyPair.getPublic();
byte[] privateKeyBytes = privateKey.getEncoded();
byte[] publicKeyBytes = publicKey.getEncoded();
KeyFactory keyFactory = KeyFactory.getInstance("RSA");
PKCS8EncodedKeySpec privateKeySpec = new PKCS8EncodedKeySpec(privateKeyBytes);
PrivateKey regeneratedPrivateKey = keyFactory.generatePrivate(privateKeySpec);
X509EncodedKeySpec publicKeySpec = new X509EncodedKeySpec(publicKeyBytes);
PublicKey regeneratedPublicKey = keyFactory.generatePublic(publicKeySpec);
System.out.println("Private key: " + privateKey);
System.out.println("Public key: " + publicKey);
}
}
```
这个代码示例使用 RSA 算法生成一个 2048 位的密钥对。它生成一个公钥和一个私钥,将它们存储为字节数组。然后使用密钥工厂将这些字节数组转换回 PublicKey 和 PrivateKey 对象,并输出它们的值。
阅读全文