我有一个私钥和指数,我需要在android应用程序中实现字符串的RSA加密。 我该怎么做?有没有RSA加密的默认类?RSA加密与密钥和指数在android中
回答
public void saveToFile(String fileName, BigInteger mod, BigInteger exp)
throws IOException {
ObjectOutputStream oout = new ObjectOutputStream(
new BufferedOutputStream(new FileOutputStream(fileName)));
try {
oout.writeObject(mod);
oout.writeObject(exp);
} catch (Exception e) {
throw new IOException("Unexpected error", e);
} finally {
oout.close();
}
}
PublicKey ReadPublicKeyFromFile(String keyFileName) throws IOException {
InputStream in = RSACrypt.class.getClassLoader().getResourceAsStream(keyFileName);
ObjectInputStream oin = new ObjectInputStream(new BufferedInputStream(
in));
try {
BigInteger m = (BigInteger) oin.readObject();
BigInteger e = (BigInteger) oin.readObject();
RSAPublicKeySpec keySpec = new RSAPublicKeySpec(m, e);
KeyFactory fact = KeyFactory.getInstance("RSA");
PublicKey pubKey = fact.generatePublic(keySpec);
return pubKey;
} catch (Exception e) {
throw new RuntimeException("Spurious serialisation error", e);
} finally {
oin.close();
}
}
从http://www.developpez.net/forums/d1001867/java/developpement-web-java/besoin-daide-rsa/
这是用于任何文件加密,但我需要加密字符串,如用户名和密码 – praveenLal 2012-03-30 09:49:24
不是真的,这是从文件加载/保存公钥,但我没有看到与您的问题的直接连接。 – 2012-03-30 13:16:15
这是对问题作者评论的回答。在他关于readPubklicKey – Snicolas 2012-03-30 13:38:11
- 1. 的Java加密/与RSA产生从模密钥和解密指数
- 2. C#RSA加密与私钥
- 3. RSA加密公钥?
- 4. RSA密钥加密/解密问题
- 5. 无法解密RSA加密密钥
- 6. 加密和解密与RSA的文字和DES3钥匙串
- 7. 用RSA公钥和私钥加密和解密一个SecretKey
- 8. RSA - 负指数加密
- 9. Android:如何用RSA密钥解密一个openssl加密文件?
- 10. RSA Android加密/ RSA PHP解密
- 11. 在android中存储RSA密钥对
- 12. RSA SSL密钥加密更改
- 13. .NET RSA加密:最小密钥大小?
- 14. Python:Pycrypto RSA公共密钥加密错误
- 15. .NET私钥Rsa加密
- 16. RSA加密基于公钥
- 17. RSA使用公钥加密
- 18. RSA加密 - 用私钥
- 19. 加密:使用模和指数生成RSA私钥
- 20. 在JAVA中使用公共和私有RSA密钥进行加密和解密
- 21. 雨云JOSE JWT加密与RSA,私钥和公钥
- 22. 在加密++中加载PEM编码的私有RSA密钥
- 23. 使用Java中的RSA公钥文件加密AES密钥
- 24. 为什么在RSA中不支持使用RSA私钥加密RSA密钥格式的数据?
- 25. 如何在golang中使用rsa密钥对进行AES加密和解密
- 26. RSA密钥...(bob_pub,bob_priv)
- 27. 使用RSA公钥加密DSA私钥
- 28. RSA使用给定的公钥XML加密字符串 - 模块和指数 - ANDROID
- 29. 3DES与Java中的RSA密钥交换
- 30. Javascript来PHP - RSA加密与模数和指数
的可能重复的[RSA加密:爪哇和Android之间的区别](http://stackoverflow.com/questions/6069369/rsa-encryption-difference-between-java-and- android) – Snicolas 2012-03-30 09:29:11
但我不能使用这个PublicKey pubKey = readPublicKeyFromFile(mod,ex);在mod和ex变量中需要什么值,是字符串还是int? – praveenLal 2012-03-30 09:36:17
我不同意@Snicolas,最重要的步骤是定义字符编码,并派生一个会话密钥会话密钥(或者,或者定义一个容器格式,如CMS)。这两个问题都没有涉及到这个问题。 – 2012-03-30 13:20:07