(5)数据库检查当前记录j中的Pointer值,若Pointer=0,则再添加一条新的记录k:(ID、S1new、Rrnew、j),并将记录j中的Pointer值改为k。若Pointer!=0,则找到第Pointer所指的记录,将其内容修改为(ID、S1new、Rrnew、j)。

(6)标签收到Hash(ID||R)、R和EN(S2new)后,标签计算Hash(ID||R),并与收到的Hash(ID||R)进行比对,比对成功则读写器认证通过,标签对EN(S2new)解密后更新影子图像S2,否则会话结束。标签与读写器间的认证过程如图2所示。

基于视觉密码的RFID是如何实现安全的

3 协议安全性分析

3.1 双向身份验证分析

标签与读写器间的双向身份验证是设计安全协议时需考虑的首要问题,本文只有合法的标签才拥有正确的影子图像S2,S2与其对应的S1重叠后恢复的信息才与Rr的信息吻合;若标签是伪造的,则其恢复的信息与Rr的信息不一致。所以利用S2可实现读写器对标签身份的认证。协议中S2以密文的方式传送,所以即便传送的信息泄露,攻击者也无法得到S2的任何信息。此外,当后端系统通过对标签的认证时,协议会生成新的影子图像S2new、计算标签ID与随机数R的哈希值,并将Hash(ID||R)、R和EN(S2new)发送给标签,标签通过Hash(ID||R)的计算比较,实现标签对阅读器的认证。最后,在整个协议过程中,ID不在读写器和标签间传输,所以攻击者无法获得正确的ID,除非标签从物理上被攻破。认证时标签要发送Hash(ID)、EN(S2),仅持有正确的Hash(ID)是毫无用处的。总体来讲,协议能够安全可靠地实现读写器与标签间的双向认证。

3.2 不可跟踪性分析

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查