2013-10-19 49 views
0

我发现了一些使用java KeyPairGenerator生成RSA密钥Pais的示例。但是我正在寻找的是一种使用现有的RSA密钥对来加密/解密消息的方法。例如,我可以在eclipse中生成SSH2密钥对,我可以使用它来处理不同的事情(例如,签署maven artefact,访问git ....)如何在Java中使用带密码的RSA密钥

但是我没有发现java例子如何加载我的私人密码(密码保护) RSA密钥并加密/解密消息。

我该怎么做?任何人都可以给我一个简单的例子。

这是一个公共密钥的一个示例:

SSH-RSA AAAAB3NzaC1yc2EAAAADAQABAAAAgQCYUsJ8cqtZD +/hJRl5Pq6k7139hjpNKdrHzB/vndcFq1aLS3da2iS0BZu17FS + RwVIj29aFwmdqh0OSck648yZC5O79Uf2k/tT6Nx1z7P7KCWJTQ9zrd9t ++ Ox6RWzkIgj4q5oq8P/S6P/3f1NeG2SZoPrWpRojQsWl8LPqdVTvQ == RSA-1024

+1

你能指定源吗?喜欢从文件或其他东西加载? – Maximin

+0

我用eclipse或openssh生成密钥。我在我的问题中添加了一个公钥示例 – Ralph

回答

2

Here有一个很好的RSA加密的例子。

+0

我知道如何生成rsa密钥并加密解密。我的问题Java生成的rsa密钥和使用openssh生成的rsa密钥之间有什么区别。有没有办法在Java中转换此密钥? – Ralph

+0

mm ..试试看[这个](http://stackoverflow.com/questions/3660132/formatting-rsa-keys-for-openssl-in-java) – RobotMan

+0

谢谢。是的,所以我想我将使用由Java生成的RSA PKCS-#8编码格式。据我所知,用户可以将open-ssh密钥格式转换为非标准格式,如果他需要的话。 – Ralph