一种基于Hash函数的通信安全方法及系统的制作方法

文档序号:7819975阅读:208来源:国知局
一种基于Hash函数的通信安全方法及系统的制作方法
【专利摘要】本发明提供一种基于Hash函数的通信安全方法及系统,包括以下步骤:标签管理器从信息识别管理器接收询问信息后,获取共享密钥H(KEYT)并通过信息识别管理器向数据库服务器发送H(KEYT)||order;数据库服务器获取新通信密钥C,C=H(KEYDB||SR||order)并将C、标签唯一标识符ID、KEYDB发送至信息识别管理器;信息识别管理器生成随机数R、计算H(KEYDB||R)并将R、H(KEYDB||R)和C KEYDB发送至标签管理器;标签管理器计算H(KEYT||R)并与所述H(KEYDB||R)对比,若相等,完成标签管理器对信息识别管理器认证;本发明抵御外部攻击,保证通信安全。
【专利说明】—种基于Hash函数的通信安全方法及系统

【技术领域】
[0001]本发明属于通信安全领域,尤其涉及一种基于Hash函数的通信安全方法及系统。

【背景技术】
[0002]RFID是Rad1 Frequency Identificat1n的缩写,即射频识别技术,它是一种非接触式自动识别技术,它的主要核心部件是电子标签,相距几厘米到几米的读卡器通过发射无线电波,可以读取电子标签存储的信息,识别电子标签代表的物品、器具或者人的身份。射频识别技术具有很多优点:不需人工干预,不需直接接触,可工作于恶劣环境,操作方便,无机械磨损,寿命长,针对终端用户不具物理接口 ;数据安全方面,除了标签的密码保护外,数据部分可用算法管理,读卡器与电子标签也可相互认证,继而进行通信;总体成本一直呈下降趋势,很多已经低于接触式IC卡的成本,甚至更低,这为其大规模应用奠定了基础。
[0003]射频识别技术以其独特的优势,逐渐地被广泛应用于生产、物流、交通运输、医疗设备、资产管理、防伪、跟踪等严重依赖数据的收集与处理的领域;另外,随着大规模集成电路的进步以及生产规模的扩大,射频识别产品的成本将进一步降低,其应用领域也将更加广泛。
[0004]RFID应用中仍有许多亟需解决的问题,比如标准化问题、安全性问题以及价格问题,特别是安全性问题。RFID开放的无线传输链路易遭各种攻击,其安全隐患和隐私问题非常严重,主要包括:窃听、跟踪、伪造、数据演绎、篡改、重放、克隆和物理攻击等。使用密码算法来实现RFID的认证和隐私保护,是主要的方法。但是对于低成本RFID标签而言,由于标签面积和功耗等的限制,无法满足普通密码算法需要的高额资源。因此,安全问题已经成为制约RFID技术发展并大力推广的主要瓶颈问题。
[0005]当前很多基于Hash的RFID认证协议均宣称可以抵御DoS攻击,例如伍新华协议以及Seung-Jae Jang协议,但是DoS攻击可以发生在认证过程中的多个步骤,不同步骤遭受攻击其导致的后果均不同,攻击者可以阻止标签收到读卡器发送的认证信息或读卡器收到标签发送的认证信息,这些都会导致通信的失败,因此需要一种有效的方法解决DoS攻击的问题。


【发明内容】

