一种特征信息与密钥绑定方法技术

技术编号:10319740 阅读:165 留言:0更新日期:2014-08-13 20:07
本发明专利技术涉及一种特征信息与密钥绑定方法,包括绑定过程和解绑定过程。绑定过程包括以下步骤:对特征信息点进行预处理,排除无效的特征信息点,只利用有效的特征信息点生成其信息点密钥;利用秘密共享方案,把密钥分成多个共享子密钥及其参数;利用信息点密钥依次加密子密钥及其参数,生成密钥密文数据,即特征信息模板。解绑定过程包括以下步骤:利用特征信息点生成特征密钥;根据特征信息模板的相关信息,利用当前的特征密钥解密出相关的共享子密钥及其参数;根据所有的共享子密钥及其参数,利用插值公式,恢复出原密钥。与已有方法相比,本发明专利技术方法具有算法效率高,安全可靠的特点;并且当在绑定过程中特征信息的特征信息点次序和解绑定过程的不一致时,本发明专利技术方法同样有效。

【技术实现步骤摘要】
一种特征信息与密钥绑定方法
:本专利技术涉及特征信息与密钥的绑定技术,特别涉及一种特征信息与密钥绑定方法,属于密钥

技术介绍
在密码体制中,密钥的安全是最重要的。信息保密的关键在于密钥的安全,因此密钥必须受到安全地保护和分配。密钥短,便于记忆,但是不安全,密钥过长,难于记忆,也不方便使用。为了解决密钥安全性和易记性的矛盾,一般的做法是把密钥保存下来以备用。然而,这种方法也存在密钥被非法窃取的可能。一种较好的办法就是通过密钥与某些特征信息进行绑定的方式来保证密钥的安全性。目前,一种利用特征信息如指纹信息或者设备硬件信息与密钥进行绑定的技术已经被提出,该方法利用秘密共享方案,把密钥分成多个共享子密钥后;利用信息点密钥依次加密共享子密钥,生成密钥密文。这种方法具备安全可靠,自适应性好,使用灵活的特点,但是,上述密钥绑定方式存在着缺陷,即密钥绑定阶段和密钥恢复阶段,所有无效的信息点会被当成一个特殊的特征信息点,参与密钥绑定计算和密钥恢复计算,不仅增加了整个算法的计算量,降低了算法的效率;同时,当前后两个阶段的特征信息点次序不一致时,可能导致密钥恢复失败。本专利技术就是在该密钥绑定方法的优缺点的基础上,提出一种改进的特征信息与密钥绑定方法,改进后的方法具有更加广泛的适用性,具有更少的存储空间和更高的运算效率。
技术实现思路
本专利技术方法的目的是为了解决以更少的存储空间和更高的运算效率保护密钥安全的问题,提出了一种安全,灵活,可靠,高效的特征信息与密钥绑定方法。为了达到上述目的,本专利技术提供了一种特征信息与密钥绑定方法,该方法包括两个过程:绑定阶段和解绑定阶段。在绑定阶段,统计无效的特征信息点的个数n0,利用特征信息中的各个特征信息点生成各自的信息点密钥。利用门限方案,把密钥分割成n个共享子密钥,这样就得到每个共享子密钥及其参数。利用各个信息点密钥依次加密共享子密钥及其参数,得到共享子密钥密文,即特征信息模板。在解绑定阶段,利用特征信息中的各个信息点生成各自的信息点密钥,根据特征信息模板的相关信息,利用当前的特征信息的各个特征信息点生成的密钥,解密出t个相关的共享子密钥及其参数后,根据这些合法的共享子密钥及其参数,利用门限方案中的插值公式就能恢复出原密钥。本专利技术的具体实现步骤如下:一种特征信息与密钥绑定方法,该方法包括两个阶段:绑定过程和解绑定过程。所述绑定过程包括如下步骤:步骤1:获取待绑定密钥K和特征信息数组info,根据特征信息数组info(长度为n),统计出无效特征信息点的个数n0(n>n0≥0);步骤2:计算门限值利用随机数函数生成t-1个非零的随机数,分别记为a1,…,at-1;步骤3:设j=1,随机生成一个长度为32Byte以上的大素数p;步骤4:利用随机数生成函数生成一个非零的xj,把xj作为自变量,计算对应的共享子密钥yj=f(xj),其中,j=j+1,若j≤n-n0,则返回步骤4;否则,执行步骤5;步骤5:设i=1,j=1;初始化验证信息数组m(长度为n-n0),加密信息数组S(长度为n-n0),特征信息点绑定顺序数组EhdID(长度为n-n0);步骤6:从info中获取其第i个元素的值info[i],若info[i]的值不为空,通过函数G(*)生成对应的信息点密钥info_Key[j]=G(info[i]),并且在EhdID数组中添加info[i]的散列函数标识,执行步骤7;否则,i=i+1,执行步骤8;步骤7:使用加密函数E(*,*)利用加密密钥info_Key[j]对yj|xj加密得到加密信息S[j]=E(info_Key[j],yj|xj);使用散列函数计算S[j]|yj|xj的散列值m[j];j=j+1,i=i+1,执行步骤8;其中,yj|xj表示把yj,xj串联起来;S[j]|yj|xj表示把S[j],yj,xj串联起来;步骤8:若i>n或者j>n-n0,则执行步骤9;否则,返回步骤6;步骤9:保存m,S,t,EhdID,p信息,记录在密文数据中。所述解绑定过程包括如下步骤:步骤1:获取特征信息数组info(长度为n);步骤2:i=1,k=1,从密文数据中解析出EhdID、m、S、t、p信息;步骤3:index=-1;若info[i]为空,则i=i+1,执行步骤5;否则,生成info[i]的散列函数标识,并找到该散列函数标识在EhdID中对应的元素的下标位置index,如果index==-1,则i=i+1,执行步骤5;否则,执行步骤4;步骤4:通过函数G(*)生成info[i]的特征信息点密钥info_Key[k]=G(info[i]),使用与加密函数E(*,*)对应的解密函数D(*,*)利用解密密钥info_Key[k]对加密信息S[index]进行解密,得到yk|xk=D(info_Key[k],S[index]),使用散列函数计算S[index]|yk|xk的散列值,验证其与m[index]是否相同,若不相同,则设i=i+1,执行步骤5;否则,若k<t,则k=k+1,i=i+1,执行步骤5,否则,执行步骤6;其中yk|xk表示把yk,xk串联起来;S[index]|yk|xk表示把S[index],yk,xk串联起来;步骤5:若i>n,则执行步骤7;否则,返回步骤3;步骤6:得到t个共享子密钥及其参数点对(yk,xk)后,根据公式恢复出密钥K,结束。步骤7:密钥恢复失败,结束。本专利技术的有益效果:在绑定和解绑定过程中,无效的特征信息点将不参与绑定计算,这样就大大减少了整个过程的计算量,具有效率高,安全可靠的效果;在绑定过程的特征信息中特征信息点次序和解绑定过程的不一致时,本专利技术方法同样有效。附图说明图1为本专利技术中特征信息与密钥进行绑定过程。图2为本专利技术中特征信息与密钥进行解绑定过程。具体实施方式下面结合附图对本专利技术方法的实施方式作详细说明。本专利技术主要涉及特征信息与密钥的绑定与解绑定,特征信息的提取问题不是本专利技术的考虑范围。本专利技术假设在密钥绑定与解绑定之前,特征信息已经被成功提取。本专利技术约定,特征信息一共有n个特征信息点(包括n-n0个合法的特征信息点和n0个无效的特征信息点),若某个特征信息点无效,将该特征信息点的值设为空,并且特征信息中至少存在一个有效的特征信息点。在介绍本专利技术方法的详细过程前,我们先对涉及到的符号作如表1所述约定。表1符号约定符号含义n特征信息中所有特征信息点的总数n0特征信息中无效的特征信息点的总数t门限值info,info[i]特征信息数组及其第i个特征信息点infoID,infoID[i]特征信息点标识数组及其第i个特征信息点标识info_Key,info_Key[i]特征信息点密钥数组及其第i个特征信息点密钥G(*)一个生成32Byte随机数的类似哈希函数EhdID,EhdID[i]特征信息点绑定顺序数组xi第i个随机数yi第i个共享子密钥m,m[i]验证信息数组及其第i个元素值S,S[i]加密信息数组及其第i个元素值E(,),D(,)AES对称加密函数及对应的AES对称解密函数Hash256(*)Hash256函数*|*连接符,把两部分的内容串联起来p长度为32Byte以上的大素数下面我们就介绍本专利技术方法的详细本文档来自技高网...
一种特征信息与密钥绑定方法

