CN105119595B - 基于预充电型puf电路的blake算法 - Google Patents

基于预充电型puf电路的blake算法 Download PDF

Info

Publication number
CN105119595B
CN105119595B CN201510500059.1A CN201510500059A CN105119595B CN 105119595 B CN105119595 B CN 105119595B CN 201510500059 A CN201510500059 A CN 201510500059A CN 105119595 B CN105119595 B CN 105119595B
Authority
CN
China
Prior art keywords
algorithms
nmos tube
blake
pmos
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510500059.1A
Other languages
English (en)
Other versions
CN105119595A (zh
Inventor
张跃军
汪鹏君
丁代鲁
李刚
钱浩宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ningbo University
Original Assignee
Ningbo University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ningbo University filed Critical Ningbo University
Priority to CN201510500059.1A priority Critical patent/CN105119595B/zh
Publication of CN105119595A publication Critical patent/CN105119595A/zh
Application granted granted Critical
Publication of CN105119595B publication Critical patent/CN105119595B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Logic Circuits (AREA)

Abstract

本发明公开了一种基于预充电型PUF电路的BLAKE算法,提取PUF电路输出的8位二进制数据和BLAKE算法中的变量数作异或运算,将异或运算得到的8位二进制数据和BLAKE算法的输入链接值拼接为16位二进制数据赋值给G函数组的输入数据,然后进行14轮的压缩运算,最后将第14轮的输出数据、预充电型PUF电路输出的8位二进制数据和第14轮更新后的输入链接值进行异或运算,得到待处理消息块的哈希值;优点是利用预充电型PUF电路在制造过程的工艺偏差,使BLAKE算法具有硬件识别的功能,通过将预充电型PUF电路融入到现有的BLAKE‑32算法中应用于密码芯片,利用PUF数据与功耗之间相互独立的特性,消除密码芯片的功耗与所处理消息数据之间的相关性来防御功耗攻击等,提高密码芯片的安全性。

Description

基于预充电型PUF电路的BLAKE算法
技术领域
本发明涉及一种BLAKE算法,尤其是涉及一种基于预充电型PUF电路的BLAKE算法。
背景技术
Hash函数(哈希函数)又称杂凑函数,广泛应用于数字签名、消息认证、密码协议等方面,在密码学领域中扮演着极其重要的角色。Hash函数将任意长度的消息映射为固定长度的二进制数据,输出二进制数据称为哈希值。常见的杂凑算法有MD-5、SHA-1算法和SHA224/256/384/512。如果Hash函数的输入为一整段明文,哪怕只是更改其中很少的几个字符,产生的哈希值将完全不同。研究表明,要找到hash函数输出为同一个值的两个不同的消息数据,在理论计算上是不可能完成的,所以哈希函数可以用来检验消息数据的完整性。同时,越来越多的研究表明Hash函数具有各种缺陷,存在被攻击的威胁。尤其是2004年我国密码学家王小云教授宣布攻破目前最常用的Hash算法—MD5。该攻击主要是采用差分分析,此外他还利用这种方法先后攻击了MD4、RIPEMD、HAVAL和SHA-0,并于2005年对SHA-1算法进行了理论上的破解。因此,美国国家标准与技术研究院((National Institute ofStandards and Technology,NIST)与2008年开始在全球范围内征集哈希算法的新标准(被称为SHA-3算法)。截止2008年10月,NIST共收到64份提交的哈希算法方案,确定其中51个候选算法。2010年12月10日公告最后一轮候选方案,包括5个候选算法:BLAKE,JH,Keccak和Skein。BLAKE算法是最后的5个候选算法之一。目前,关于BLAKE算法已经发表了大量的论文,主要关注BLAKE算法的安全性评估和性能提高。ECRYPT的ghost实验室测量的哈希函数的性能,验证BLAKE算法在软件上具有良好的性能。Henzen等研究BLAKE的VLSI实现,并提出了紧凑型内核,在0.65V电压下可达9.59W/MHz。Ekawat侧重于采用Xilinx和Altera公司的FPGA开发板,实现并比较最后一轮SHA-3候选算法的多种硬件架构以及硬件性能。
物理不可克隆函数(Physical Unclonable Functions,PUF)电路属于芯片特征识别电路,具有唯一性、随机性和不可克隆性,通过提取芯片制造过程中无法避免引入的工艺偏差,产生无限多个特有的数据信息。国际上许多研究机构,包括美国、奥地利、日本和法国等国家,都对PUF电路展开了深入研究,并取得一定的研究成果。在PUF电路概念模型方面,Pappu等依据光学操作原理提出物理单向函数(Physical One-Way Functions,POWFs)的概念,并将其用于武器控制条约的战略武器识别中;Bulens等提出利用纸质材料不规则的纤维结构,通过激光反射提取纤维的物理特征作为防伪标识的Paper-PUF;Gassend等研究人员提出硅PUF电路的实现方法,采用CMOS工艺参数偏差实现随机函数的功能,正式将PUF概念引入到硅物理中。在PUF电路的实现技术方面,Lim等采用互联线和晶体管的延迟偏差实现Arbiter-PUF电路;Suzuki等提出利用门电路的延迟偏差和信号传输特性产生毛刺,实现Glitch-PUF电路。在PUF电路的性能研究方面,Lin等提出低功耗PUF电路设计方案;Ganta等提出基于漏电流的高鲁棒性PUF电路;Yu等提出可配置逻辑结构的RO-PUF电路等等。在PUF电路的应用研究方面,Guajardo等在FPGA中通过内嵌PUF电路的方式实现IP保护;Majzoobi等采用Time-Bounded PUF实现FPGA的认证应用;Yu等将PUF电路应用到安全协处理器中等等。
鉴此,设计一种基于预充电型PUF电路的BLAKE算法应用于密码芯片,使其具备硬件识别的功能,在提高密码芯片安全性方面具有重要意义。
发明内容
本发明所要解决的技术问题是提供一种基于预充电型PUF电路的BLAKE算法;该BLAKE算法将预充电型PUF电路融入到现有的BLAKE-32算法中应用于密码芯片,可使密码芯片具备硬件识别的功能,提高密码芯片的安全性。
本发明解决上述技术问题所采用的技术方案为:一种基于预充电型PUF电路的BLAKE算法,包括以下步骤:
①将BLAKE-32算法中输入G函数组的16位二进制数据形式的输入数据记为τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0,将BLAKE-32算法中G函数组输出的16位二进制数据形式的输出数据记为τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0
②将BLAKE-32算法中8位二进制数据形式的变量数记为C7C6C5C4C3C2C1C0,将BLAKE-32算法中的8位二进制数据形式的输入链接值记为令C7C6C5C4C3C2C1C0的初始值为00000000,令的初始值为00000000;
③提取预充电型PUF电路输出端输出的8位二进制数据,将该8位二进制数据记为P7P6P5P4P3P2P1P0,所述的预充电型PUF电路包括第一PMOS管、第二PMOS管、第三PMOS管、第四PMOS管、第一NMOS管、第二NMOS管、第三NMOS管、第四NMOS管和第五NMOS管,所述的第一PMOS管的源极、所述的第二PMOS管的源极、所述的第三PMOS管的源极和所述的第四PMOS管的源极均接入电源,所述的第一PMOS管的漏极、所述的第二PMOS管的漏极、所述的第三PMOS管的栅极、所述的第一NMOS管的漏极、所述的第二NMOS管的漏极和所述的第三NMOS管的栅极连接,所述的第三PMOS管的漏极、所述的第四PMOS管的漏极、所述的第二PMOS管的栅极、所述的第二NMOS管的栅极、所述的第三NMOS管的漏极和所述的第四NMOS管的漏极连接,所述的第二NMOS管的源极、所述的第三NMOS管的源极和所述的第五NMOS管的漏极连接,所述的第五NMOS管的源极接地,所述的第一PMOS管的栅极、所述的第四PMOS管的栅极和所述的第五NMOS管的栅极连接且其连接端为所述的预充电型PUF电路的复位端,所述的第一NMOS管的源极为所述的预充电型PUF电路的输出端,所述的第四NMOS管的源极为所述的预充电型PUF电路的互补输出端;所述的第一NMOS管的栅极和所述的第四NMOS管的栅极连接且其连接端为预充电型PUF电路的使能端;
④将C7C6C5C4C3C2C1C0和P7P6P5P4P3P2P1P0作异或运算,得到8位二进制数据记为M7M6M5M4M3M2M1M0;将M7M6M5M4M3M2M1M0作为高8位,作为低8位进行拼接,得到16位二进制数据M7M6M5M4M3M2M1M0
⑤将16位二进制数据M7M6M5M4M3M2M1M0 的值赋予τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0;将τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0和待处理消息块输入到BLAKE-32算法中的G函数组中进行第1轮G函数压缩运算,得到第1轮G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0
⑥更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0并采用更新后的τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0进行下一轮的G函数压缩运算,得到下一轮的G函数压缩运算的输出数据,直至完成14轮G函数压缩运算,得到第14轮的G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0;其中,更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0的具体过程为:采用前一轮G函数压缩运算输出数据的低八位数据τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0更新采用前一轮G函数压缩运算的C7C6C5C4C3C2C1C0的值加1后得到的和值更新C7C6C5C4C3C2C1C0;将更新后的C7C6C5C4C3C2C1C0和P7P6P5P4P3P2P1P0作异或运算,得到更新后的M7M6M5M4M3M2M1M0;采用更新后的M7M6M5M4M3M2M1M0和更新后的更新M7M6M5M4M3M2M1M0 采用更新后的M7M6M5M4M3M2M1M0 更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0,得到更新后的τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0
⑦将第14轮的G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0、P7P6P5P4P3P2P1P0和第14轮更新后的按照如下公式进行异或运算:
其中,符号为异或运算符号;符号“←”为赋值符号;
⑧将步骤⑦得到的作为BLAKE-32算法的输出数据,该输出数据即为待处理消息块的哈希值。
与现有技术相比,本发明的优点在于在给BLAKE-32算法的G函数组的输入数据赋值过程中,采用预充电型PUF电路输出端输出的8位二进制数据P7P6P5P4P3P2P1P0取代现有的BLAKE-32算法中由盐值和计数器构成的8位二进制数据,并在BLAKE-32算法的G函数组完成14轮压缩运算后,再将第14轮的G函数压缩运算的输出数据、预充电型PUF电路的输出端输出的8位二进制数据和第14轮更新后的进行异或运算后得到待处理消息块的哈希值,由此利用预充电型PUF电路在制造过程的工艺偏差,使BLAKE算法具有硬件识别的功能,通过将预充电型PUF电路融入到现有的BLAKE-32算法中应用于密码芯片,利用PUF数据与功耗之间相互独立的特性,消除密码芯片的功耗与所处理消息数据之间的相关性来防御功耗攻击等,来提高密码芯片的安全性。
附图说明
图1为本发明的BLAKE算法的流程框图;
图2为本发明的预充电型PUF电路的电路图;
图3为本发明的预充电型PUF电路的蒙特卡洛仿真图;
图4为本发明的BLAKE算法的频率和吞吐率。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
实施例:如图1所示,一种基于预充电型PUF电路的BLAKE算法,包括以下步骤:
①将BLAKE-32算法中输入G函数组的16位二进制数据形式的输入数据记为τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0,将BLAKE-32算法中G函数组输出的16位二进制数据形式的输出数据记为τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0
②将BLAKE-32算法中8位二进制数据形式的变量数记为C7C6C5C4C3C2C1C0,将BLAKE-32算法中的8位二进制数据形式的输入链接值记为令C7C6C5C4C3C2C1C0的初始值为00000000,令的初始值为00000000;
③提取预充电型PUF电路输出端输出的8位二进制数据,将该8位二进制数据记为P7P6P5P4P3P2P1P0,预充电型PUF电路包括第一PMOS管P1、第二PMOS管P2、第三PMOS管P3、第四PMOS管P4、第一NMOS管M1、第二NMOS管M2、第三NMOS管M3、第四NMOS管M4和第五NMOS管M5,第一PMOS管P1的源极、第二PMOS管P2的源极、第三PMOS管P3的源极和第四PMOS管P4的源极均接入电源,第一PMOS管P1的漏极、第二PMOS管P2的漏极、第三PMOS管P3的栅极、第一NMOS管M1的漏极、第二NMOS管M2的漏极和第三NMOS管M3的栅极连接,第三PMOS管P3的漏极、第四PMOS管P4的漏极、第二PMOS管P2的栅极、第二NMOS管M2的栅极、第三NMOS管M3的漏极和第四NMOS管M4的漏极连接,第二NMOS管M2的源极、第三NMOS管M3的源极和第五NMOS管M5的漏极连接,第五NMOS管M5的源极接地,第一PMOS管P1的栅极、第四PMOS管P4的栅极和第五NMOS管M5的栅极连接且其连接端为预充电型PUF电路的复位端,第一NMOS管M1的源极为预充电型PUF电路的输出端,第四NMOS管M4的源极为预充电型PUF电路的互补输出端;第一NMOS管M1的栅极和第四NMOS管M4的栅极连接且其连接端为预充电型PUF电路的使能端;预充电型PUF电路的电路图如图2所示,蒙特卡洛仿真图如图3所示。
④将C7C6C5C4C3C2C1C0和P7P6P5P4P3P2P1P0作异或运算,得到8位二进制数据记为M7M6M5M4M3M2M1M0;将M7M6M5M4M3M2M1M0作为高8位,作为低8位进行拼接,得到16位二进制数据M7M6M5M4M3M2M1M0
⑤将16位二进制数据M7M6M5M4M3M2M1M0 的值赋予τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0;将τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0和待处理消息块输入到BLAKE-32算法中的G函数组中进行第1轮G函数压缩运算,得到第1轮G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0
⑥更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0并采用更新后的τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0进行下一轮的G函数压缩运算,得到下一轮的G函数压缩运算的输出数据,直至完成14轮G函数压缩运算,得到第14轮的G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0;其中,更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0的具体过程为:采用前一轮G函数压缩运算输出数据的低八位数据τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0更新采用前一轮G函数压缩运算的C7C6C5C4C3C2C1C0的值加1后得到的和值更新C7C6C5C4C3C2C1C0;将更新后的C7C6C5C4C3C2C1C0和P7P6P5P4P3P2P1P0作异或运算,得到更新后的M7M6M5M4M3M2M1M0;采用更新后的M7M6M5M4M3M2M1M0和更新后的更新M7M6M5M4M3M2M1M0 采用更新后的M7M6M5M4M3M2M1M0 更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0,得到更新后的τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0
⑦将第14轮的G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0、P7P6P5P4P3P2P1P0和第14轮更新后的按照如下公式进行异或运算:
其中,符号为异或运算符号;符号“←”为赋值符号;
⑧将步骤⑦得到的作为BLAKE-32算法的输出数据,该输出数据即为待处理消息块的哈希值。
本实施例中,G函数压缩运算为现有的BLAKE-32算法中的常规运算。
本发明的BLAKE算法频率和吞吐率的测试结果如图4所示,分析图4可知:BLAKE算法的工作频率和吞吐率随着工作电压的升高而增加,在0.7到1.4V之间呈指数形式增长,在1.5V之后增长速度趋缓;在相同工作电压下,本发明的BLAKE算法的吞吐率均高于现有的BLAKE-512算法。
本发明的BLAKE算法与现有的BLAKE-32算法具有以下两点区别:一、本发明的BLAKE算法中采用预充电型PUF电路输出端输出的8位二进制数据P7P6P5P4P3P2P1P0与变量数C7C6C5C4C3C2C1C0进行异或运算,而现有的BLAKE-32算法中采用由盐值和计数器构成的8位二进制数据与变量数C7C6C5C4C3C2C1C0进行异或运算;二、本发明的BLAKE算法中,将G函数组完成14轮压缩运算后得到的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0、预充电型PUF电路的输出端输出的8位二进制数据P7P6P5P4P3P2P1P0和第14轮更新后的进行异或运算后得到待处理消息块的哈希值,而现有的BLAKE-32算法中直接将G函数组完成14轮压缩运算后得到的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0的低8位数据τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0作为待处理消息块的哈希值。
本发明的BLAKE算法中采用的预充电型PUF电路中,第一PMOS管P1、第四PMOS管P4和第五NMOS管M5作为预充电管,第二PMOS管P2、第三PMOS管P3、第二NMOS管M2和第三NMOS管M3构成交叉耦合反相器,预充电型PUF电路输出的8位二进制数据P7P6P5P4P3P2P1P0对应交叉耦合反相器随机阈值的工艺偏差。本发明的BLAKE算法利用预充电型PUF电路在制造过程的工艺偏差,使BLAKE算法具有良好的随机统计特性,应用于密码芯片时可使密码芯片具备硬件识别的功能,提高密码芯片的安全性。

Claims (1)

1.一种基于预充电型PUF电路的BLAKE算法,其特征在于包括以下步骤:
①将BLAKE-32算法中输入G函数组的16位二进制数据形式的输入数据记为τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0,将BLAKE-32算法中G函数组输出的16位二进制数据形式的输出数据记为τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0
②将BLAKE-32算法中8位二进制数据形式的变量数记为C7C6C5C4C3C2C1C0,将BLAKE-32算法中的8位二进制数据形式的输入链接值记为令C7C6C5C4C3C2C1C0的初始值为00000000,令的初始值为00000000;
③提取预充电型PUF电路的输出端输出的8位二进制数据,将该8位二进制数据记为P7P6P5P4P3P2P1P0,所述的预充电型PUF电路包括第一PMOS管、第二PMOS管、第三PMOS管、第四PMOS管、第一NMOS管、第二NMOS管、第三NMOS管、第四NMOS管和第五NMOS管,所述的第一PMOS管的源极、所述的第二PMOS管的源极、所述的第三PMOS管的源极和所述的第四PMOS管的源极均接入电源,所述的第一PMOS管的漏极、所述的第二PMOS管的漏极、所述的第三PMOS管的栅极、所述的第一NMOS管的漏极、所述的第二NMOS管的漏极和所述的第三NMOS管的栅极连接,所述的第三PMOS管的漏极、所述的第四PMOS管的漏极、所述的第二PMOS管的栅极、所述的第二NMOS管的栅极、所述的第三NMOS管的漏极和所述的第四NMOS管的漏极连接,所述的第二NMOS管的源极、所述的第三NMOS管的源极和所述的第五NMOS管的漏极连接,所述的第五NMOS管的源极接地,所述的第一PMOS管的栅极、所述的第四PMOS管的栅极和所述的第五NMOS管的栅极连接且其连接端为所述的预充电型PUF电路的复位端,所述的第一NMOS管的源极为所述的预充电型PUF电路的输出端,所述的第四NMOS管的源极为所述的预充电型PUF电路的互补输出端;所述的第一NMOS管的栅极和所述的第四NMOS管的栅极连接且其连接端为预充电型PUF电路的使能端;
④将C7C6C5C4C3C2C1C0和P7P6P5P4P3P2P1P0作异或运算,得到8位二进制数据记为M7M6M5M4M3M2M1M0;将M7M6M5M4M3M2M1M0作为高八位,作为低八位进行拼接,得到16位二进制数据M7M6M5M4M3M2M1M0
⑤将16位二进制数据M7M6M5M4M3M2M1M0 的值赋予τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0;将τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0和待处理消息块输入到BLAKE-32算法中的G函数组中进行第1轮G函数压缩运算,得到第1轮G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0
⑥更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0并采用更新后的τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0进行下一轮的G函数压缩运算,得到下一轮的G函数压缩运算的输出数据,直至完成14轮G函数压缩运算,得到第14轮的G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0;其中,更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0的具体过程为:采用前一轮G函数压缩运算输出数据的低八位数据τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0更新采用前一轮G函数压缩运算的C7C6C5C4C3C2C1C0的值加1后得到的和值更新C7C6C5C4C3C2C1C0;将更新后的C7C6C5C4C3C2C1C0和P7P6P5P4P3P2P1P0作异或运算,得到更新后的M7M6M5M4M3M2M1M0;采用更新后的M7M6M5M4M3M2M1M0和更新后的更新M7M6M5M4M3M2M1M0 采用更新后的M7M6M5M4M3M2M1M0 更新τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0,得到更新后的τ15τ14τ13τ12τ11τ10τ9τ8τ7τ6τ5τ4τ3τ2τ1τ0
⑦将第14轮的G函数压缩运算的输出数据τ'15τ'14τ'13τ'12τ'11τ'10τ'9τ'8τ'7τ'6τ'5τ'4τ'3τ'2τ'1τ'0、P7P6P5P4P3P2P1P0和第14轮更新后的按照如下公式进行异或运算:
其中,符号为异或运算符号;符号“←”为赋值符号;
⑧将步骤⑦得到的作为BLAKE-32算法的输出数据,该输出数据即为待处理消息块的哈希值。
CN201510500059.1A 2015-08-14 2015-08-14 基于预充电型puf电路的blake算法 Active CN105119595B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510500059.1A CN105119595B (zh) 2015-08-14 2015-08-14 基于预充电型puf电路的blake算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510500059.1A CN105119595B (zh) 2015-08-14 2015-08-14 基于预充电型puf电路的blake算法

Publications (2)

Publication Number Publication Date
CN105119595A CN105119595A (zh) 2015-12-02
CN105119595B true CN105119595B (zh) 2017-11-03

Family

ID=54667512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510500059.1A Active CN105119595B (zh) 2015-08-14 2015-08-14 基于预充电型puf电路的blake算法

Country Status (1)

Country Link
CN (1) CN105119595B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113268745B (zh) * 2021-04-12 2022-06-21 温州大学 基于Camellia加密算法的软PUF

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880840A (zh) * 2012-09-25 2013-01-16 宁波大学 一种用于防御攻击的电流型物理不可克隆函数电路
CN104318181A (zh) * 2014-09-22 2015-01-28 宁波大学 基于阈值偏差延迟的物理不可克隆函数电路
CN104579631A (zh) * 2014-12-15 2015-04-29 天津大学 基于锁存型电压灵敏放大器puf的aes密钥产生结构及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104025502B (zh) * 2011-12-22 2017-07-11 英特尔公司 用于处理blake安全散列算法的指令处理器、方法以及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880840A (zh) * 2012-09-25 2013-01-16 宁波大学 一种用于防御攻击的电流型物理不可克隆函数电路
CN104318181A (zh) * 2014-09-22 2015-01-28 宁波大学 基于阈值偏差延迟的物理不可克隆函数电路
CN104579631A (zh) * 2014-12-15 2015-04-29 天津大学 基于锁存型电压灵敏放大器puf的aes密钥产生结构及方法

Also Published As

Publication number Publication date
CN105119595A (zh) 2015-12-02

Similar Documents

Publication Publication Date Title
Zhang et al. A framework for the analysis and evaluation of algebraic fault attacks on lightweight block ciphers
CN106301759B (zh) 一种数据加密的方法、解密的方法及装置
CN108964872B (zh) 一种基于aes的加密方法及装置
CN105656619B (zh) 一种aes加密方法和基于其的抗功耗攻击方法
CN103634102A (zh) 一种侧信道攻击和故障攻击的防护方法
Dong et al. Cube-like attack on round-reduced initialization of Ketje Sr
CN107659398A (zh) 适用于Android的对称加密方法
CN104301095A (zh) Des轮运算方法和电路
CN104065473A (zh) Sm4分组密码算法s盒的紧凑实现方法
CN108923907A (zh) 一种基于模容错学习问题的同态內积方法
CN104410490B (zh) 非线性挤压保护密码s盒的方法
Huang et al. Chaotic image encryption algorithm based on circulant operation
Ge et al. Fast chaotic image encryption algorithm using a novel divide and conquer diffusion strategy
CN108650072B (zh) 一种支持多种对称密码算法的芯片的抗攻击电路实现方法
CN105119595B (zh) 基于预充电型puf电路的blake算法
CN104618098B (zh) 一种集合成员关系判定的密码学构造方法及系统
Rajput et al. VLSI implementation of lightweight cryptography technique for FPGA-IOT application
CN104579693B (zh) 基于高次二阶logistic映射的嵌入式加密方法及装置
CN103546277B (zh) 一种智能卡sm4算法的dpa攻击与密钥还原方法及系统
CN103401684B (zh) 一种多参数三维数字加密方法
CN103716162A (zh) 一种在标准模型下安全的基于身份广义签密方法
CN105553644A (zh) 32比特分组长度的轻量级加密解密方法
CN105208038A (zh) 一种加密方法及装置
CN104683095A (zh) 一种des加密方法和装置
Huang et al. A Formal Verification Based on Yu-Cao Delayed Chaotic Neural Network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant