一种适用于RFID认证系统的Hash函数构造方法_2

文档序号:9633642阅读:来源:国知局
l,电子标签与后台数据库之间的秘密值Si取为标签的唯一身份标识 UID巧PC标准)0x020000A6800010D000112DED,其认证过程如下:
[00巧](I)R-T :阅读器随机生成一个随机数r = 0X9A054E17D03CBD4E,向标签发送r和 Query认证请求;
[0056] (2)T-R:标签收到请求后计算H(SllTIDlIr),并将其发送给阅读器并储存r。其 中,H( ?)为散列运算,运里选取系统尺寸L= 10的化Sh函数,II为级联操作。
[0057] H(S| |TID| Ir)
[0061] (3) R-D :阅读器收到标签发来的H (SM TID Mr)后,将其和r发给数据库;
[00間 (4)D-R:数据库查询并计算是否存在某个数据对灯IDi, Si),使得H(Si| ITIDiI Ir) =H(S M TID M r),若不存在,则认证失败;若存在,则数据库计算并将H(TIDi M r)发给阅读 器;
[006引妨R-T :阅读器收到数据库发来的HCTIDi Mr)后,将其转发给标签,标签收到 HOlDiMr)后,计算H OlD I Ir),验证H OlD Mr)是否等于HOlDi I Ir),若相等,则认证通过; 否则,认证失败。
[0067] 由于本发明方法采用禪合动态整数帐篷映象格子模型实现扩散与混淆,格点间的 禪合起到了扩散作用,使得一个格点值能够影响到其他格点,双重取模运算起到了很好的 混淆作用,使得映射很难进行逆向运算,保证了化Sh函数的单向性。运样利用本发明对含 有TID的信息进行散列运算,避免了 TID在不安全的无线信道中直接传播,即便标签与读写 器通讯的内容被截获,由于化Sh函数具有单向性,攻击者无法从截获的信息中恢复出原消 息,无法获取任何有用的情报。
[0068] 进一步的,为了验证本发明方法的效果,对上述所构造的化Sh函数的性能分析如 下:
[006引 1.随机性测试
[0070] 根据美国国家标准与技术研究院(化tional Insti1:ute of Standards and Technology, NIST)提供的 Special F*ublication 800-22 标准,利用 S. T. S-2. I. 2 测试包对 生成的Hash值进行随机性测试。该测试采用假设检验的方法,使用统计量P_value来判定 是否接受原假设。运里取显著性水平a =0.01,若P_value> a,则接受原假设,认为序 列是随机的,通过该项测试。测试结果如下表2所示:
[0071] 表2 NIST随机性测试结果
[0072]
[0073] 本发明中的化Sh函数生成的序列通过了全部测试,可W认为生成的序列是一个 比较理想的随机序列。
[0074] 2.初值敏感度测试
[00巧]首先按照EPCglobal的标准及编码结构,随机给出一个电子标签的UID,为十六进 制数0X020000A6800010D000112D邸,共96bit。对UID采用几种不同规模的Hash函数进行 散列运算,并对原消息进行改动再进行散列运算,结果如下表3所示。
[0076] 表3初值敏感度测试结果
[0077]
[0078] 由上表可W看出,原消息具有微小改变,其散列值会有很大差异,表明算法具有很 高的初值敏感度。
[0079] 3.混乱与扩散性质统计分析
[0080] 通常用于分析混乱与扩散性质的四个统计量为:
[0081] 平均比特变化数:
[008引平均比特变化率:
[0085] 比特变化数的均方差:
[0087] 比特变化率的均方差:
[0089] 上式中,Bi为第i次实验中输出的化Sh值与原化Sh值相比改变的比特数。一次 实验是指,对原消息进行散列运算得到化Sh值Hi,改变原消息化it后再进行散列运算得到 化Sh值&,比较Hi与H 2的每一比特变化情况,N为实验次数。
[0090] 对不同长度的化Sh算法进行统计分析,得到如下表4所示结果:
[0091] 表4混乱与扩散性质统计分析结果
[009引由上表可W看出,本发明所提出的化Sh函数在任何输出长度下其平均比特变化 率都比较接近理论值50 %,算法具有很好的混乱与扩散性质。而比特变化率的均方差表明, 算法具有很强的稳定性。
[0094] 4.碰撞测试
[0095] 由于化Sh函数的输出长度固定,而输入长度没有限制,故一定存在两个不同的输 入产生相同散列值的情况。找到一对碰撞消息的难易程度是衡量一个化Sh函数安全等级 的重要依据。碰撞测试的一般方法是随机选取一段消息,计算出其散列值;再改变原消息中 的化it,也计算出其散列值。比较两个散列值的相同位置上的字节,若一样则称为击中一 次。重复W上步骤统计其击中次数。下表5给出了几种化Sh函数的碰撞测试结果,实验次 数为1832次。
[0096] 表5化Sh函数碰撞测试结果
[0097]
[0098] 上表在一定程度上反映了算法的抗碰撞性能,对于L = 30,改变原消息化it,输出 30字节化Sh值中有约有2. 36个字节相同,可见碰撞概率较低。
[0099] 5.字符距离测试
[0100] 字符距离是一种测试两个化Sh值是否相互独立的统计量,其定义如下:
[0102] 其中,d为字符距离,Hi[i]和H2[i]分别W十进制数表示两个化Sh值的第i个字 节的值;S为化Sh值的字节长度。
[0103] 两个独立且各字节取值都服从均匀分布的化Sh值的字符距离理论值为85. 33。
[0104] 理论值的推导过程为:
[0105] 85. 33的推导过程可抽象为如下概率模型:两个在[0, 255]内服从均匀分布的离 散随机变量rii和n 2,在其定义域内取每个值的概率均为2 8,现求随机变量C = I Iii-n2 的数学期望B(C)。
[0106] C的分布如下表所示。
[0107] C 分布
[0109]故容易求得 B(C) = 85. 33。
[0110] 测试时改变原消息化it,求出两个化Sh函数的字符距离,并重复W上步骤1832 次,求其平均字符距离。下表6给出了本发明算法在不同输出长度下的平均字符距离计算 结果。
[0111] 表6平均字符距离
[0112]
[0113] 由上表可W看出,本发明提出的化Sh算法的字符距离比较接近理论值,可W认为 更改原消息化it后,新的化Sh值与原化Sh值是两个相互独立的随机序列。
[0114] 综上所述,本发明采用的适用于RFID认证系统的化Sh函数构造方法有如下特 占. y?、、?
[0115] (1)迭代运算使用了禪合动态整数帐篷映象格子模型,具有均匀分布性及良好的 非线性特征,并且实现简单,运算速度快;
[0116] (2)运算及数据存储采用单字节方式,能根据RFID硬件资源的限制调整计算规 模,具有输出任意字节长度散列值的能力,从而可W根据用户需求W及RFID系统的安全性 需求来确定Hash函数的输出长度,十分适用于硬件资源有限的系统,便于软件实现;
[0117] (3)传统化Sh函数的操作只能用串行方式实现,该算法的迭代结构适应于并行方 式实现;
[0118] (4)该方法描述简单,运算过程全部采用基于8位操作数的一些简单位操作,易于 软件实现,借鉴并改进了混浊密码学研究中广泛采用的帐篷映射模型,将其从实数域变换 到整数集中,并引入了动态化机制,充分利用了帐篷映射拉伸与折叠的非线性本质与均匀 分布的特性。
[0119] W上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该W权利要求书的保护范 围为准。
【主权项】
1. 一种适用于RFID认证系统的Hash函数构造方法,其特征在于,所述方法包括: 建立耦合动态整数帐篷映象格子模型; 根据RFID认证系统的硬件资源及应用场合确定所述RFID认证系统的尺寸L;所述L为 所述耦合动态整数帐篷映象格子模型的格子数,同时也是Hash函数的输出字节数; 针对待散列的数据消息进行填充,填充后的消息字节数为b,且b为L的最小整数倍; 将填充后的消息分为若干组,使每组的字节数为L,将各组的对应字节进行累加,再对256求余数,得到一个长度为L字节的数组作为迭代初值; 将所述迭代初值带入所建立的耦合动态整数帐篷映象格子模型中进行L步迭代,将第L+10步的迭代结果作为最终Hash函数的输出值。2.根据权利要求1所述适用于RFID认证系统的Hash函数构造方法,其特征在于,所述 建立耦合动态整数帐篷映象格子模型的过程为: 将动态整数帐篷映射用如下公式1进行描述:其中,8〇1) = |^(11)+1^(11)]1]1〇(121%上式中,1(11)表示第11步迭代结果;1^(11)表示每一步 迭代时的动态参量;2k-l为X(η)取值的整数集上界;mod为取余数运算; 然后用所述动态整数帐篷映射作为耦合映象格子模型的非线性函数,耦合方式如公式 2所示: 公式 2:xt(n+l) = (f[xt(n)]+f[xtl(n)]+f[xt+1(n)])mod2k; 上式中,i的取值范围为:〇, 1,…,L-l,L为RFID认证系统的尺寸;X1(n+1)表示第i个 格点的第n+1步迭代所得状态值;f( ·)表示格点的非线性函数,这里取为所述动态整数帐 篷映射;2k为格点取值的状态数目。3.根据权利要求1所述适用于RFID认证系统的Hash函数构造方法,其特征在于,所述 填充后的消息字节数b表示为: b=Wl; 上式中A1为原消息的字节数;b2为进行消息填充的消息字节数,且填充的消息内容为 若干字节的十六进制数80 ;1表示一个字节,内容为原消息的比特数。
【专利摘要】本发明公开了一种适用于RFID认证系统的Hash函数构造方法,建立耦合动态整数帐篷映象格子模型;根据RFID认证系统的硬件资源及应用场合确定所述RFID认证系统的尺寸L;针对待散列的数据消息进行填充,填充后的消息字节数为b,且b为L的最小整数倍;将填充后的消息分为若干组,使每组的字节数为L,将各组的对应字节进行累加,再对256求余数,得到一个长度为L字节的数组作为迭代初值;将所述迭代初值带入所建立的耦合动态整数帐篷映象格子模型中进行L步迭代,将第L+10步的迭代结果作为最终Hash函数的输出值。利用该方法可以随格子数目的变化,得到不同字节长度的散列值,具有输出任意字节长度散列值的能力。
【IPC分类】H04L9/06
【公开号】CN105391544
【申请号】CN201510808969
【发明人】刘建东, 张啸, 王淑鸿, 赵晨
【申请人】北京石油化工学院
【公开日】2016年3月9日
【申请日】2015年11月19日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1