【技术保护点】
一种特征信息与密钥绑定方法,其特征在于,所述的方法包括两个阶段:绑定过程和解绑定过程;所述绑定过程包括如下步骤:步骤1:获取待绑定密钥K和特征信息数组info,根据特征信息数组info(长度为n),统计出无效特征信息点的个数n0(n>n0≥0);步骤2:计算门限值利用随机数函数生成t‑1个非零的随机数,分别记为a1,…,at‑1;步骤3:设j=1,随机生成一个长度为32Byte以上的大素数p;步骤4:利用随机数生成函数生成一个非零的xj,把xj作为自变量,计算对应的共享子密钥yj=f(xj),其中,f(x)=K+Σj=1t-1aj×xjmodp;]]>j=j+1,若j≤n‑n0,则返回步骤4;否则,执行步骤5;步骤5:设i=1,j=1;初始化验证信息数组m(长度为n‑n0),加密信息数组S(长度为n‑n0),特征信息点绑定顺序数组EhdID(长度为n‑n0);步骤6:从info中获取其第i个元素的值info[i],若info[i]的值不为空,通过函数G(*)生成对应的信息点密钥info_Key[j]=G(info[i]),并且在EhdID数组中添加info[i]的散列函数标识,执行步骤7;否则,i=i+1,执行步骤8;步骤7:使用加密函数E(*,*)利用加密密钥info_Key[j]对yj|xj加密得到加密信息S[j]=E(info_Key[j],yj|xj);使用散列函数计算S[j]|yj|xj的散列值m[j];j=j+1,i=i+1,执行步骤8;其中,yj|xj表示把yj,xj串联起来;S[j]|yj|xj表示把S[j],yj,xj串联起来;步骤8:若i>n或者j>n‑n0,则执行步骤9;否则,返回步骤6;步骤9:保存m,S,t,EhdID,p信息,记录在密文数据中。所述解绑定过程包括如下步骤:步骤1:获取特征信息数组info(长度为n);步骤2:i=1,k=1,从密文数据中解析出EhdID、m、S、t、p信息;步骤3:index=‑1;若info[i]为空,则i=i+1,执行步骤5;否则,生成info[i]的散列函数标识,并找到该散列函数标识在EhdID中对应的元素的下标位置index,如果index==‑1,则i=i+1,执行步骤5;否则,执行步骤4;步骤4:通过函数G(*)生成info[i]的特征信息点密钥info_Key[k]=G(info[i]),使用与加密函数E(*,*)对应的解密函数D(*,*)利用解密密钥info_Key[k]对加密信息S[index]进行解密,得到yk|xk=D(info_Key[k],S[index]),使用散列函数计算S[index]|yk|xk的散列值,验证其与m[index]是否相同,若不相同,则设i=i+1,执行步骤5;否则,若k<t,则k=k+1,i=i+1,执行步骤5,否则,执行步骤6;其中yk|xk表示把yk,xk串联起来;S[index]|yk|xk表示把S[index],yk,xk串联起来;步骤5:若i>n,则执行步骤7;否则,返回步骤3;步骤6:得到t个共享子密钥及其参数点对(yk,xk)后,根据公式K=Σj=1tyj×(Π1≤k≤t,k≠jxkxk-xj)modp]]>恢复出密钥K,结束。步骤7:密钥恢复失败,结束。...

