【发布时间】:2016-10-02 18:13:52
【问题描述】:
在SJCL Demo 中有“随消息一起发送参数和验证数据”复选框。将消息减少为非常短的字符串。
我找不到用于加密(和解密)函数的有效参数列表:
var encryptedMessage = sjcl.encrypt(key,message, ??? );
var decryptedMessage = sjcl.decrypt(key,encryptedMessage);
【问题讨论】:
-
当复选框被选中时,必要的参数将与消息一起发送,例如 iv 和密码 salt。如果接收者已经知道这些,则不需要发送。
-
选项列出了here,你对哪些有问题?加密选项包含在“encryptedMessage”中,这是一种容器格式,因此您无需在解密期间指定它们。这能回答你的问题吗?
-
请注意,这是一种愚蠢(不是 SJCL 的第一个愚蠢),因为它允许攻击者填写选项,例如较小的身份验证标签。你最好自己检查变量。
标签: javascript encryption cryptography sjcl