发明名称 一种基于指纹特征与密钥交换协议的模糊金库方法
摘要 本发明涉及一种基于指纹特征与密钥交换协议的模糊金库方法。现有方法存在安全存储用户间的共享密钥问题。本发明包括Diffie-Hellman密钥交换协议产生共享密钥阶段和指纹模糊金库与共享密钥的绑定、释放阶段;共享密钥产生阶段:基于Diffie-Hellman协议产生共享密钥。指纹模糊金库与共享密钥的绑定阶段:原始指纹信息作为多项式的元素,利用共享密钥构造多项式。指纹模糊金库与共享密钥的释放阶段:通过查询指纹信息重构多项式,恢复共享密钥。本发明利用指纹模糊金库算法保护共享密钥的同时,通过用户指纹特征安全方便地释放共享密钥,使密钥共享方案具有更好的实用性。
申请公布号 CN102710417A 申请公布日期 2012.10.03
申请号 CN201210205914.2 申请日期 2012.06.18
申请人 杭州电子科技大学 发明人 游林;范萌生;王升国
分类号 H04L9/08(2006.01)I;G06K9/00(2006.01)I 主分类号 H04L9/08(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 杜军
主权项 1.一种基于指纹特征与密钥交换协议的模糊金库方法,其特征在于该方法包括Diffie-Hellman密钥交换产生共享密钥阶段和指纹模糊金库与共享密钥的绑定、释放阶段;所述的Diffie-Hellman密钥交换产生共享密钥阶段具体如下:设用户一和用户二想建立一个共享密钥用于将来加密,所有的操作都是在有限乘法群<img file="2012102059142100001DEST_PATH_IMAGE001.GIF" wi="49" he="28" />上进行的,<img file="801582DEST_PATH_IMAGE002.GIF" wi="16" he="18" />为<img file="2012102059142100001DEST_PATH_IMAGE003.GIF" wi="18" he="20" />中的一个生成元;<img file="39053DEST_PATH_IMAGE004.GIF" wi="21" he="26" />表示伽罗瓦域,<img file="2012102059142100001DEST_PATH_IMAGE005.GIF" wi="17" he="18" />为素数;用户一秘密选定随机自然数<img file="411128DEST_PATH_IMAGE006.GIF" wi="41" he="20" />,将<img file="2012102059142100001DEST_PATH_IMAGE007.GIF" wi="21" he="25" />赋值给参数<img file="357219DEST_PATH_IMAGE008.GIF" wi="17" he="16" />;将<img file="410625DEST_PATH_IMAGE008.GIF" wi="17" he="16" />发给用户二;B. 用户二秘密选定随机自然数<img file="DEST_PATH_IMAGE009.GIF" wi="41" he="20" />,将<img file="624307DEST_PATH_IMAGE010.GIF" wi="21" he="25" />赋值给参数<img file="DEST_PATH_IMAGE011.GIF" wi="17" he="22" />;将<img file="918016DEST_PATH_IMAGE011.GIF" wi="17" he="22" />发给用户一;C. 用户一计算<img file="272774DEST_PATH_IMAGE012.GIF" wi="40" he="25" />,然后清除<img file="DEST_PATH_IMAGE013.GIF" wi="14" he="16" />;D. 用户二计算<img file="444386DEST_PATH_IMAGE014.GIF" wi="40" he="25" />,然后清除<img file="2012102059142100001DEST_PATH_IMAGE015.GIF" wi="14" he="20" />;E. 用户一和用户二得到共享密钥<img file="14038DEST_PATH_IMAGE016.GIF" wi="77" he="25" />, 其中<img file="DEST_PATH_IMAGE017.GIF" wi="34" he="22" />是一个单向哈希函数,生成128bits的数,即<img file="39501DEST_PATH_IMAGE018.GIF" wi="14" he="20" />是一个128bits的数;由于<img file="84817DEST_PATH_IMAGE013.GIF" wi="14" he="16" />与<img file="542343DEST_PATH_IMAGE015.GIF" wi="14" he="20" />是保密的,所以即使攻击者知道了<img file="904186DEST_PATH_IMAGE005.GIF" wi="17" he="18" />、<img file="54544DEST_PATH_IMAGE002.GIF" wi="16" he="18" />、<img file="624373DEST_PATH_IMAGE008.GIF" wi="17" he="16" />、<img file="698639DEST_PATH_IMAGE011.GIF" wi="17" he="22" />,也很难获得用户一和用户二的共享密钥<img file="164256DEST_PATH_IMAGE018.GIF" wi="14" he="20" />;所述的指纹模糊金库与共享密钥的绑定、释放阶段具体如下:指纹模糊金库与共享密钥的绑定阶段步骤1-1. 用户一和用户二分别提取个人的指纹特征<img file="DEST_PATH_IMAGE019.GIF" wi="126" he="26" />和<img file="797100DEST_PATH_IMAGE020.GIF" wi="134" he="26" />,<img file="DEST_PATH_IMAGE021.GIF" wi="69" he="25" />;<img file="426796DEST_PATH_IMAGE022.GIF" wi="74" he="25" />;其中<img file="DEST_PATH_IMAGE023.GIF" wi="14" he="16" />,<img file="540639DEST_PATH_IMAGE024.GIF" wi="16" he="18" />,<img file="DEST_PATH_IMAGE025.GIF" wi="14" he="20" />,<img file="DEST_PATH_IMAGE027.GIF" wi="9" he="17" />分别表示指纹细节点的平面坐标,方向和特征类型,其中特征类型为端点或叉点;有角标<img file="250975DEST_PATH_IMAGE028.GIF" wi="17" he="18" />的字符表示用户一的数据,有角标<img file="DEST_PATH_IMAGE029.GIF" wi="17" he="18" />的字符表示用户二的数据;用户一和用户二分别输入个人的注册用户名,记作<img file="743136DEST_PATH_IMAGE030.GIF" wi="37" he="25" />,<img file="DEST_PATH_IMAGE031.GIF" wi="38" he="25" />;步骤1-2. 用户一和用户二分别利用共享密钥<img file="909062DEST_PATH_IMAGE018.GIF" wi="14" he="20" />构造多项式<img file="512082DEST_PATH_IMAGE032.GIF" wi="36" he="22" />;将<img file="30919DEST_PATH_IMAGE018.GIF" wi="14" he="20" />的二进制串分块组成在<img file="DEST_PATH_IMAGE033.GIF" wi="40" he="26" />上的<img file="739987DEST_PATH_IMAGE034.GIF" wi="33" he="20" />次多项式的系数;步骤1-3. 用户一做如下步骤:步骤1-3-1. 将指纹每个细节点的平面坐标和方向均线性映射到<img file="DEST_PATH_IMAGE035.GIF" wi="54" he="22" />,分别用8比特表示;将真实点集合记作<img file="281958DEST_PATH_IMAGE036.GIF" wi="169" he="26" />;添加<img file="DEST_PATH_IMAGE037.GIF" wi="44" he="25" />个随机数作为杂凑点,其集合记作<img file="737603DEST_PATH_IMAGE038.GIF" wi="254" he="26" />,<img file="235581DEST_PATH_IMAGE037.GIF" wi="44" he="25" />大于<img file="DEST_PATH_IMAGE039.GIF" wi="16" he="25" />;指纹细节点集合为<img file="803965DEST_PATH_IMAGE040.GIF" wi="89" he="25" />,集合顺序置乱;步骤1-3-2. 把集合<img file="DEST_PATH_IMAGE041.GIF" wi="24" he="25" />中的每个细节点的平面坐标<img file="895549DEST_PATH_IMAGE023.GIF" wi="14" he="16" />、<img file="778055DEST_PATH_IMAGE024.GIF" wi="16" he="18" />串联起来构成一个16比特的数<img file="442123DEST_PATH_IMAGE042.GIF" wi="98" he="26" />,然后计算<img file="DEST_PATH_IMAGE043.GIF" wi="49" he="26" />;符号“<img file="DEST_PATH_IMAGE045.GIF" wi="9" he="21" />”表示二进制数串联;点对<img file="260038DEST_PATH_IMAGE046.GIF" wi="141" he="26" />构成真实集合<img file="DEST_PATH_IMAGE047.GIF" wi="22" he="25" />;步骤1-3-3. 添加<img file="760289DEST_PATH_IMAGE048.GIF" wi="42" he="25" />个随机数作为杂凑点,<img file="507139DEST_PATH_IMAGE048.GIF" wi="42" he="25" />大于<img file="42026DEST_PATH_IMAGE039.GIF" wi="16" he="25" />;杂凑点集合记作<img file="DEST_PATH_IMAGE049.GIF" wi="470" he="26" />,<img file="702945DEST_PATH_IMAGE050.GIF" wi="102" he="25" />,其中<img file="DEST_PATH_IMAGE051.GIF" wi="70" he="26" />不等于<img file="690493DEST_PATH_IMAGE052.GIF" wi="66" he="26" />;<img file="DEST_PATH_IMAGE053.GIF" wi="114" he="26" />,并将这样形成的点集合<img file="288702DEST_PATH_IMAGE054.GIF" wi="22" he="25" />中的顺序置乱;用户一得到模糊金库<img file="DEST_PATH_IMAGE055.GIF" wi="150" he="25" />;步骤1-4. 对集合<img file="428827DEST_PATH_IMAGE056.GIF" wi="21" he="25" />运用几何哈希技术生成一个注册哈希表,具体如下:步骤1-4-1. 集合<img file="713178DEST_PATH_IMAGE056.GIF" wi="21" he="25" />中的第一个点作为基准点,记<img file="DEST_PATH_IMAGE057.GIF" wi="138" he="26" />,其它点可以依次记为<img file="502536DEST_PATH_IMAGE058.GIF" wi="141" he="26" />;步骤1-4-2. 对指纹细节点进行变换和量化;在<img file="DEST_PATH_IMAGE059.GIF" wi="26" he="25" />被选作基准点以后,其它点<img file="327273DEST_PATH_IMAGE058.GIF" wi="141" he="26" />将根据<img file="321905DEST_PATH_IMAGE059.GIF" wi="26" he="25" />进行校准操作,其变换公式为:<img file="839474DEST_PATH_IMAGE060.GIF" wi="485" he="137" />点<img file="DEST_PATH_IMAGE061.GIF" wi="140" he="26" />变换后的横坐标,纵坐标,脊线方向角值和类型记作<img file="50881DEST_PATH_IMAGE062.GIF" wi="268" he="33" />;以<img file="679308DEST_PATH_IMAGE059.GIF" wi="26" he="25" />为基准点时的变换特征点的集合<img file="DEST_PATH_IMAGE063.GIF" wi="234" he="32" />;然后对集合<img file="528447DEST_PATH_IMAGE064.GIF" wi="18" he="25" />中的每一点进行如下量化过程:<img file="DEST_PATH_IMAGE065.GIF" wi="258" he="174" />这里形成的点<img file="216917DEST_PATH_IMAGE066.GIF" wi="237" he="26" />是量化后的结果,其中坐标值和角度的量化参数<img file="DEST_PATH_IMAGE067.GIF" wi="16" he="20" />和<img file="980867DEST_PATH_IMAGE068.GIF" wi="17" he="18" />的选择与注册阶段提取的细节点坐标值的范围和验证阶段系统要达到的精度有关;此时形成的集合<img file="DEST_PATH_IMAGE069.GIF" wi="326" he="28" />,即是当以<img file="898139DEST_PATH_IMAGE059.GIF" wi="26" he="25" />为基准点时,其它各点形成的注册哈希表中的其中一组值;步骤1-4-3. 其它各组注册哈希表的生成过程,只需重复步骤1-4-1和步骤1-4-2,直到所有其它的点<img file="116630DEST_PATH_IMAGE070.GIF" wi="153" he="26" />依次作为基准点为止,其它各组的注册哈希表可分别可以记为<img file="DEST_PATH_IMAGE071.GIF" wi="118" he="29" />,最后形成完整的注册哈希表<img file="225270DEST_PATH_IMAGE072.GIF" wi="112" he="26" />,<img file="DEST_PATH_IMAGE073.GIF" wi="182" he="30" />;步骤1-5. 至此密钥绑定过程完成,系统保存的数据为一个注册哈希表数据<img file="896422DEST_PATH_IMAGE074.GIF" wi="25" he="26" />和模糊金库<img file="DEST_PATH_IMAGE075.GIF" wi="20" he="25" />,其中保存注册哈希表的目的是校准注册指纹图像和查询指纹图像的细节点特征信息;步骤1-6. 用户二通过步骤1-1至步骤1-5产生一个完整的注册哈希表数据<img file="945281DEST_PATH_IMAGE076.GIF" wi="113" he="26" />和集合<img file="DEST_PATH_IMAGE077.GIF" wi="22" he="25" />,集合<img file="332793DEST_PATH_IMAGE077.GIF" wi="22" he="25" />中包含<img file="113799DEST_PATH_IMAGE078.GIF" wi="14" he="25" />个真实点和<img file="DEST_PATH_IMAGE079.GIF" wi="41" he="25" />个假点;<img file="583832DEST_PATH_IMAGE080.GIF" wi="25" he="26" />为一个注册哈希表数据;模糊金库<img file="DEST_PATH_IMAGE081.GIF" wi="149" he="25" />;若用户一和用户二两人中的任一人想恢复共享密钥<img file="905223DEST_PATH_IMAGE018.GIF" wi="14" he="20" />,他可以独自利用自己的模糊金库去恢复共享密钥。
地址 310018 浙江省杭州市下沙高教园区2号大街