我正在构建我的网站,其中我遇到了实施加密的问题。我正在使用java中的RESTful Web服务开发它。
我从javascript中找到了用于加密的GibberishAES API。加密的消息现在转到Web服务,但我不知道如何在(java)Web服务中解密它。我知道GibberishAES在java中不可用,但是有没有迂回的方式?
或者,是否有Java和Javascript都支持的加密API?
我也有网站(对称)密钥分发的问题。它将有100个客户端(机器,在公共网络中),我不知道如何将特定机器的唯一密钥传送给它。
请帮助我指出这方面的问题。
答案 0 :(得分:0)
GibberishAES实施AES加密。 AES是一种对称密码,这意味着双方必须知道共享密钥。分发密钥的问题并非无足轻重,并且存在众所周知的算法。
正如在一些评论中提到的那样,SSL已经解决了这个问题,因为它协商生成分布式密钥,后来用于加密。如果由于任何原因您无法使用SSL,则应采用某种机制来安全生成或传输密钥。例如,您可以在客户端生成一个ephimeral RSA密钥对,将公钥发送到服务器,让服务器以包装形式返回密钥(AES)密钥。