我正在通过简单的聊天实现AES-GCM。既然随机数公开是没有问题的,并且我需要在每封邮件中进行更改,那么我可以不随邮件本身一起加密未加密的随机数吗?
一个例子:
有这样的功能:
AESGCM(nonce, key, data_to_encrypt, unencrypted_data)
我使用这种方式:
message = AESGCM(nonce, key, data, nonce)
然后,加密的消息将如下所示:
unencrypted_nonce | encrypted_data | authentication_tag
答案 0 :(得分:1)
AES-GCM文档提到了3次随机数;
在指定上下文中仅使用一次的值。
IV本质上是一个随机数
AESGCM(nonce, key, data, unencrypted_data)
类似于计数器模式,对于块密码,提供的现时值为IV
。它曾经用来防止密码学中的某些攻击。
nonce
,那么您希望如何解密该消息。它必须未经加密发送。