【发布时间】:2014-12-01 16:05:29
【问题描述】:
This 网站描述了一种使用库在 java 中实现 RSA 的方法。是否可以控制公共指数 e 的值? Java 将其设置为 65537。我知道这是一个合适的值,但我可以在仍然使用库的同时更改它吗?
他们是这样实现的:
KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");
kpg.initialize(2048);
KeyPair kp = kpg.genKeyPair();
Key publicKey = kp.getPublic();
Key privateKey = kp.getPrivate();
KeyFactory fact = KeyFactory.getInstance("RSA");
RSAPublicKeySpec pub = fact.getKeySpec(kp.getPublic(),
RSAPublicKeySpec.class);
RSAPrivateKeySpec priv = fact.getKeySpec(kp.getPrivate(),
RSAPrivateKeySpec.class);
saveToFile("public.key", pub.getModulus(),
pub.getPublicExponent());
saveToFile("private.key", priv.getModulus(),
priv.getPrivateExponent());
【问题讨论】:
标签: java encryption cryptography rsa public-key-encryption