[0006]本发明提供一种基于Hash函数的通信安全方法及系统,以解决上述问题。
[0007]本发明提供一种基于Hash函数的通信安全方法,上述方法包括以下步骤:
[0008]标签管理器从信息识别管理器接收到询问信息后,获取共享密钥H(KEYT)并通过所述信息识别管理器向数据库服务器发送H(KEYt) I order ;
[0009]所述数据库服务器获取新的通信密钥C,C = H(KEYdb| SRl order)并将C、标签唯一标识符ID、查询到的KEYdb发送至所述信息识别管理器;
[0010]所述信息识别管理器生成随机数R、计算H (KEYdb I I R)并将随机数R、H (KEYdb | | R)和C Θ KEYdb发送至所述标签管理器;
[0011]所述标签管理器计算H(KEYTI IR)并与所述h(keydb| Ir)进行对比,若相等,则完成所述标签管理器对所述信息识别管理器的认证;
[0012]其中,KEYdb是指数据库服务器保存的共享密钥;SR是指数据库服务器保存的秘密值;0rder是指密钥序列号;KEYT是指标签管理器保存的共享密钥;?是指异或操作;I I是指级联操作。
[0013]本发明还提供了一种基于Hash函数的通信安全系统,包括标签管理器、信息识别管理器、数据库服务器;其中,所述数据库服务器通过所述信息识别管理器与所述标签管理器相连;
[0014]所述标签管理器,用于从信息识别管理器接收到询问信息后,获取共享密钥H(KEYt)并通过所述信息识别管理器向数据库服务器发送H(KEYt) | order ;
[0015]所述数据库服务器,用于获取新的通信密钥C,C = H(KEYdb| SRl order)并将C、标签唯一标识符ID、查询到的KEYdb发送至所述信息识别管理器;
[0016]所述信息识别管理器,用于生成随机数R、计算h(keydb| Ir)并将随机数r、H (KEYdb I IR)和C θ KEYdb发送至所述标签管理器;
[0017]所述标签管理器,还用于计算H(KEYT| IR)并与所述h(keydb| Ir)进行对比,若相等,则完成所述标签管理器对所述信息识别管理器的认证;
[0018]其中,KEYdb是指数据库服务器保存的共享密钥;SR是指数据库服务器保存的秘密值;0rder是指密钥序列号;KEYT是指标签管理器保存的共享密钥;?是指异或操作;I I是指级联操作。
[0019]本发明提供的一种基于Hash函数的通信安全方法及系统,可以抵御外部攻击,保证了通信安全。

【专利附图】

【附图说明】
[0020]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0021]图1所示为本发明实施例1的基于Hash函数的通信安全方法流程图;
[0022]图2所示为本发明实施例2的基于Hash函数的通信安全系统结构图;
[0023]术语定义:
[0024]HO:单向 Hash 函数;
[0025]ID:标签唯一标识符;
[0026]KEYdb:数据库服务器保存的共享密钥;
[0027]SR:数据库服务器保存的秘密值;
[0028]order:密钥序列号;
[0029]KEYt:标签管理器保存的共享密钥;
[0030]Θ:异或操作;
[0031]I 1:级联操作;
[0032]C:下一次通信的密钥;
[0033]R:随机数。

