我正在编写一个模块,该模块使用ZeroMQ套接字和Pycryptodome创建一个安全的通信通道。
客户端和服务器之间的初始握手将遵循以下步骤:
我在this thread上发现,最好先对邮件签名然后再加密,而不是先加密再签名。
问题在于,对于2048位RSA密钥,签名的长度为256个字节。同一密钥的最大加密大小为190字节。这意味着我无法按照线程中的建议对签名进行加密。
我应该用AES会话密钥加密签名吗?我应该采取其他方式吗?
我知道有“标准化的”密钥交换协议(例如ECDH),但在Pycryptodome中尚不可用。
Cipher: RSA PKCS1 OAEP
Signing : PKCS1 PSS w/ BLAKE2b hash