目前,我正在研究在加密方面创建(peer2peer)消息传递客户端的可能性,从而实现安全性.此应用程序将基于Web技术(如果可能).
我的问题是:只能使用javascript(客户端& node.js / peer.js)进行端对端加密?如果是,查看HMAC(RSA)加密技术是否正确?我已经尝试了解这些图书馆的工作原理,但我迄今没有运气:)
lib的我觉得很有趣,但是我并不知道(在这个用例中)如何实现(完全)
> http://bitwiseshiftleft.github.io/sjcl/
> https://github.com/Caligatio/jsSHA
> https://code.google.com/p/crypto-js/
如果需要,我可以尝试详细说明.
更新:
该应用程序将成为移动应用程序.网络技术的使用是一个有点证明的概念.
解决方法
您正在查看安全性实现.如果你不明白安全模式和这些图书馆背后的密码学,您的解决方案将非常安全.
Artjom是正确的,指出对于对等加密你最有可能需要双方身份验证.这不是通常的SSL / TLS提供的,您需要客户端身份验证.但是,对于客户端和服务器认证,您需要建立信任.在正常浏览器上,这是由内部证书商店提供的.然而,信任客户是非常棘手的.
所有其他的东西(如RSA不是HMAC)是实现细节.但是,您现在应该不会执行与安全有关的任何事项.首先关注您的用例,威胁情景和协议设计.