2014-01-30 55 views
2

我必须实现具有以下scenerio的AES加密/解密。如何将AES加密中使用的密钥共享给其他应用程序进行解密?

有两个应用程序App1和App2运行在不同的服务器上。 App1将加密(使用AES加密)一些数据并将其提供给App2。 App2将使用AES解密解密相同的数据。密钥需要与App2共享以进行解密。那么,如何与App2共享密钥?在这种情况下我们可以使用java密钥库吗?

+0

检查: http://stackoverflow.com/questions/10829218/encryption-decryption-using-shared-key-in-java。也检查http://javadigest.wordpress.com/2012/08/26/rsa-encryption-example /用于RAS加密解密 –

+0

如果您只想使用AES。然后钥匙必须口头分享给对方。因为如果密钥是任何第三方都知道的,没有什么会阻止他们解码它。 – Reddy

回答

6

在这种情况下,我们可以使用java密钥库吗?

Java密钥库文件可用于共享密钥数据,但您需要密码保护此文件以确保其他方无法读取密钥。所以你只是将问题改变为如何安全地共享密码。

解决原始问题的常用方法是use asymmetric cryptography。通过用收件人持有的公钥加密AES密钥,确保没有其他人可以读取密钥数据。但是,您仍然需要一种确定公钥对应于您的预期收件人的方法。为此,大多数人回复到a PKI的一些描述。

这是一个广泛的主题领域,值得您在为您的用例确定正确方法之前进一步阅读。

相关问题