[发明专利]基于Camellia加密算法的软PUF有效

专利信息
申请号: 202110388098.2 申请日: 2021-04-12
公开(公告)号: CN113268745B 公开(公告)日: 2022-06-21
发明(设计)人: 汪鹏君;陈佳;李方强;李刚;张会红 申请(专利权)人: 温州大学
主分类号: G06F21/60 分类号: G06F21/60;G06F21/72;H04L9/08
代理公司: 宁波奥圣专利代理有限公司 33226 代理人: 方小惠
地址: 325000 浙江省温州市瓯海*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 camellia 加密算法 puf
【权利要求书】:

1.一种基于Camellia加密算法的软PUF,包括硬件平台,其特征在于所述的硬件平台为128位Camellia加密算法硬件电路,所述的128位Camellia加密算法硬件电路具有以下几个端口:128位密钥输入端口key_in[0]-[127]、128位明文输入端口data_in[0]-[127]、时钟输入端口clk、128位密文输出端口data_out[0]-[127];所述的128位Camellia加密算法硬件电路中预存有128位子密钥k1、128位子密钥k2和时序路径信息,时序路径信息包括关键路径延迟Tpath和不同输入信号激励下激活的与128位密文输出端口data_out[0]-[127]直接相关的128条时序路径;

该128位Camellia加密算法硬件电路工作过程包括18轮加密操作,其中第1轮、第6轮、第12轮和第18轮加密操作分别需要花费两个时钟周期来完成加密操作,其他轮加密操作仅需要一个时钟周期来完成加密操作,该128位Camellia加密算法硬件电路整个工作过程需要22个时钟周期,其中,第1轮加密操作在第1个时钟周期和第2个时钟周期进行,且第1个时钟周期和第2个时钟周期分别在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第2轮加密操作在第3个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第3轮加密操作在第4个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第4轮加密操作在第5个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第5轮加密操作在第6个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第6轮加密操作在第7个时钟周期和第8个时钟周期进行,且第7个时钟周期和第8个时钟周期分别在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第7轮加密操作在第9个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第8轮加密操作在第10个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第9轮加密操作在第11个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第10轮加密操作在第12个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第11轮加密操作在第13个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第12轮加密操作在第14个时钟周期和第15个时钟周期进行,且第14个时钟周期和第15个时钟周期分别在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第13轮加密操作在第16个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第14轮加密操作在第17个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第15轮加密操作在第18个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第16轮加密操作在第19个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第17轮加密操作在第20个时钟周期进行,在128位密文输出端口data_out[0]-[127]产生一个128位密文输出,第18轮加密操作在第21个时钟周期和第22个时钟周期进行,且第21个时钟周期和第22个时钟周期分别在128位密文输出端口data_out[0]-[127]产生一个128位密文输出;该128位Camellia加密算法硬件电路内部具有F函数、FL函数及FL-1函数,FL-1函数为FL函数的逆函数,关键路径延迟Tpath为与128位Camellia加密算法硬件电路的128位密文输出端口data_out[0]-[127]直接相关的128条时序路径中的最大路径延迟,将128位Camellia加密算法硬件电路正常工作的时钟周期长度记为Tclk,Tclk=Tpath

所述的基于Camellia加密算法的软PUF生成PUF响应的具体步骤如下:

①在时钟输入端口clk输入包含22个时钟周期并且每个时钟周期长度均为Tclk的时钟信号,在128位密钥输入端口key_in[0]-[127]输入128位密钥信号K1,在128位明文输入端口data_in[0]-[127]输入128位明文信号P1,此时与128位密文输出端口data_out[0]-[127]直接相关的128条时序路径会被激活,所述的128位密文输出端口data_out[0]-[127]在每个时钟周期内分别产生一个128位密文输出,22个时钟周期一共得到22个128位密文输出,将该22个128位密文输出分别作为22个时钟周期的128位参考输出;

②在128位密钥输入端口key_in[0]-[127]输入128位密钥信号K1和在128位明文输入端口data_in[0]-[127]输入128位明文信号P1,然后在时钟输入端口clk上输入包含22个时钟周期并且时钟周期长度大于70%Tclk且小于Tclk的任意一个时钟信号C1,最后记录该时钟信号下,每个时钟周期产生的128位密文输出,从第1个时钟周期开始,将该时钟周期产生的128位密文输出与该时钟周期的128位参考输出进行比较,如果两者相同,则进行下一个时钟周期的比较,直至两者不同,如果两者不同,则结束比较,并确定该时钟周期的位数以及所处加密操作的轮数,将该时钟周期的位数记为n,轮数记为m,然后进入步骤③进行判断及处理;