【技术特征摘要】
1.一种特征信息与密钥绑定方法,其特征在于,所述的方法包括两个阶段:绑定过程和解绑定过程;所述绑定过程包括如下步骤:步骤1:获取待绑定密钥K和特征信息数组info,根据特征信息数组info,长度为n,统计出无效特征信息点的个数n0,n>n0≥0;步骤2:计算门限值利用随机数函数生成t-1个非零的随机数,分别记为a1,…,at-1;步骤3:设j=1,随机生成一个长度为32Byte以上的大素数p;步骤4:利用随机数生成函数生成一个非零的xj,把xj作为自变量,计算对应的共享子密钥yj=f(xj),其中,j=j+1,若j≤n-n0,则返回步骤4;否则,执行步骤5;步骤5:设i=1,j=1;初始化验证信息数组m,长度为n-n0,加密信息数组S,长度为n-n0,特征信息点绑定顺序数组EhdID,长度为n-n0;步骤6:从info中获取其第i个元素的值info[i],若info[i]的值不为空,通过函数G(*)生成对应的信息点密钥info_Key[j]=G(info[i]),并且在EhdID数组中添加info[i]的散列函数标识,执行步骤7;否则,i=i+1,执行步骤8;步骤7:使用加密函数E(*,*)利用加密密钥info_Key[j]对yj|xj加密得到加密信息S[j]=E(info_Key[j],yj|xj);使用散列函数计算S[j]|yj|xj的散列值m[j];j=j+1,i=i+1,执行步骤8;其中,yj|xj表示把yj,xj串联起来;S[j]|yj|xj表示把S[j],yj,xj串联起来;步骤8:若i>n或者j>n-n0,则执行步骤9;否则,返回步骤6;...

【专利技术属性】
技术研发人员:牛振东陈保密俞银燕崔晓瑜
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1