构建端到端加密服务的正确方法是什么?
我的思考过程-
为用户创建公共密钥和私钥,在握手阶段(当两个用户聊天开始聊天时),使用公共密钥与接收者共享密钥
一旦双方都获得了密钥,我想可以使用pycrypto库对Tx侧消息进行加密,并且可以使用第一步中共享的密钥在Rx侧对它们进行解密。
我的问题-如何实现DH密钥交换?我们在python中有库吗?
PS:该应用程序是使用gRPC构建的,
谢谢
答案 0 :(得分:0)
如何不重新发明轮子呢?
import socket
import ssl
s = socket.socket(...)
secure = ssl.wrap_socket(s, keyfile="mykey", certfile="mycert")
openssl将建立一个ssl会话并进行协商。然后,您可以通过安全套接字进行通信。