我们绝不存储用户聊天记录!

 人参与 | 时间:2025-11-27 00:48:13

想和ta聊一些私密的不存话,一方面 :

必须保证传输安全 ,储用传输内容如何不被黑客窥探 ?户聊必须保证存储安全,存储内容如何不泄露?天记

先聊第一个问题 ,信息安全传输方法与思路。不存

一、储用初级阶段 :信息裸传

特点  :在网络上传递明文;

黑客定理一:网络上传递的户聊数据是不安全的,网络属于黑客公共场所 ,天记能被截取 。不存

如何改进呢 ?储用很容易想到 ,先加密 ,户聊再传输 。天记

二、高防服务器不存进阶阶段 :传输密文

特点 :

服务端和客户端先约定好加密算法,储用加密密钥;客户端 ,户聊传输前用约定好的密钥加密;传输密文;服务端 ,收到消息后用约定好的密钥解密;

黑客定理二 :客户端是不安全的,属于黑客本地范畴,能被逆向工程 。

任何客户端与服务端提前约定好的算法与密钥都是不安全的 ,那如何改进呢 ?

不能固定密钥 ,一个用户一个密钥。源码下载

三 、中级阶段 :一人一密,服务端生成密钥

特点:

客户端和服务端提前约定好加密算法,在传递消息前 ,先协商密钥;客户端,请求密钥;服务端 ,返回密钥;然后用协商密钥加密消息 ,传输密文;

这么传输安全么 ?答案是否定的。

根据黑客定理一 ,网上传输的内容是不安全的  ,于是源码库乎,黑客能得到加密key=X;根据客定理二 ,客户端和服务端提前约定的加密算法是不安全的,于是乎,黑客能得到加密算法;于是乎,黑客截取后续传递的密文,可以用对应的算法和密钥解密;

应该如何优化呢?根本上 ,密钥不能在网络上直接传输 。

四、服务器租用再进阶阶段:一人一密 ,客户端确定密钥 ,密钥不再传输

特点:

协商的密钥无需在网络传输;使用“具备用户特性的东西”作为加密密钥,例如:用户密码的散列值;一人一密 ,每个人的密钥不同;然后密钥加密消息,传输密文;服务端从db里获取这个“具备用户特性的东西” ,解密;

黑客定理三 :用户客户端内存是安全的 ,属于黑客远端范畴 ,认为是云计算安全的 。

画外音 :中了木马,电脑被控制了另说。

使用“具备用户特性的东西”作为加密密钥,一人一密 ,是安全的。但这仍不是最优方案 。

五 、高级阶段:一次一密,密钥协商

每次通信前 ,都进行密钥协商,亿华云一次一密。

密钥协商过程,如下图所述 ,需要随机生成三次动态密钥 :

两次非对称加密密钥(公钥 ,私钥);一次对称加密密钥;

此称为 ,安全信道建立的“三次握手” ,安全信道建立之后,再进行密文发送 。

密钥交换的步骤为 :

(1) 服务端随机生成公私钥对(公钥pk1,私钥pk2) ,并将公钥pk1传给客户端;

画外音 :此时黑客能截获pk1。

(2) 客户端随机生成公私钥对(公钥pk11,私钥pk22) ,并将公钥pk11  ,通过pk1加密 ,传给服务端 ,服务端收到密文 ,用私钥pk2解密 ,得到pk11;

画外音 :此时黑客能截获密文 ,也知道是通过pk1加密的 ,但由于黑客不知道私钥pk2,是无法解密的 。

(3) 服务端随机生成对称加密密钥key=X,用pk11加密 ,传给客户端 ,客户端收到密文 ,用私钥pk22解密,得到key=X;

画外音:同理,黑客由密文无法解密出key  。

至此 ,安全信道建立完毕 ,后续通讯用key=X加密,以保证信息的安全性 。

六 、总结

信息安全方案设计三大假设 :

网络上传递的数据是不安全的 ,能被截取;用户客户端是不安全的 ,属于黑客本地范畴,能被逆向工程;客户端内存是安全的 ,属于黑客远端范畴,可以认为是安全的;

对于信息安全传输的不同阶段:

明文消息传递如同裸奔 ,不安全;客户端和服务端提前约定加密算法和密钥 ,不安全;

画外音 :有没有公司是这么实现的?=_= 。

一人一密,服务端随机生成密钥 ,发送给客户端,不安全;一人一密 ,客户端使用“具备用户特性的东西”作为加密密钥 ,安全;一次一密,三次握手建立安全信道 ,安全;

再聊第二个问题,存储内容如何不泄露 ?

似乎只能靠公司人品?

很多公司说 ,我们绝不存储用户聊天记录! !  !

你觉得呢 ?

顶: 3739踩: 39