公钥和私钥对通过 java 脚本算法在客户端创建,然后将公钥传输到服务器。
个人私钥的副本以 java 脚本变量的形式存储在用户计算机上。
当用户 A 向用户 B 发送消息时
服务器使用用户 B 的公钥加密消息。
用户 B 获取消息并使用用户 B 的私钥对其进行解密(用 java 脚本编写的算法),该私钥是私有的并保存在 java 脚本变量中。
用户 B 的私钥在任何时候都不会通过网络公开。
那会安全吗???
公钥和私钥对通过 java 脚本算法在客户端创建,然后将公钥传输到服务器。
个人私钥的副本以 java 脚本变量的形式存储在用户计算机上。
当用户 A 向用户 B 发送消息时
服务器使用用户 B 的公钥加密消息。
用户 B 获取消息并使用用户 B 的私钥对其进行解密(用 java 脚本编写的算法),该私钥是私有的并保存在 java 脚本变量中。
用户 B 的私钥在任何时候都不会通过网络公开。
那会安全吗???
'public' 和 'private' 只是两个键的名称。两个密钥中哪个是公开的,哪个是私有的并不重要,只要你永远不会混淆使用。一旦两个密钥同时可供某人使用,消息传递系统的安全性就会被彻底破坏。
从技术上讲,由于您说密钥存储在 javascript 变量中,因此您暗示这些变量是在嵌入在某些基于浏览器的 html/javascript 中的 CLEAR 中发送的。这进一步意味着没有安全性——因为两个密钥都暴露在网络中。
要确定某事是否“安全”,您必须知道安全要求是什么。您的案例满足了一些可能的要求,但也有一些可能的要求不满足。例如:
所以总的来说,我不会认为这种设计是“安全的”。
它不会太安全,因为: