发布时间:2025-11-21 19:48:54 点击量:
HASH GAME - Online Skill Game GET 300

散列函数 又称 hash 函数, Hash 函数(也称杂凑函数或杂凑算法)就是把任意长的输入消息串变化成固定长的输出串的一种函数。 这个输出串称为该消息的杂凑值。 一般用于产生消息摘要, 密钥加密等. 一个安全的杂凑函数应该至少满足以下几个条件: ①输入长度是任意的; ②输出长度是固定的,根据目 前的计算技术应至少取1 28bits 长,以便抵抗生日 攻击; ③对每一个给定的输入,计算输出即杂凑值是很容易的 ④给定杂凑函数的描述,找到两个不同的输入消息杂凑到同一个值是计算上不可行的,或给定杂凑函数的描述和一个随机选择的消息,找到另一个与该消...
散列函数 又称 hash 函数, Hash 函数(也称杂凑函数或杂凑算法)就是把任意长的输入消息串变化成固定长的输出串的一种函数。 这个输出串称为该消息的杂凑值。 一般用于产生消息摘要, 密钥加密等. 一个安全的杂凑函数应该至少满足以下几个条件: ①输入长度是任意的; ②输出长度是固定的,根据目 前的计算技术应至少取1 28bits 长,以便抵抗生日 攻击; ③对每一个给定的输入,计算输出即杂凑值是很容易的 ④给定杂凑函数的描述,找到两个不同的输入消息杂凑到同一个值是计算上不可行的,或给定杂凑函数的描述和一个随机选择的消息,找到另一个与该消息不同的消息使得它 们杂凑到同一个值是计算上不可行的。 Hash 函数主要用于完整性校验和提高数字签名的有效性,目 前已有很多方案。 这些算法都是伪随机函数,任何杂凑值都是等可能的。 输出并不以可辨别的方式依赖于输入;在任何输入串中单个比特的变化,将会导致输出比特串中大约一半的比特发生变化。 常 见散列函数(Hash 函数) MD5( Message Digest Algorithm 5): 是 RSA 数据安全公司 开发的一种单向散列算法, MD5被广泛使用, 可以用来把不同长度的数据块进行暗码运算成一个1 28位的数值; SHA( Secure Hash Algorithm) 这是一种较新的散列算法, 可以对任意长度的数据运算生成一个1 60位的数值; MAC( Message Authentication Code): 消息认证代码, 是一种使用密钥的单向函数, 可以用它 们在系统上或用户 之间认证文件或消息。 HMAC( 用于消息认证的密钥散列法) 就是这种函数的一个例子。 CRC( Cyclic Redundancy Check): 循环冗余校验码, CRC 校验由于实现简单,检错能力强, 被广泛使用在各种数据校验应用中。 占用系统资源少, 用软硬件均能实现, 是进行数据传输差错检测地一种很好的手段( CRC 并不是严格意义上的散列算法, 但它 的作用与散列算法大致相同, 所以归于此类)。 讨论几种散列函数。 在以下的讨论中, 我们假设处理的是值为整型的关键码, 否则我们总可以建立一种关键码与正整数之间的一一对应关系, 从而把该关键码的检索转化为对与其对应的正整数的检索; 同时, 进一步假定散列函数的值落在0到 M-1之间。 散列函数的选取原则是: 运算尽可能简单; 函数的值域必须在散列表的范围内 ;尽可能使得结点均匀分布, 也就是尽量让不同的关键码具有不同的散列函数值。 需要考虑各种因素: 关键码长度、 散列表大小、 关键码分布情况、 记录的检索频率等等。下面我们介绍几种常用的散列函数。