【发布时间】:2014-08-03 04:48:02
【问题描述】:
我正在编写一个应用程序,用户可以在其中通过端到端加密在设备之间进行通信。为此,我使用 libsodium 加密库。非对称加密函数 crypto_box(...) 需要一个随机数作为参数之一。
我对如何处理 nonce 有点困惑。发给一个人的每条消息都需要使用不同的随机数加密吗?这似乎不对,因为我必须将使用过的 nonce 存储在具有公共访问权限的服务器上,攻击者可以再次使用其中一个使用过的 nonce。
从 A 发送到 B 的所有消息都具有不同的 nonce 就足够了吗?或者可以使用 nonce 从 A 发送消息到 B 不能用于从 C 发送到 B?
谁能给我解释一下。
【问题讨论】:
-
“nonce”实际上是“Number used ONCE”的缩写。所以是的,你使用不同的数字!
标签: encryption encryption-asymmetric nonce libsodium