[发明专利]一种密码芯片系统及密钥提取方法有效
| 申请号: | 201210013772.X | 申请日: | 2012-01-16 |
| 公开(公告)号: | CN102546149A | 公开(公告)日: | 2012-07-04 |
| 发明(设计)人: | 邹候文;唐韶华;唐屹;唐春明;彭俊好;苏胡双 | 申请(专利权)人: | 华南理工大学;广州大学 |
| 主分类号: | H04L9/06 | 分类号: | H04L9/06 |
| 代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 杨晓松 |
| 地址: | 510640 广*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 密码 芯片 系统 密钥 提取 方法 | ||
1.一种密码芯片系统,其特征在于,包括公钥密码引擎、对称密码引擎、HASH引擎、单向函数引擎、非易失存储器、执行引擎、t个密钥协理方以及双仲裁器物理不可克隆模块DAPUF,DAPUF的敏感电路布设在密码芯片的外围,形成笼形结构把所有的执行引擎包围起来,t个密钥协理方通过IO总线与密码芯片系统相连接,非易失存储器集成在芯片内;
所述公钥密码引擎用于执行对消息的加密和验证,以及从DAPUF中提取密钥进行解密和签名,也用于执行在密钥生成阶段对有效应答份额的加密操作;
所述对称密码引擎用于对信息进行加密和解密,所使用的密钥可以是临时交换的密钥,也可从DAPUF中提取;
所述HASH引擎用于生成公钥密码签名和验证所需的消息摘要,以及从DAPUF中提取密钥生成消息认证码;
所述单向函数引擎用于执行三个参数化单向函数,所述参数化单向函数为不可逆函数;三个参数化单向函数分别为第一参数化单向函数OWF1、第二参数化单向函数OWF2和第三参数化单向函数OWF3;
所述非易失存储器用于存储密钥序号KEYN、有效应答的散列结果SETLR、DAPUF应答的正仲裁反仲裁异或结果DAXOR;
所述的执行引擎用于执行密钥生成阶段流程和密钥重建阶段流程,以及使用Shamir门限方案将有效应答分割成t份,或者使用Shamir门限方案把t份有效应答份额合并成有效应答;
所述t个密钥协理方的公钥用于加密分割后的有效应答份额,得到t份加密的有效应答份额;在密码芯片的拥有者提出申请并提供加密的有效应答份额时,至少一方密钥协理方检查不存在物理入侵攻击后,t个密钥协理方使用各自的私钥解密有效应答,并把解密结果发回给密码芯片;
所述双仲裁器物理不可克隆模块DAPUF包含m组延时电路,m个正仲裁器和m个反仲裁器组成,输入一个n比特的挑战C获得m比特正仲裁应答LR和m比特反仲裁应答RR;DAPUF中每组延时电路由n个两进两出的通路选择器组成,每个通路选择器的激励信号通路由挑战C中的一比特控制,激励信号分成上下两条通路同时到达第一个通路选择器,如果挑战的第一比特为0则两路信号直通输出,否则交叉输出;当两路信号通过由挑战的第n比特控制的第n个通路选择器后,上下两路信号直接送到正仲裁器并且交叉后送到反仲裁器,正仲裁器和反仲裁器根据上下两路信号到达的先后顺序,如果上路先到则输出1,否则输出0。
2.根据权利要求1所述的DAPUF,其特征在于m比特正仲裁应答LR和m比特反仲裁应答RR异或得到正反异或DAXOR,DAXOR中为1的比特对应的应答位置为有效比特,否则为无效比特,丢弃正仲裁应答的无效比特后,得到有效应答TLR。
3.根据权利要求2所述的密码芯片系统,其特征在于,所述第一参数化单向函数OWF1用于对密钥序号KEYN进行散列,得到的散列值作为DAPUF的挑战C,即C=OWF1(KEYN);所述第二参数化单向函数OWF2用于对有效应答TLR进行散列得到SETLR,即SETLR=OWF2(TLR);所述第三参数化单向函数OWF3也用于对TLR进行散列,所得的结果作为密钥KEY,即KEY=OWF3(TLR)。
4.基于权利要求3所述密码芯片系统的密钥提取方法,其特征在于,包括下述步骤:
S1:密钥生成阶段:
S11:选择一个新鲜的比特串记为KEYN,将KEYN经第一参数化单向函数OWF1得到的散列值作为DAPUF的挑战C,得到m比特正仲裁应答LR和m比特反仲裁应答RR,LR和RR的第i比特由第i组延时电路经正仲裁器和反仲裁器仲裁生成;
S12:重复一次以KEYN的散列值作为挑战,得到的m比特正仲裁应答LR1,如果LR1不等于LR则返回步骤S11,否则进入步骤S13;
S13:LR和RR异或得到DAXOR,DAXOR结果为1所对应的位置为有效比特位,否则为无效比特位,如果无效比特位超过s位,则返回步骤S11;丢弃LR的无效比特位得到有效应答TLR,把TLR作为第二参数化单向函数OWF2的输入得到散列值SETLR;把KEYN、SETLR和DAXOR作为一个元组存于非易失存储器中,以便于重建阶段准确恢复TLR;
S14:将TLR用Shamir门限方案分割成t个有效应答份额,分别用t个密钥协理方的公钥加密后另存;
S15:输出密钥KEY=OWF3(TLR);
S2:密钥重建阶段:
S21:将KEYN的散列值作为DAPUF的挑战,得到应答为LR1和RR1,根据生成阶段保存的DAXOR中为0的位置,丢弃LR1的无效比特得到TLR1;
S22:计算SETLR1=OWF2(TLR1),如果SETLR1=SETLR,则TLR=TLR1,输出密钥KEY=OWF3(TLR1)并结束重建阶段,否则执行步骤S23;
S23:计算LR1和RR1的异或结果得DAXOR1,找到DAXOR1和DAXOR之间的差异比特的位置,取反LR1的相应位置并丢弃无效比特后得到TLR2,计算SETLR2=OWF2(TLR2),如果SETLR=SETLR2则TLR=TLR2,输出KEY=OWF3(TLR2)并结束重建阶段,否则如果统计本步骤执行的次数小于q次则返回步骤S21,否则;执行步骤S24;
S24:根据步骤S23得到的差异比特的位置,并假定有k个比特存在差异,对每个差异比特位置,每次将0到2k-1中的一个数转换成k比特二进制数,替换LR1中相应差异比特位置的值,丢弃无效比特得到TLR3;每次取反TLR3中的一个比特得到TLRi3(其中首次不取反),计算SETLR4=OWF2(TLRi3),如果SETLR4=SETLR,则TLR=TLRi3,输出密钥KEY=OWF3(TLRi3)并结束重建阶段,否则如果S24执行小于w次则返回S21,否则执行步骤S25;
S25:密码芯片将t个加密的有效应答份额发给t个密钥协理方并请求解密,t个密钥协理方在至少一方确认不存在物理入侵攻击后解密并发回各自的密钥份额;收齐密钥份额后使用Shamir门限方案恢复有效应答TLR,输出密钥KEY=OWF3(TLR)并结束重建阶段。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学;广州大学,未经华南理工大学;广州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210013772.X/1.html,转载请声明来源钻瓜专利网。





