主权项 |
一种基于低成本标签的移动无线射频识别认证方法,其特征在于包括以下步骤:步骤一、在认证协议运行之前的注册阶段,执行系统进行初始化;(1)存储信息Rid<sub>j</sub>,K<sub>i</sub>,Sy<sub>j</sub>,Pk,△T<sub>j</sub>到移动阅读器,其中△T<sub>j</sub>=1;(2)存储信息K<sub>i</sub>,Tid<sub>i</sub>到标签;(3)存储信息Rid<sub>j</sub>,K<sub>i</sub>,Sy<sub>j</sub>,△T<sub>j</sub>,Tid<sub>i</sub>,T<sub>info</sub>,Sk到服务器,其中△T<sub>j</sub>=0;其中,Rid<sub>j</sub>是第j个移动阅读器的身份号,K<sub>i</sub>是移动阅读器与第i个标签之间的共享密钥,Sy<sub>j</sub>是第j个移动阅读器与服务器之间的对称加密密钥,Pk是服务器的公钥,△T<sub>j</sub>是第j个移动阅读器的计数器,Tid<sub>i</sub>是第i个标签的身份号,T<sub>info</sub>是标签代表的商品的详细信息,Sk是服务器的私钥;步骤二、正常认证阶段;(1)移动阅读器发出查询认证请求;移动阅读器产生随机数Nr<sub>j</sub>,然后计算M<sub>1</sub>=Nr<sub>j</sub>⊕K<sub>i</sub>和M<sub>2</sub>=h(Nr<sub>j</sub>);移动阅读器将M<sub>1</sub>和M<sub>2</sub>发送给标签;(2)标签利用自己存储的共享密钥K<sub>i</sub>,计算并判断<img file="FDA0000712312350000011.GIF" wi="333" he="73" />是否成立;如果<img file="FDA0000712312350000012.GIF" wi="326" he="74" />成立,证明移动阅读器合法,否则标签不响应;标签验证移动阅读器合法后,产生随机数Nt<sub>i</sub>;然后计算:M<sub>3</sub>=Nt<sub>i</sub>⊕K<sub>i</sub>,M<sub>4</sub>=h(Nt<sub>i</sub>⊕Nr<sub>j</sub>),M<sub>5</sub>=h(Tid<sub>i</sub>⊕Nt<sub>i</sub>);标签将信息M<sub>3</sub>,M<sub>4</sub>,M<sub>5</sub>发送给移动阅读器;(3)移动阅读器收到消息后,利用共享密钥K<sub>i</sub>计算出Nt<sub>i</sub>,然后验证<img file="FDA0000712312350000013.GIF" wi="351" he="85" />是否成立;如果<img file="FDA0000712312350000014.GIF" wi="372" he="73" />成立,证明标签合法,继续下一步处理;如果<img file="FDA0000712312350000015.GIF" wi="358" he="76" />不成立,证明标签非法,放弃认证;证明标签合法后,移动阅读器首先在自身中查找是否存在Tid<sub>i</sub>,并验证<img file="FDA0000712312350000016.GIF" wi="372" he="78" />是否成立;如果<img file="FDA0000712312350000017.GIF" wi="371" he="76" />成立,则认证成功,否则,移动阅读器计数器增加1,即△T<sub>j</sub>=△T<sub>j</sub>+1;然后移动阅读器利用服务器公钥Pk加密信息Rid<sub>j</sub>,△T<sub>j</sub>,Nr<sub>j</sub>,M<sub>5</sub>,Nt<sub>i</sub>,得到M<sub>6</sub>=E<sub>Pk</sub>(Rid<sub>j</sub>||△T<sub>j</sub>||Nr<sub>j</sub>||M<sub>5</sub>||Nt<sub>i</sub>);移动阅读器将信息M<sub>6</sub>发送给服务器;(4)服务器收到消息M<sub>6</sub>后,用自己的私钥Sk进行解密,即计算D<sub>Sk</sub>(M<sub>6</sub>),得到信息Rid<sub>j</sub>,△T<sub>j</sub>,Nr<sub>j</sub>,M<sub>5</sub>,Nt<sub>i</sub>;首先服务器查找是否存在一个移动阅读器身份号等于Rid<sub>j</sub>,如果存在证明此移动阅读器合法,继续认证处理;如果不存在证明此移动阅读器不合法,放弃认证;如果移动阅读器合法,对服务器存储的移动阅读器Rid<sub>j</sub>对应的△T<sub>j</sub>与私钥解密得到的△T<sub>j</sub>′进行比较;如果私钥解密得到的△T<sub>j</sub>′不大于服务器存储的△T<sub>j</sub>, 说明此消息为重放消息,放弃认证;否则,在服务器中查找标签信息,计算并判断<img file="FDA0000712312350000021.GIF" wi="366" he="75" />是否成立,如果<img file="FDA0000712312350000022.GIF" wi="360" he="74" />成立说明标签合法,服务器更新存储的△T<sub>j</sub>为私钥解密得到的△T<sub>j</sub>′,利用移动阅读器的对称密钥Sy<sub>j</sub>加密信息Tid<sub>i</sub>,T<sub>info</sub>,Nr<sub>j</sub>,得到M<sub>7</sub>=E<sub>Syj</sub>(Tid<sub>i</sub>||T<sub>info</sub>||Nr<sub>j</sub>);服务器将信息M<sub>7</sub>发送给移动阅读器;其中,Nr<sub>j</sub>是第j个移动阅读器产生的随机数,Nt<sub>i</sub>是第i个标签产生的随机数,h(.)是单向哈希函数,E<sub>Pk</sub>(c)是用服务器的公钥加密信息c,D<sub>Sk</sub>(c)是用服务器的私钥解密信息c,E<sub>Syj</sub>(c)是用对称密钥Sy<sub>j</sub>加密信息c;步骤三、快速认证阶段;(1)移动阅读器发出查询认证请求;移动阅读器产生随机数Nr<sub>j</sub>,然后计算M<sub>1</sub>=Nr<sub>j</sub>⊕K<sub>i</sub>和M<sub>2</sub>=h(Nr<sub>j</sub>);移动阅读器将M<sub>1</sub>和M<sub>2</sub>发送给标签;(2)标签利用自己存储的共享密钥K<sub>i</sub>,计算并判断<img file="FDA0000712312350000023.GIF" wi="339" he="74" />是否成立;如果<img file="FDA0000712312350000024.GIF" wi="332" he="76" />成立,证明移动阅读器合法,否则标签不响应;若标签验证移动阅读器合法后,产生随机数Nt<sub>i</sub>;然后计算:M<sub>3</sub>=Nt<sub>i</sub>⊕K<sub>i</sub>,M<sub>4</sub>=h(Nt<sub>i</sub>⊕Nr<sub>j</sub>),M<sub>5</sub>=h(Tid<sub>i</sub>⊕Nt<sub>i</sub>);标签将信息M<sub>3</sub>,M<sub>4</sub>,M<sub>5</sub>发送给移动阅读器;(3)移动阅读器收到消息后,利用共享密钥K<sub>i</sub>计算出Nt<sub>i</sub>,然后验证<img file="FDA0000712312350000025.GIF" wi="361" he="79" />是否成立,如果<img file="FDA0000712312350000026.GIF" wi="354" he="81" />成立证明标签合法;移动阅读器首先在自身中查找是否存在Tid<sub>i</sub>,并验证<img file="FDA0000712312350000027.GIF" wi="356" he="76" />是否成立;如果<img file="FDA0000712312350000028.GIF" wi="362" he="76" />成立,认证成功。 |