发布信息

一种基于国密SM2和SM3算法的RFID双向认证方法及系统

作者:admin      2022-08-31 07:28:03     460



电子通信装置的制造及其应用技术一种基于国密sm2和sm3算法的rfid双向认证方法及系统技术领域1.本发明涉及无线射频识别技术技术领域,具体为一种基于国密sm2和sm3算法的rfid双向认证方法及系统。背景技术:2.rfid(无线射频识别)技术作为物联网中的关键支撑技术之一,因其无需物理接触的特点逐渐代替了条形码和二维码,被广泛应用于智能交通、智慧医疗、物流仓储、证件防伪等工业生产领域,然而其安全与隐私问题也日益突出。在rfid认证过程中,攻击者会通过标签和读写器之间不安全信道发动假冒、窃听、重传、跟踪等多种恶意攻击,因此针对rfid安全问题的安全认证协议相继被推出。由于rfid系统的硬件资源较少,计算能力有限,导致其不能承载一些安全性高的传统密码学算法,使得其在去同步化、数据完整性、机密性、可用性等安全问题中还存在不足。针对上述问题,国内外学者在基于密码技术的rfid安全认证协议上的研究成果有很多,不管是从安全需求出发,还是考虑低成本的rfid标签硬件标准,最适用于rfid认证方法的方法就是hash函数。hash函数认证协议满足了计算低、功耗小等要求,并在某种程度上解决了rfid系统中的安全隐私问题。但是仅使用hash函数的rfid认证方法并不适用于某些使用射频识别技术的应用场景,如高速电子不停车收费(etc)。在现存的etc系统中,扫描器利用车载电子标签发送的用户信息进行单向认证,使得不法分子得以伪造虚假的扫描器来窃取车载电子标签存储的用户信息,从而导致用户的隐私泄露以及财产损失。采用双向认证,增加车载电子标签对扫描器的合法性认证,避免扫描器的非法伪造行为,保障了用户的隐私安全和财产安全。近年来,有研究表明ecc密码算法可以保护rfid芯片。因此本说明书基于sm3密码算法、sm2密码算法,嵌入随机hash-lock协议的思想,提出基于国密sm2和sm3的rfid双向认证方法。技术实现要素:3.鉴于现有技术中所存在的问题,本发明公开了一种基于国密sm2和sm3算法的rfid双向认证方法,采用的技术方案是,包括以步骤:步骤一:服务器生成一个随机数r1,计算r1=r1p,向标签发送响应请求query和r1;步骤二:标签收到query和r1后,生成一个随机数r2,并计算r2=r2p、r3=r2pss、rt=r2r1;并用服务器公钥ps对标签标识符xt加密得到c=e(xt)后,计算验证消息auths=c+h(srt pr2 pr3),并将{r2,rt,id,auths}发送给服务器。步骤三:服务器接收到消息后,计算r3′=xsr2s和c′=auths-h(srt pr2 pr3′),用服务器的密钥xs对加密的标签标识符c′解密得到xt′=dec(c′),根据接收到的标签名id在数据库中获取对应的xt,然后验证xt′与xt是否相等。如果不相等,服务器终止会话;否则,服务器成功认证标签的身份,此时服务器继续计算rs=r1r2和验证消息autht=h(xt' psrs pauths),然后将{rs,autht}发送给标签。步骤四:标签计算autht′=h(xt psrs pauths)与接收到的验证消息autht进行比较,若它们不相等的,则标签对服务器的身份合法性验证不通过;若相等,说明服务器身份是合法的,此时标签和服务器对双方的身份认证均已完成。步骤五:服务器和标签在成功认证双方身份之后,同时更新标签名id和共享密钥s。4.作为本发明的一种优选技术方案,所述上述步骤中包括五个多项式时间算法;所述五个多项式时间算法包括setup(λ)→(para,xt,id,kp,s)、enc(r1,r2,xt,para,s,kp)→(auths,autht,autht')、dec(auths,xs)→(xt′)、ver(para,id,xt,s,kp)→(accept,reject)和update(para,id,s,kp)→(idnew,snew),其中setup(λ)→(para,xt,id,kp,s)具体为::算法输入安全参数λ,输出椭圆曲线公共参数para=(a,b,n,q,p),在椭圆曲线e上随机选择作为标签的标识符,随机选择id=h(xt)作为标签名,作为服务器私钥,作为服务器公钥,作为标签与服务器的共享密钥,并将标签有关信息、服务器公钥ps共享密钥s和椭圆曲线域参数para=(a,b,n,q,p,)存储在标签内存和服务器的后台数据库中。5.作为本发明的一种优选技术方案,所述步骤二在进行加密时采用enc(r1,r2,xt,para,s,kp)→(auths,autht,autht′)算法,具体过程为,随机选择整数r1,r2,输入标签标识符xt,公共参数para,标签与服务器的共享密钥s和服务器密钥对kp,标签用服务器的公钥ps对标签标识符xt加密成c=e(xt)后,算法输出:auths=c+h(srt pr2 pr3)autht=h(xt′ꢀpsrs pauths)autht′=h(xt psrs pauths)其中r1=r1p,r2=r2p,r3=r2pss,rt=r2r1,rs=r1r2。6.作为本发明的一种优选技术方案,所述步骤三解密验证过程采用的所述dec(auths,xs)→(xt')具体为:输入认证消息auths,服务器用私钥xs对auths中的密文c解密后,算法输出待验证的标签标识符xt′。7.作为本发明的一种优选技术方案,所述步骤四在进行双向认证时,采用ver(para,id,xt,s,kp)→(accept,reject)算法,具体为:输入公共参数para,标签名id,标签标识符xt,共享密钥s和服务器密钥对kp,标签输出r2=r2p、r3=r2pss、rt=r2r1和认证消息auths=c+h(srt pr2 pr3),然后给服务器发送{r2,rt,id,auths}。服务器收到消息后根据接收到的标签名id在数据库中获取对应的xt,用自己的私钥xs计算r3'=xsr2s,输出auths中的c'=auths-h(srt pr2 pr3'),并验证auths中的xt′=dec(c′)与存储的xt是否相等。若不想等,说明服务器对标签认证失败,直接输出reject;若相等,则认证成功,输出accept,rs=r1r2和认证消息autht=h(xt′ꢀpsrs pauths)并发送给标签;标签计算autht′=h(xt psrs pauths)与收到的autht进行对比验证,若二者不相等,则输出reject,否则输出accept,双向认证完成。8.作为本发明的一种优选技术方案,所述步骤在进行信息更新时所采用的算法为update(para,id,s,kp)→(idnew,snew),具体的,输入公共参数para,标签名id,共享密钥s和服务器密钥对kp,算法输出更新后的标签名idnew和共享密钥snew,其中标签更新为:id*=h(r2 pr3 prt pid)id←id*s*=h(r1 pr2 ps)s←s*服务器更新:若idold被接收:idnew=h(r2 pr3' prs pidold)snew=h(r1 pr2 psold)若idnew被接收:idold=idnewidnew=h(r2 pr3' prs pidold)sold=snewsnew=h(r1 pr2 psold)。9.鉴于现有技术中所存在的问题,本发明公开了一种基于国密sm2和sm3算法的rfid双向认证系统,该系统包括初始化模块、密钥获取模块、加密模块、生成验证消息模块、接收验证消息模块、解密模块和认证模块。10.本发明的有益效果:(1)在提出的rfid双向认证方法中,验证消息auths中的标签标识xt发送给服务器时是经过sm2密码算法加密的,因为消息受到ecdlp(椭圆曲线离散对数问题)的保护,攻击者很难获取到标识符xt。如果服务器使用私钥计算消息c′=auths-h(srt pr2 pr3′)得到xt′与从数据库中获取的xt相同,则服务器通过验证。同样地,通过计算标签验证消息autht′=h(xt psrs pauths),要证明服务器的身份是合法的,就必须与接收到的验证消息autht相同。整个过程使用了两次sm3密码算法来达到标签和读写器之间的双向认证效果。(2)在每次认证成功之后,标签和服务器的共享密钥s和标签名id都会用hash函数自动更新,防止攻击者对标签进行非法跟踪。而且每一轮会话标签和服务器会产生不同的随机数,每次的响应也会不同,攻击者就不能伪造验证消息auths和autht,也无法从{r2,rt,id,auths}中提取标签标识符xt,因此该方法具备匿名性和不可追溯性。(3)在本方法中,标签识别过程是使用接收到的标签名id来执行的,其中服务器从其数据库中获取xt以完成标签身份验证过程。服务器不需要在数据库中的所有标签进行线性搜索,只需要o(1)的时间来搜索xt。当系统的标签数量增加时,该方法将保持相同的工作负载。因此,本rfid认证方法具有可扩展性。(4)在提出的方法中,标签唯一标识符xt在一个由sm3密码算法和sm2密码算法保护的随机消息中交换,即auths=c+h(srt pr2 pr3),这意味着任何攻击者都不能访问它。此外,使用标签名id进行识别,避免攻击者对标签真实信息发起攻击,并在每次成功的认证会话后进行更新,能够抵抗去同步攻击,因此该方法具有可用性。(5)过采用基于随机预言模型对设计的认证方法进行安全性证明,结果表明提出的认证方法在保证系统执行效率的情况下能够抵抗重传攻击、假冒攻击、去同步攻击等多种恶意攻击,保证信息在传输过程中,数据的完整性、机密性和认证性,能更好地适用于使用rfid标签的etc收费系统中。附图说明11.图1为本实用认证方法流程图;12.图2为本发明的双向认证工作原理图;13.图3为本发明的基于国密算法的rfid认证系统流程;14.图4为本发明的基于国密sm2和sm3算法的rfid双向认证方法符号说明表;15.图5为本发明的标签和服务器的双向认证过程图;具体实施方式16.实施例117.如图1至图5所示,本发明公开了一种基于国密sm2和sm3算法的rfid双向认证方法,采用的技术方案是,包括以下步骤:步骤一:服务器生成一个随机数r1,计算r1=r1p,向标签发送响应请求query和r1;步骤二:标签收到query和r1后,生成一个随机数r2,并计算r2=r2p、r3=r2pss、rt=r2r1;并用服务器公钥ps对标签标识符xt加密得到c=e(xt)后,计算验证消息auths=c+h(srt pr2 pr3),并将{r2,rt,id,auths}发送给服务器。步骤三:服务器接收到消息后,计算r3′=xsr2s和c′=auths-h(srt pr2 pr3′),用服务器的密钥xs对加密的标签标识符c′解密得到xt′=dec(c),根据接收到的标签名id在数据库中获取对应的xt,然后验证xt′与xt是否相等。如果不相等,服务器终止会话;否则,服务器成功认证标签的身份,此时服务器继续计算rs=r1r2和验证消息autht=h(xt'psrs pauths),然后将{rs,autht}发送给标签。步骤四:标签计算autht′=h(xt psrs pauths)与接收到的验证消息autht进行比较,若它们不相等的,则标签对服务器的身份合法性验证不通过;若相等,说明服务器身份是合法的,此时标签和服务器对双方的身份认证均已完成。步骤五:服务器和标签在成功认证双方身份之后,同时更新标签名id和共享密钥s。18.作为本发明的一种优选技术方案,上述步骤中包括有五个多项式时间算法,分别为,setup(λ)→(para,xt,id,kp,s)、enc(r1,r2,xt,para,s,kp)→(auths,autht,autht')、dec(auths,xs)→(xt′)、ver(para,id,xt,s,kp)→(accept,reject)和update(para,id,s,kp)→(idnew,snew)。所述setup(λ)→(para,xt,id,kp,s)具体为:算法输入安全参数λ,输出椭圆曲线公共参数para=(a,b,n,q,p),在椭圆曲线e上随机选择作为标签的标识符,随机选择id=h(xt)作为标签名,作为服务器私钥,作为服务器公钥,作为标签与服务器的共享密钥,并将标签有关信息、服务器公钥ps共享密钥s和椭圆曲线域参数para=(a,b,n,q,p,)存储在标签内存和服务器的后台数据库中。19.作为本发明的一种优选技术方案,所述enc(r1,r2,xt,para,s,kp)→(auths,autht,autht')具体为:随机选择整数r1,r2,输入标签标识符xt,公共参数para,标签与服务器的共享密钥s和服务器密钥对kp,标签用服务器的公钥ps对标签标识符xt加密成c=e(xt)后,算法输出:auths=c+h(srt pr2 pr3)autht=h(xt′ꢀpsrs pauths)autht′=h(xt psrs pauths)其中r1=r1p,r2=r2p,r3=r2pss,rt=r2r1,rs=r1r2。20.作为本发明的一种优选技术方案,所述dec(auths,xs)→(xt′)具体为:输入认证消息auths,服务器用私钥xs对auths中的密文c解密后,算法输出待验证的标签标识符xt′。21.作为本发明的一种优选技术方案,所述ver(para,id,xt,s,kp)→(accept,reject)具体为:输入公共参数para,标签名id,标签标识符xt,共享密钥s和服务器密钥对kp,标签输出r2=r2p、r3=r2pss、rt=r2r1和认证消息auths=c+h(srt pr2 pr3),然后给服务器发送{r2,rt,id,auths}。服务器收到消息后根据接收到的标签名id在数据库中获取对应的xt,用自己的私钥xs计算r3'=xsr2s,输出auths中的c'=auths-h(srt pr2 pr3'),并验证auths中的xt'=dec(c')与存储的xt是否相等。若不想等,说明服务器对标签认证失败,直接输出reject;若相等,则认证成功,输出accept,rs=r1r2和认证消息autht=h(xt′ꢀpsrs pauths)并发送给标签;标签计算autht'=h(xt psrs pauths)与收到的autht进行对比验证,若二者不相等,则输出reject,否则输出accept,双向认证完成。22.作为本发明的一种优选技术方案,所述update(para,id,s,kp)→(idnew,snew)具体为:输入公共参数para,标签名id,共享密钥s和服务器密钥对kp,算法输出更新后的标签名idnew和共享密钥snew,其中标签更新为:id*=h(r2 pr3 prt pid)id←id*s*=h(r1 pr2 ps)s←s*服务器更新:若idold被接收:idnew=h(r2 pr3' prs pidold)snew=h(r1 pr2 psold)若idnew被接收:idold=idnewidnew=h(r2 pr3' prs pidold)sold=snewsnew=h(r1 pr2 psold)23.本发明公开了一种基于国密sm2和sm3算法的rfid双向认证系统,采用的技术方案是,包括初始化模块、密钥获取模块、加密模块、生成验证消息模块、接收验证消息模块、解密模块和认证模块。24.上述虽然对本发明的具体实施例作了详细说明,但是本发明并不限于上述实施例,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化,而不具备创造性劳动的修改或变形仍在本发明的保护范围以内。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部