【具体实施方式】
[0034]下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0035]在研究伍新华协议通信认证流程以及Seung-Jae Jang协议通信认证流程的时候,有一个有趣的发现:将两者结合并作一些改动,结果这个协议通信认证流程亦可满足所有安全需求。简单地讲,就是将伍新华协议通信认证流程中的新旧密钥系统运用到Seung-JaeJang协议通信认证流程中,做一些小的变化,即可解决Seung-Jae Jang协议通信认证流程无法抵御Dos攻击的缺陷。
[0036]协议通信认证流程在Seung-Jae Jang的基础上,做以下变化:
[0037]1,数据库服务器保存新旧两套与标签的共享密钥,记为KEYQU)、KEYnew,标签管理器保存的密钥记为KEYt ;
[0038]2,数据库服务器收到H(KEYt)时,如果H(KEYt) = H(KEYnew),那么直接更新密钥KEYold = KEYnew, KEYnew = C ;如果H(KEYt) = H(KEYqui),那么不更新密钥,并向标签管理器发送密钥KEYnew。
[0039]协议通信认证流程分析,抵御Dos攻击:
[0040]1,数据库服务器收到H(KEYt)时,有H(KEYt) = H(KEYnew)。在信息识别管理器向标签管理器发送消息时丢失,那么下次认证时有H(KEYt) = H(KEYold),标签管理器依旧可以通过认证;在标签管理器向信息识别管理器发送消息时丢失,那么下次认证时有H(KEYt)=H (KEYnew),显然可以通过认证;
[0041]2,数据库服务器收到H(KEYt)时,有H(KEYt) = H(KEYold)。在信息识别管理器向标签管理器发送消息时丢失,由于数据库服务器的密钥没有更新,那么下次认证时有H(KEYt)=H(KEYold);在标签管理器向信息识别管理器发送消息时丢失,由于数据库服务器的密钥没有更新,那么下次认证时有H (KEYt) = H (KEYnew)。
[0042]初始条件:
[0043]标签管理器保存唯一标识符ID,提前计算好的H(ID),密钥KEYt和密钥序列号order ;
[0044]数据库服务器储存标签的唯一标识符ID,与标签共享的密钥KETdb,密钥的散列值H(KEYdb),与标签对应的秘密值SR和与标签共享的密钥序列号order。
[0045]本发明包括以下步骤:
[0046]步骤101:预先对标签管理器及数据库服务器进行预处理;
[0047]预先对标签管理器及数据库服务器进行预处理的过程为:标签管理器保存标签唯一标识符ID、密钥KEYt、密钥序列号order、H(ID);
[0048]数据库服务器保存标签唯一标识符ID、与标签共享的密钥KETdb、密钥散列值H(KEYdb)、与标签对应的秘密值SR、与标签共享的密钥序列号order。
[0049]步骤102:信息识别管理器向标签管理器发送询问信息Query ;其中,信息识别管理器是指读卡器;
[0050]步骤103:标签管理器收到所述询问信息后,获取共享密钥H(KEYt)并向所述信息识别管理器发送H(KEYt) I order ;
[0051]步骤104:所述信息识别管理器将所述H(KEYt) | I order发送至所述数据库服务器;
[0052]步骤105:所述数据库服务器查询是否有对应的H(KEYdb):若存在对应的H(KEYdb),则检查收到的order值与存储的order值是否匹配,如果不匹配,则认为非法;若没有对应的H(KEYdb),进行以下操作:
[0053]a.查询order值,看是否存在比收到order值小的存储order值,若不存在,贝!J认为非法;
[0054]b.找到与比收到的order值小I的存储order值(记为order’ ),计算KEYDB’ =H (KEYdb I I SR I I order’ ),并与收到的KEYt比较。若不相等,则继续寻找并递归计算,若对于所有以上order值,不存在KEYdb经过计算与KEYt相等,则认为非法。
[0055]步骤106:数据库服务器获取新的通信密钥C,C = H(KEYdb I SR| order)并将C、标签唯一标识符ID、查询到的KEYdb发送至所述信息识别管理器;
[0056]步骤107:所述信息识别管理器生成随机数R、计算H(KEYdb| R);其中,对于首次匹配不成功的合法标签,将以上计算中的KEYdb用KEYt代替即可;
[0057]步骤108:所述信息识别管理器将随机数R、H (KEYdb | | R)和C ? KEYdb发送至标签管理器;
[0058]步骤109:所述标签管理器计算其H (KEYt | | R)并和收到的H (KEYdb | | R)进行对比,若计算结果相等,则完成了所述标签管理器对所述信息识别管理器的认证;其中,在所述标签管理器完成对所述信息识别管理器的认证后,通过计算C ? KEYdb ? KEYJf C提取出来即获得更新后的密钥KEYt ;另外,更新order值,即将order值自加I ;
[0059]步骤110:所述标签管理器将H(ID) ' ? KEYt发送至所述信息识别管理器,由于所述信息识别管理器与所述标签管理器共享密钥,所以可以通过计算H(ID) ' ? KEYt ? KEYdb将H(ID)'提取出来;
[0060]步骤111:所述信息识别管理器将H(ID),和KEYdb发送至所述数据库服务器;
[0061]步骤112:所述数据库服务器对收到的H(ID)'进行对比,若H(ID) = H(ID)',则所述数据库服务器对所述标签管理器的认证成功,并更新KEYdb、H(KEYdb)以及order值(将order值自加I)。
[0062]图1所示为本发明实施例1的基于Hash函数的通信安全方法流程图,包括下步骤:
[0063]步骤1:标签管理器从信息识别管理器接收到询问信息后,获取共享密钥H(KEYt)并通过所述信息识别管理器向数据库服务器发送H(KEYt) I order ;
[0064]步骤2:所述数据库服务器获取新的通信密钥C,C = H(KEYdb| SR| order)并将C、标签唯一标识符ID、查询到的KEYdb发送至所述信息识别管理器;
[0065]步骤3:所述信息识别管理器生成随机数R、计算H(KEYdb| R)并将随机数R、H (KEYdb I IR)和C ? KEYdb发送至所述标签管理器;
[0066]步骤4:所述标签管理器计算H (KEYt I R)并与所述H(KEYDB| R)进行对比,若相等,则完成所述标签管理器对所述信息识别管理器的认证。
[0067]其中,KEYdb是指数据库服务器保存的共享密钥;SR是指数据库服务器保存的秘密值;0rder是指密钥序列号;KEYT是指标签管理器保存的共享密钥;?是指异或操作;I I是指级联操作。
[0068]图2所示为本发明实施例2的基于Hash函数的通信安全系统结构图,包括标签管理器、信息识别管理器、数据库服务器;其中,所述数据库服务器通过所述信息识别管理器与所述标签管理器相连;
[0069]所述标签管理器,用于从信息识别管理器接收到询问信息后,获取共享密钥H(KEYt)并通过所述信息识别管理器向数据库服务器发送H(KEYt) | order ;
[0070]所述数据库服务器,用于获取新的通信密钥C,C = H(KEYdb| SRl order)并将C、标签唯一标识符ID、查询到的KEYdb发送至所述信息识别管理器;
[0071]所述信息识别管理器,用于生成随机数R、计算h(keydb| Ir)并将随机数r、H (KEYdb I IR)和C θ KEYdb发送至所述标签管理器;
[0072]所述标签管理器,还用于计算H(KEYT| IR)并与所述h(keydb| Ir)进行对比,若相等,则完成所述标签管理器对所述信息识别管理器的认证;
[0073]其中,KEYdb是指数据库服务器保存的共享密钥;SR是指数据库服务器保存的秘密值;0rder是指密钥序列号;KEYT是指标签管理器保存的共享密钥;?是指异或操作;I I是指级联操作。
[0074]有益效果分析:
[0075]1.前向安全性
[0076]假设攻击者获得了某次认证过程中标签管理器在第一步输出的H(KEYt) | | order,但是由于Hash函数具有单向性的特点,因此攻击者无法根据当前获得的标签管理器输出回溯标签管理器的历史数据,因此该协议通信认证流程具有前向安全性。
[0077]2.重放攻击
[0078]在进行重放攻击前,攻击者从信息识别管理器和标签管理器通信过程中的交换数据里面窃取信息。在重放攻击开始时,攻击者通过其窃取的信息对信息识别管理器的查询信息进行回复。在该协议通信认证流程中,标签管理器在每次成功完成认证后,要更新标签的KEY值,则每次认证过程中标签管理器的返回值都和上一次不同,所以攻击者无法使用之前窃听到的通信内容重放给信息识别管理器来欺骗数据库服务器从而获得认证。因此,该协议通信认证流程能够抵御重放攻击。
[0079]3.位置隐私
[0080]一般情况下,标签管理器在收到信息识别管理器的查询信息后,会返回一些应答消息。如果标签管理器发送的应答消息是固定不变的或是被攻击者提前预判到,就会导致隐私问题。在该协议通信认证流程中,标签管理器在每次完成成功认证过程后,要更新标签的KEY值,下次通信时,标签管理器的返回信息H(KEYt)和order值都不同,攻击者根据截获到的标签管理器响应内容不能够判断标签管理器所在的位置,因此可以防止位置信息被跟踪。
[0081]4.数据演译
[0082]信息识别管理器和标签管理器之间的通信采用Hash函数与异或操作,即使攻击者利用某种手段获得了标签管理器上的数据也很难推断出通信的真实信息。
[0083]5.伪造攻击
[0084]RFID系统的一个重要目标就是检测伪造产品。如果标签管理器中的会话密钥被攻击者窃听或通过物理手段窃取,那么容易受到伪造攻击。在发明提出的协议通信认证流程中,会话密钥通过加密手段进行传送,且每次认证完毕后都会更新密钥,所以此协议可以保证系统不受伪造攻击。
[0085]6.抵御DoS攻击
[0086]攻击者通常会通过建立一种不同步状态来进行拒绝服务攻击,攻击者可以阻止标签管理器收到信息识别管理器发送的认证信息或是信息识别管理器收到标签管理器发送的认证信息,系统会认为此次通信失败。那么,针对本协议的Dos攻击存在两种方式,我们分别予以说明:
[0087]a.阻止标签收到读卡器发送的认证信息
[0088]协议通信认证流程的步骤108,信息识别管理器向标签管理器做出应答,但是标签管理器没有收到。我们分析一下这种情况对下次认证造成的影响。标签管理器由于没有收到信息识别管理器应答,认定通信结束,此时它并未更新密钥以及密钥序列号。信息识别管理器由于不能收到标签管理器的后续应答,同样认定通信结束,此时数据库服务器也没有更新密钥以及密钥序列号。因此,在这种情况下,数据库服务器与标签管理器的密钥以及密钥序列号依旧是“同步的”。
[0089]b.阻止读卡器收到标签发送的认证信息
[0090]协议通信认证流程的步骤110,标签管理器向信息识别管理器做出应答,但是信息识别管理器没有收到。我们分析一下这种情况下对下次认证造成的影响。信息识别管理器由于没有收到标签管理器应答,认定通信结束,此时数据库服务器没有更新密钥以及密钥序列号。但是,标签管理器已经完成了密钥以及密钥序列号的更新。这样,就造成了不同步情况。但是,这并不妨碍下次认证的成功通过,具体过程如下:
[0091]我们只需计算KEYdb ’ = H (KEYdb I |SR| I order),然后与收到的KEYt比较。当然,order值也需自加1,然后与收到的order值比较。
[0092]至此,我们不禁存有这样的疑问:一个密钥以及密钥序列号不同步的标签管理器与信息识别管理器进行通信,它们的协议通信认证流程的步骤110遭遇Dos攻击中断,造成了新的不同步,那么,在下次通信中,标签管理器能够被成功认证吗?答案是可以。具体做法在协议通信认证流程中已有体现:在比较密钥序列号后,递归地进行计算,然后比较。
[0093]7.数据库服务器搜索速度
[0094]数据库服务器在表中保存了提前计算出的H(KEYdb),在随机Hash-Lock协议中,如果数据库服务器保存着超过10000份标签管理器的信息,则在每次认证的过程,数据库服务器都要对接收到的信息进行Hash运算,这样极大地影响了数据库服务器的搜索速度。在此协议中,数据库服务器提前计算出H(KEYdb),在认证的过程中只进行比对,不进行计算,这样的设计方案可以保证数据库服务器的搜索速度。
[0095]本发明提供的一种基于Hash函数的通信安全方法及系统,可以抵御外部攻击,保证了通信安全。
[0096]以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种基于Hash函数的通信安全方法,其特征在于,包括以下步骤: 标签管理器从信息识别管理器接收到询问信息后,获取共享密钥H(KEYt)并通过所述信息识别管理器向数据库服务器发送H(KEYt) I order ; 所述数据库服务器获取新的通信密钥C,C = H(KEYdb| SR| order)并将C、标签唯一标识符ID、查询到的KEYdb发送至所述信息识别管理器; 所述信息识别管理器生成随机数R、计算H(KEYdb| |R)并将随机数R、H(KEYdb R)和C ? KEYdb发送至所述标签管理器; 所述标签管理器计算H(KEYtI IR)并与所述h(keydb| Ir)进行对比,若相等,则完成所述标签管理器对所述信息识别管理器的认证; 其中,KEYdb是指数据库服务器保存的共享密钥;SR是指数据库服务器保存的秘密值;order是指密钥序列号;KEYT是指标签管理器保存的共享密钥;?是指异或操作;I I是指级联操作。
2.根据权利要求1所述的方法,其特征在于:标签管理器从信息识别管理器接收到询问信息之前,还包括:预先对标签管理器及数据库服务器进行预处理。
3.根据权利要求2所述的方法,其特征在于:预先对标签管理器及数据库服务器进行预处理的过程为: 将标签唯一标识符ID、密钥KEYt、密钥序列号order、H(ID)保存至所述标签管理器; 将标签唯一标识符ID、与标签共享的密钥KETdb、密钥散列值H(KEYdb)、与标签对应的秘密值SR、与标签共享的密钥序列号order保存至所述数据库服务器。
4.根据权利要求1所述的方法,其特征在于:所述数据库服务器获取新的通信密钥C之前,还包括:所述数据库服务器查询是否有对应的H (KEYdb):若存在对应的H (KEYdb),则检查收到的order值与存储的order值是否匹配,如果不匹配,则认为非法。
5.根据权利要求4所述的方法,其特征在于:若没有对应的H(KEYdb),进行以下操作: a.查询order值,看是否存在比收到order值小的存储order值,若不存在,则认为非法; b.找到与比收到的order值小I的存储order值(记为order’),计算KEYdb’=H(KEYdb SR I order’ ),并与收到的KEYt比较;若不相等,则继续寻找并递归计算,若对于所有以上order值,不存在KEYdb经过计算与KEYt相等,则认为非法。
6.根据权利要求1所述的方法,其特征在于:在所述标签管理器完成对所述信息识别管理器的认证后,通过计算C ? KEYdb ? KEYt,将C提取出来即获得更新后的密钥KEYt,同时更新order值,将order值加I。
7.根据权利要求1所述的方法,其特征在于: 所述信息识别管理器接收到所述标签管理器发送的H(ID),? KEYt后,通过计算H(ID) / ? KEYt ? KEYdb将H(ID) /提取出来并将所述H(ID) /和KEYdb发送至所述数据库服务器; 所述数据库服务器对收到的H(ID)'进行对比,若H(ID) =H(ID)',则完成所述数据库服务器对所述标签管理器的认证。
8.根据权利要求7所述的方法,其特征在于:所述数据库服务器对所述标签管理器的完成认证后,还包括:更新KEYdb、H(KEYdb)及将order值加I。
9.一种基于Hash函数的通信安全系统,其特征在于,包括标签管理器、信息识别管理器、数据库服务器;其中,所述数据库服务器通过所述信息识别管理器与所述标签管理器相连; 所述标签管理器,用于从信息识别管理器接收到询问信息后,获取共享密钥H(KEYt)并通过所述信息识别管理器向数据库服务器发送H(KEYt) I order ; 所述数据库服务器,用于获取新的通信密钥C,C = H(KEYdb SR| order)并将C、标签唯一标识符ID、查询到的KEYdb发送至所述信息识别管理器; 所述信息识别管理器,用于生成随机数R、计算H(KEYdb I I R)并将随机数R、H(KEYdb I I R)和C Θ KEYdb发送至所述标签管理器; 所述标签管理器,还用于计算H(KEYT| IR)并与所述h(keydb| Ir)进行对比,若相等,则完成所述标签管理器对所述信息识别管理器的认证; 其中,KEYdb是指数据库服务器保存的共享密钥;SR是指数据库服务器保存的秘密值;order是指密钥序列号;KEYT是指标签管理器保存的共享密钥;?是指异或操作;I I是指级联操作。
【文档编号】H04L9/32GK104468118SQ201410659103
【公开日】2015年3月25日 申请日期:2014年11月18日 优先权日:2014年11月18日
【发明者】潘睿 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1