gpt4 book ai didi

java - KeyPairGenerator 不生成随 secret 钥

转载 作者:行者123 更新时间:2023-12-02 08:21:42 28 4
gpt4 key购买 nike

我使用 KeyPairGenerator 生成 RSA key 对,我注意到它始终生成完全匹配的 key ,而不是应有的随 secret 钥?也许有人知道为什么会这样?

我的代码现在看起来像这样:

private static KeyPair generateKeyPair(Provider provider, int keySize) throws Exception
{

KeyPair keyPair = null;

/* get the eracom keystore - access to the adapter */
//KeyStore keyStore = KeyStore.getInstance("CRYPTOKI", provider.getName());
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA", provider.getName());

keyPairGenerator.initialize(keySize);
keyPair = keyPairGenerator.generateKeyPair();

return keyPair;
}

问题已解决:这是 HSM 和我使用的提供商的问题。看看 Joachim Sauer 回复的评论。

最佳答案

我也遇到过同样的问题。对我有用的代码是:

KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");    
SecureRandom random = SecureRandom.getInstance("SHA1PRNG", "SUN");
keyGen.initialize(1024,random);
KeyPair key = keyGen.generateKeyPair();

现在打印它们以检查 key 是否不同,使用:

System.out.println(key.getPrivate());
System.out.println(key.getPublic());

SecureRandom 生成器使用给定算法 (SHA1PRNG)(在本例中为 SUN)和 privider(在本例中为 SUN)创建一个新的随机数。您可以在这里找到更多信息:https://docs.oracle.com/javase/tutorial/security/apisign/step2.html和API在这里: http://docs.oracle.com/javase/8/docs/api/java/security/SecureRandom.html

关于java - KeyPairGenerator 不生成随 secret 钥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5352978/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com