发布时间:2025-11-16 21:56:22 点击量:
HASH GAME - Online Skill Game GET 300
• • • • • • 散列函数 H 是一个公开的函数,它将任意长度的消息M变换为固定长 度的散列码 h 。 h=H (M) – M:变长消息,H(M):定长的散列值 散列函数是一种算法,算法的输出内容称为散列码或者消息摘要。 消息摘要要唯一地对应原始消息,如果原始消息改变并且再次通过散 列函数,它将生成不同的消息摘要,因此散列函数能用来检测消息地 完整性,保证消息从建立开始到收到为止没有被改变和破坏。 运行相同算法的接受者应该收到系统的消息摘要,否则保温是不可信 的。 散列函数又称为:哈希( Hash )函数、数字指纹(Digital fingerprint)、压缩(Compression)函数、数据认证码(Data Authentication Code)等
• Berson表明,对单循环MD5,使用不用的密码分析可能在 合理的时间内找出能够产生相同摘要的两个消息,这个结 果被证明对四个循环中的任意一个循环也成立,但作者没 有能够提出如何攻击包含全部4个循环MD5的攻击。 • Boer和Bosselaers显示了即使缓存ABCD不同,MD5对单个 512bit分组的执行将得到相同的输出(伪冲突)。 • Dobbertin的攻击技术:使MD5的压缩函数产生冲突,即寻 找:
• H 能用于任意大小的分组; • H 能产生定长的输出; • 对任何给定的x,H(x)要相对易于计算,使得硬件和软件 实现成为实际可能; • 对任何给定的码 h ,寻找 x 使得 H(x)=h 在计算上是不可 行的,即单向性(one-way); • 对任意给定的分组 x,寻找不等于x 的 y,使得 H(x)=H(y) 在计算上是不可行的,即弱抗冲突性(Weak Collision-free); • 寻找对任意的 (x, y) 对使得 H(x)=H (y) 在计算上是不可行 的,即强抗冲突性(Strong Collision-free);