理想密码系统与协议的评判标准
在当今数字化时代,密码学在保障信息安全方面起着至关重要的作用。然而,什么样的密码系统或协议才称得上是好的呢?这是一个值得深入探讨的问题。下面将从多个方面来阐述理想密码系统与协议的评判标准。
1. 保护强度与应用需求相匹配
以“电话抛硬币”协议为例,如果使用实用的单向哈希函数(如 SHA - 1)来实现,该协议对于 Alice 和 Bob 通过电话决定娱乐场所来说是足够好的。SHA - 1 的输出是 160 位的位串,可编码为 40 个十六进制字符,便于在电话中读取和记录。而且,若 Alice 想作弊,找到满足 f(x) = f(y) 的 x 和 y 并非易事;Bob 根据 f(x) 判断 x 的奇偶性也有一定难度。
但在更严肃的密码学应用中,公平抛硬币原语对安全性的要求要严格得多。例如,在某些零知识证明协议中,需要随机比特串输入,且双方必须相互信任该随机输入,否则会对双方造成严重损害。此时,使用像“电话抛硬币”协议中实用哈希函数的安全级别可能就不够了。
另一方面,过度强大的保护有时会阻碍预期的安全服务正常运行。比如,Rivest 和 Shamir 提出的 MicroMint 微支付方案,利用了加密算法的已知缺陷。该方案假设只有资源丰富的服务提供商(如大银行或金融机构)能够在实用单向函数下高效地准备大量“碰撞”。这里使用数据加密标准(DES)作为单向函数,以实现相对较小的输出空间(64 位)。在这个方案中,碰撞被用于实现微支付服务,而强大的单向函数(如输出空间为 160 位的 SHA - 1)会使该服务无法实现。
使用重量级密码技术设计安全系统,可能会给人一种增强了安全性的错觉,但实际上可能只是一种虚假的保证。过
超级会员免费看
订阅专栏 解锁全文
3385

被折叠的 条评论
为什么被折叠?