③当轮数m为1,时钟周期位数n为1时,则将128位明文信号P1与128位子密钥k1按位进行异或操作,得到第一个128位异或操作结果,然后将该第一个128位异或操作结果与第1个时钟周期的128位参考输出按位进行异或操作,得到第二个128位异或操作结果,该第二个128位异或操作结果即为PUF响应;

当轮数m为1,时钟周期位数n为2时,则将第1个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的F函数中进行处理,得到64位F函数运算结果,然后将该64位F函数运算结果与第1个时钟周期的128位密文输出的低64位数据按位进行异或操作,得到64位异或操作结果,将该64位异或操作结果作为高64位数据,第1个时钟周期的128位密文输出的高64位作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第2个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为6,时钟周期位数n为7时,则将第6个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的F函数中进行处理,得到64位F函数运算结果,然后将64位F函数运算结果与第6个时钟周期的128位密文输出的低64位数据按位进行异或操作,得到64位异或操作结果,将该64位异或操作结果作为高64位数据,第6个时钟周期的128位密文输出的高64位作为低64位数据,拼接为128位密文输出,最后将该128位密文输出与第7个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为6,时钟周期位数n为8时,则将第7个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的FL函数中,得到64位FL函数运算结果,然后将第7个时钟周期的128位密文输出的低64位数据输入到128位Camellia加密算法硬件电路的FL-1函数中,得到64位FL-1函数运算结果,将64位FL函数运算结果作为高64位数据,64位FL-1函数运算结果作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第8个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为12,时钟周期位数n为14时,则将第13个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的F函数中进行处理,得到64位F函数运算结果,然后将64位F函数运算结果与第13个时钟周期的128位密文输出的低64位数据按位进行异或操作,得到64位异或操作结果,将64位异或操作结果作为高64位数据,第13个时钟周期的128位密文输出的高64位数据作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第14个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为12,时钟周期位数n为15时,则将第14个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的FL函数中,得到64位FL函数运算结果,然后将第14个时钟周期的128位密文输出的低64位数据输入到128位Camellia加密算法硬件电路的FL-1函数中,得到64位FL-1函数运算结果,将64位FL函数运算结果作为高64位数据,64位FL-1函数运算结果作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第15个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为18,时钟周期位数n为21时,则将第20个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的F函数中进行处理,得到64位F函数运算结果,然后将64位F函数运算结果与第20个周期的128位密文输出的低64位数据按位进行异或操作,得到64位异或操作结果,将64位异或操作结果作为高64位数据,第20个时钟周期的128位密文输出的高64位数据作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第21个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为18,时钟周期位数n为22时,则将第21个时钟周期的128位密文输出的高64位数据与128位子密钥k2的低64位数据按位进行异或操作,得到第一个64位异或操作结果,然后将第21个时钟周期的128位密文输出的低64位数据与128位子密钥k2的高64位数据按位进行异或操作,得到第二个异或操作结果,将第二个异或操作结果作为高64位数据,第一个异或操作结果作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第22个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为2、3、4、5时,则将第m个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的F函数中进行处理,得到64位F函数运算结果,然后将64位F函数运算结果与第m个时钟周期的128位密文输出的低64位数据按位进行异或操作,得到64位异或操作结果,将64位异或操作结果作为高64位数据,第m个时钟周期的128位密文输出的高64位数据作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第m+1个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为7、8、9、10、11时,则将第m+1个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的F函数中进行处理,得到64位F函数运算结果,然后将64位F函数运算结果与第m+1个时钟周期的128位密文输出的低64位数据按位进行异或操作,得到64位异或操作结果,将64位异或操作结果作为高64位数据,第m+1个时钟周期的128位密文输出的高64位数据作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第m+2个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当轮数m为13、14、15、16、17时,则将第m+2个时钟周期的128位密文输出的高64位数据输入到128位Camellia加密算法硬件电路的F函数中进行处理,得到64位F函数运算结果,然后将64位F函数运算结果与第m+2个时钟周期的128位密文输出的低64位数据按位进行异或操作,得到64位异或操作结果,将64位异或操作结果作为高64位数据,第m+2个时钟周期的128位密文输出的高64位数据作为低64位数据,拼接为128位密文输出,最后将128位密文输出与第m+3个时钟周期的128位参考输出按位进行异或操作,得到128位异或操作结果,该128位异或操作结果即为PUF响应;

当改变所述的128位密钥输入端口key_in[0]-[127]、所述的128位明文输入端口data_in[0]-[127]和所述的时钟输入端口clk中至少一个端口接入的信号,就能够改变所述的基于Camellia加密算法的软PUF生成的PUF响应。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于温州大学,未经温州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110388098.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top