CN115037485B - 轻量级认证加密算法的实现方法、装置及设备 - Google Patents

轻量级认证加密算法的实现方法、装置及设备 Download PDF

Info

Publication number
CN115037485B
CN115037485B CN202210968570.4A CN202210968570A CN115037485B CN 115037485 B CN115037485 B CN 115037485B CN 202210968570 A CN202210968570 A CN 202210968570A CN 115037485 B CN115037485 B CN 115037485B
Authority
CN
China
Prior art keywords
box
encryption algorithm
expression
normal form
lightweight
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
CN202210968570.4A
Other languages
English (en)
Other versions
CN115037485A (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.)
State Grid Corp of China SGCC
Beijing Smartchip Microelectronics Technology Co Ltd
Beijing Smartchip Semiconductor Technology Co Ltd
Original Assignee
State Grid Corp of China SGCC
Beijing Smartchip Microelectronics Technology Co Ltd
Beijing Smartchip Semiconductor Technology Co Ltd
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 State Grid Corp of China SGCC, Beijing Smartchip Microelectronics Technology Co Ltd, Beijing Smartchip Semiconductor Technology Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN202210968570.4A priority Critical patent/CN115037485B/zh
Publication of CN115037485A publication Critical patent/CN115037485A/zh
Application granted granted Critical
Publication of CN115037485B publication Critical patent/CN115037485B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures

Abstract

本发明涉及信息安全领域,其实施方式提供了一种轻量级认证加密算法的实现方法、装置及设备。其中,一种轻量级认证加密算法的实现方法,所述轻量级认证加密算法包括S盒置换层和线性置换层,所述方法包括:获取所述S盒置换层中的S盒查找表和/或线性置换层中的异或运算;将获取的S盒查找表和/或异或运算转化为析取范式的形式;通过将所述析取范式中的逻辑运算映射为对应的逻辑器件,得到对应的逻辑电路。本发明提供的实施方式能够提升轻量级认证加密算法的执行效率,并易于专用集成电路的实现。

Description

轻量级认证加密算法的实现方法、装置及设备
技术领域
本发明涉及信息安全领域,具体地涉及一种轻量级认证加密算法的实现方法、一种轻量级认证加密算法的实现装置、一种轻量级认证加密算法的实现设备以及一种计算机可读存储介质。
背景技术
轻量级认证加密算法是融合了认证功能和加密功能,其算法中包括了S盒置换层和线性置换层。在S盒置换层和线性置换层中的部分运算,在采用硬件实现时,需要的电子元件较多,对电路面积和运行功率提出了较高的要求。且在硬件实现过程中,在设计过程对硬件的选择和排布所需的工作量较大。
发明内容
本发明实施例的目的是提供一种轻量级认证加密算法的实现方法、装置及设备,设计了优化加密认证算法的硬件实现方案,摒弃了传统的查找表实现S盒的方案,并且基于优化逻辑门的方法实现线性置换层。本发明提供的实施方式能够节省元器件,降低面积的同时也提高了效率,易于verilogHDL语言描述,为专用集成电路的实现提供了高速有效的手段。
为了实现上述目的,本发明的第一方面提供了轻量级认证加密算法的实现方法,所述轻量级认证加密算法包括S盒置换层和线性置换层,其特征在于,所述方法包括:获取所述S盒置换层中的S盒查找表和/或线性置换层中的异或运算;将获取的S盒查找表和/或异或运算转化为析取范式的形式;通过将所述析取范式中的逻辑运算映射为对应的逻辑器件,得到对应的逻辑电路。
优选的,将所述S盒置换层中的S盒查找表转化为析取范式的形式,包括:构建S盒查找表的输入值与输出值之间的表达式,所述表达式包括布尔运算符、所述输入值和所述输出值;对所述表达式中的相同项进行优化,得到不存在相同项的表达式,作为析取范式。
优选的,所述构建S盒查找表的输入值与输出值之间的表达式中的表达式为合取范式。
优选的,将所述线性置换层中的异或运算转化为析取范式的形式,包括:获取采用循环移位和异或运算所表达的线性置换层的输入值与输出值之间的表达式;将所述表达式中的异或运算转化为析取范式的形式。
优选的,所述S盒置换层和线性置换层存在于所述轻量级认证加密算法的以下阶段:初始化阶段、相关数据处理阶段、明文处理阶段和生成认证数据阶段;所述初始化阶段包括采用密钥和随机数对寄存器中的状态数据进行初始化;所述相关数据处理阶段包括采用关联数据对所述状态数据进行更新;所述明文处理阶段包括将待加密明文注入更新后的状态数据中以得到对应密文;所述生成认证数据阶段包括生成认证标签进行身份认证。
优选的,所述轻量级认证加密算法采用多个寄存器存储状态;所述多个寄存器在每个周期内进行两轮更新。
优选的,所述多个寄存器中的一个寄存器根据特定的轮常数进行更新。
优选的,所述逻辑器件所构成的逻辑电路集成于芯片中。
在本发明的第二方面,还提供了一种轻量级认证加密算法的实现装置,所述轻量级认证加密算法所述轻量级认证加密算法包括S盒置换层和线性置换层,所述装置包括:目标获取模块,用于获取所述S盒置换层中的S盒查找表和/或线性置换层中的异或运算;析取范式模块,用于将获取的S盒查找表和/或异或运算转化为析取范式的形式;器件映射模块,用于通过将所述析取范式中的逻辑运算映射为对应的逻辑器件,得到对应的逻辑电路;以及算法实现模块,用于采用所述逻辑电路执行所述轻量级认证加密算法。
优选的,将所述S盒置换层中的S盒查找表转化为析取范式的形式,包括:构建S盒查找表的输入值与输出值之间的表达式,所述表达式包括布尔运算符、所述输入值和所述输出值;对所述表达式中的相同项进行优化,得到不存在相同项的表达式,作为析取范式。
优选的,所述构建S盒查找表的输入值与输出值之间的表达式中的表达式为合取范式。
优选的,将所述线性置换层中的异或运算转化为析取范式的形式,包括:获取采用循环移位和异或运算所表达的线性置换层的输入值与输出值之间的表达式;将所述表达式中的异或运算转化为析取范式的形式。
优选的,所述S盒置换层和线性置换层存在于所述轻量级认证加密算法的以下阶段:初始化阶段、相关数据处理阶段、明文处理阶段和生成认证数据阶段。
优选的,所述轻量级认证加密算法采用多个寄存器存储状态;所述多个寄存器在每个周期内进行两轮更新。
优选的,所述多个寄存器中的一个寄存器根据特定的轮常数进行更新。
优选的,所述逻辑器件所构成的逻辑电路集成于芯片中。
在本发明的第三方面,还提供了一种轻量级认证加密算法的实现设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述的轻量级认证加密算法的实现方法的步骤。
在本发明的第四方面,还提供了一种计算机可读存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行前述的轻量级认证加密算法的实现方法的步骤。
本发明的第五方面提供一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现前述的轻量级认证加密算法的实现方法。
上述技术方案至少具有以下有益效果:
采用析取范式进行轻量级认证加密算法中S盒置换层和线性置换层进行优化,从而降低硬件实现时的逻辑门数,从而达到提高电路芯片高吞吐率,降低逻辑延迟的效果;进而节省电路元器件,降低电路面积的同时也提高了效率。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1示意性示出了根据本发明实施方式的轻量级认证加密算法的实现方法的实施示意图;
图2示意性示出了根据本发明实施方式的ASCON算法的结构示意图;
图3示意性示出了根据本发明实施方式的S盒置换层的ASIC实现示意图;
图4示意性示出了根据本发明实施方式轻量级认证加密算法的实现装置的结构示意图。
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
图1示意性示出了根据本发明实施方式的轻量级认证加密算法的实现方法的实施示意图。如图1所示,本实施方式提供的一种轻量级认证加密算法的实现方法,所述轻量级认证加密算法包括:S盒置换层和线性置换层,所述方法包括:
S01、获取所述S盒置换层中的S盒查找表和/或线性置换层中的异或运算。在密码学中,S盒(Substitution-box)是对称密钥算法执行置换计算的基本结构。S盒用在分组密码算法中,是唯一的非线性结构,其S盒的指标的好坏直接决定了密码算法的好坏。同样,线性置换层对密码算法的好坏也有重要影响。本实施方式的优化目标为S盒置换层和/或线性置换层,因此需要对其进行获取。
S02、将获取的S盒查找表和/或异或运算转化为析取范式的形式;S盒的功能就是一种简单的“代替”操作。例如,ASCON算法的S盒置换层是采用的5比特的输入输出的置换表,但是其现在的变换方式并不利于逻辑器件在功能上的实现。因此,本实施方式将其S盒查找表转化成析取范式的形式,析取范式是由有限个简单合取式构成的析取式。析取范式是采用布尔运算符将布尔变量链接起来的表达式。其中布尔运算符只包含与或非门,如(a)+(a&c`) +(b&c),其中“+”表示或门,“&”表示与门,“'”表示非门。以此使得S盒查找表的计算步骤由基本逻辑运算构成,再根据基本逻辑运算与逻辑门电路的对应关系,从而便于S盒查找表在逻辑电路上的实现。
基于同样的技术构思,将所述线性置换层中的异或运算转化为析取范式的形式,以实现与前述相同的技术效果。以上析取范式转化中的两个目标包括S盒置换层和线性置换层,可以选择其中一个进行实施,也可以在两个目标中均实施。
S03、通过将所述析取范式中的逻辑运算映射为对应的逻辑器件,得到对应的逻辑电路。将所述析取范式中的逻辑运算映射为对应的逻辑器件。通过前一步骤的转换,轻量级认证加密算法中的复杂逻辑被转换为逻辑运算的组合,逻辑运算中的与、或、非、异或等更便于映射为对应的逻辑器件。将以上映射得到的逻辑器件相连,得到对应的逻辑电路。在轻量级认证加密算法的硬件实现中,采用硬件实现具有处理速度快的优点,本实施方式能够便于逻辑电路的设计。
通过以上实施方式,能够采用最少逻辑门数优化ASCON算法的S盒置换层和线性置换层,提升逻辑电路的实现效率。
在本发明的一些实施方式中,将所述S盒置换层中的S盒查找表转化为析取范式的形式,包括:构建S盒查找表的输入值与输出值之间的表达式,所述表达式包括布尔运算符、所述输入值和所述输出值。
为了便于描述S盒查找表,采用布尔变量A、B、C、D、E表示S盒的5比特输入,布尔变量F0、F1、F2、F3、F4表示S盒的5比特输出。则S盒的表达式如下所示,该表达式优选为合取范式。
F0 = A' B' C' D E' + A' B' C' D E + A' B' C D' E' + A' B' C D' E + A'B C' D' E' + A' B C' D E + A' B C D' E' + A' B C D E;
F1 = A' B' C' D' E + A' B' C' D E' + A' B' C D' E' + A' B' C D E' +A' B C' D' E' + A' B C' D E' + A' B C D' E' + A' B C D E;
F2 = A' B' C' D' E' + A' B' C' D E' + A' B' C' D E + A' B' C D' E +A' B C' D' E + A' B C D' E' + A' B C D E' + A' B C D E;
F3 = A' B' C' D' E + A' B' C' D E' + A' B' C D' E' + A' B' C D E + A'B C' D' E' + A' B C' D E + A' B C D' E + A' B C D E';
F4 = A' B' C' D' E + A' B' C' D E' + A' B' C D' E + A' B' C D E' + A'B C' D' E' + A' B C' D' E + A' B C D' E' + A' B C D' E;
每个比特输出的析取范式都有相同的项,对上述表达式中的相同项进行优化,得到不存在相同项的表达式,作为S盒查找表对应的析取范式,从而达到减少门数的效果。得到的析取范式如下:
x1=X17&E';X9=A'&B;
x2=X16&D';X10=D&E;
x3=X7&D;X11=D&E';
x4=X7&X12;X12=D'&E;
x5=X9&C&D;X13=X9&C;
x6=X9&C'&D';x14=X9&X10;
X7=X8&C';x15=X3&E';
X8=A'&B';x16=X8&C;
x17=X9&D';
F0 = x1 +x2 +x3+X14;
F1 = x1 +A'&C'&X11 +X16&E' +x4 +x5&E;
F2 = X7&E' +X15 +x6&E+x2&E +x3+x5;
F3 = X6&E' +x2&E' +x15 + x5&E' +x4 +X3&X12 +X14&C'+X16&X10;
F4 = X8&X11 +X17+ A'&X12;
通过以上步骤,能够实现S盒置换层与析取范式之间的转化,根据转化得到的析取范式,能够与逻辑器件更好地对应。
在本发明的一些实施方式中,将所述线性置换层中的异或运算转化为析取范式的形式,包括:获取采用循环移位和异或运算所表达的线性置换层的输入值与输出值之间的表达式;线性置换层采用循环移位和异或运算,均采用x^(x>>>n)^(x>>>n1)的形式。5个64比特的线性置换层如下:
Figure 526558DEST_PATH_IMAGE001
其中:A0、B1、C2、D3、E4分别表示5个64比特输入,F0、F1、F2、F3、F4分别表示5个64比特输出。
将上述表达式中的异或运算转化为析取范式,包括:把异或运算优化成析取范式的形式,用来降低电路延迟和电路面积。转化后的结果如下:
F0=A0 (A0>>>10)' (A0>>>28)' +A0' (A0>>>10) (A0>>>28)' + A0' (A0>>>10)' c + A0 (A0>>>10) (A0>>>28);
F1=B1 (B1>>>61)' (B1>>>28)' + B1' (B1>>>61) (B1>>>28)' + B1' (B1>>>61)' (B1>>>28) + B1 (B1>>>61) (B1>>>28);
F2=C1 (C1>>>1)' (C1>>>6)' + C1' (C1>>>1) (C1>>>6)' + C1' (C1>>>1)'(C1>>>6) + C1 (C1>>>1) (C1>>>6);
F3=D10 (D10>>>10)' (D10>>>17)' + D10' (D10>>>10) (D10>>>17)' + D10'(D10>>>10)' (D10>>>17) + D10 (D10>>>10) (D10>>>17);
F4=E7 (E7>>>7)' (E7>>>41)' + E7' (E7>>>7) (E7>>>41)' + E7' (E7>>>7)'(E7>>>41) + E7 (E7>>>7) (E7>>>41);
以下以轻量级认证加密算法为ASCON算法为例,实施本申请中的方法进行说明如下:
图2示意性示出了根据本发明实施方式的ASCON算法的结构示意图,如图2所示,ASCON算法的认证加密过程分为以下4阶段:初始化阶段、相关数据处理阶段、明文处理阶段以及生成认证数据阶段。所述初始化阶段包括采用密钥和随机数对寄存器中的状态数据进行初始化;所述相关数据处理阶段包括采用关联数据对所述状态数据进行更新;所述明文处理阶段包括将待加密明文注入更新后的状态数据中以得到对应密文;所述生成认证数据阶段包括生成认证标签进行身份认证。每个阶段都是由基本的轮函数p构成,轮函数p包含异或轮常数,以及前述的S盒置换层和线性置换层三个部分。本实施方式基于S盒和线性层的优化设计了一种每个周期实现2轮的轮函数的方案,从而提高ASCON算法认证和加密效率。
其中,ASCON算法的S盒置换层是采用的5比特的输入输出的置换表。本发明把S盒查找表转化成析取范式,然后优化相同子句,最后得到最少门数的S盒表达式。以及,ASCON算法的线性置换层是通过不同的循环移位和异或运算实现320比特的状态比特的扩散功能。本步骤把线性置换的异或转化为析取范式。
通过以上实施方式,能够达到便于硬件实现的技术效果,特别是ASIC实现。
在本发明的一些实施方式中,所述轻量级认证加密算法采用多个寄存器存储状态;所述多个寄存器在每个周期内进行两轮更新。例如,设置5个64比特的寄存器,存储ASCON算法的320比特状态。该5个寄存器的更新频率相同,但更新方式可以不同,例如:采用128bit的密钥初始化64bit的寄存器S1H和S2,采用128bit的随机数初始化64bit的寄存器S3和S4。
在本发明的一些实施方式中,所述多个寄存器中的一个寄存器根据特定的轮常数进行更新。例如,寄存器S0可以采用以下方式进行更新:采用密钥长度128bit、分组长度64bit、轮常数12和轮常数6进行初始化。
在本发明的一些实施方式中,所述逻辑器件所构成的逻辑电路集成于芯片中。以上方法优选采用专用集成电路(ASIC)进行实现。ASIC(Application Specific IntegratedCircuit)即专用集成电路,是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。用复杂可编程逻辑器件(CPLD)和现场可编程逻辑门阵列(FPGA)来进行ASIC设计是最为流行的方式之一。图3示意性示出了根据本发明实施方式的S盒置换层的ASIC实现示意图。如图3所示,其示出了由多种逻辑门所构成的逻辑电路,该电路包括多个输入端与输出端,其中的逻辑门均由析取范式中的逻辑运算对应后得到。可见其易于verilogHDL语言描述,是一种高速有效的ASIC实现方法。
基于同一发明构思,本发明还提供了一种轻量级认证加密算法的实现装置。图4示意性示出了根据本发明实施方式轻量级认证加密算法的实现装置的结构示意图,如图4所示。所述轻量级认证加密算法所述轻量级认证加密算法包括S盒置换层和线性置换层,所述装置包括:目标获取模块,用于获取所述S盒置换层中的S盒查找表和/或线性置换层中的异或运算;析取范式模块,用于将获取的S盒查找表和/或异或运算转化为析取范式的形式;器件映射模块,用于通过将所述析取范式中的逻辑运算映射为对应的逻辑器件,得到对应的逻辑电路;以及算法实现模块,用于采用所述逻辑电路实现所述轻量级认证加密算法中的S盒查找表和/或异或运算。
在一些可选实施方式中,将所述S盒置换层中的S盒查找表转化为析取范式的形式,包括:构建S盒查找表的输入值与输出值之间的表达式,所述表达式包括布尔运算符、所述输入值和所述输出值;对所述表达式中的相同项进行优化,得到不存在相同项的表达式,作为析取范式。
在一些可选实施方式中,所述构建S盒查找表的输入值与输出值之间的表达式中的表达式为合取范式。
在一些可选实施方式中,将所述线性置换层中的异或运算转化为析取范式的形式,包括:获取采用循环移位和异或运算所表达的线性置换层的输入值与输出值之间的表达式;将所述表达式中的异或运算转化为析取范式的形式。
在一些可选实施方式中,所述轻量级认证加密算法采用多个寄存器存储状态;所述多个寄存器在每个周期内进行两轮更新。
在一些可选实施方式中,所述S盒置换层和线性置换层存在于所述轻量级认证加密算法的以下阶段:初始化阶段、相关数据处理阶段、明文处理阶段和生成认证数据阶段;所述初始化阶段包括采用密钥和随机数对寄存器中的状态数据进行初始化;所述相关数据处理阶段包括采用关联数据对所述状态数据进行更新;所述明文处理阶段包括将待加密明文注入更新后的状态数据中以得到对应密文;所述生成认证数据阶段包括生成认证标签进行身份认证。
在一些可选实施方式中,所述多个寄存器中的一个寄存器根据特定的轮常数进行更新。
在一些可选实施方式中,所述逻辑器件所构成的逻辑电路集成于芯片中。
上述的轻量级认证加密算法的实现装置中的各个功能模块的具体限定可以参见上文中对于轻量级认证加密算法的实现方法的限定,在此不再赘述。上述装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在本发明提供的一些实施方式中,还提供了一种轻量级认证加密算法的实现设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述的轻量级认证加密算法的实现方法的步骤。此处的处理器具有数值计算和逻辑运算的功能,其至少具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统等。处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现前述的方法。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
在本发明的一种实施方式中,还提供了一种计算机可读存储介质,所述存储介质中存储有指令,当其在计算机上运行时,该指令在被处理器执行时使得处理器被配置成执行上述的轻量级认证加密算法的实现方法。
在本发明提供的一种实施方式中,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现上述的轻量级认证加密算法的实现方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (12)

1.一种轻量级认证加密算法的实现方法,所述轻量级认证加密算法包括S盒置换层和线性置换层,其特征在于,所述方法包括:
获取所述S盒置换层中的S盒查找表和/或线性置换层中的异或运算;
将获取的S盒查找表和/或异或运算转化为析取范式的形式;
其中,将获取的S盒查找表转化为析取范式的形式,包括:构建S盒查找表的输入值与输出值之间的表达式,所述表达式包括布尔运算符、所述输入值和所述输出值;对所述表达式中的相同项进行优化,得到不存在相同项的表达式,作为析取范式;
将获取的异或运算转化为析取范式的形式,包括:获取采用循环移位和异或运算所表达的线性置换层的输入值与输出值之间的表达式;将所述表达式中的异或运算转化为析取范式的形式;
通过将所述析取范式中的逻辑运算映射为对应的逻辑器件,得到对应的逻辑电路。
2.根据权利要求1所述的方法,其特征在于,所述轻量级认证加密算法采用多个寄存器存储状态;
所述多个寄存器在每个周期内进行两轮更新。
3.根据权利要求1所述的方法,其特征在于,所述S盒置换层和线性置换层存在于所述轻量级认证加密算法的以下阶段:初始化阶段、相关数据处理阶段、明文处理阶段和生成认证数据阶段;
所述初始化阶段包括采用密钥和随机数对寄存器中的状态数据进行初始化;
所述相关数据处理阶段包括采用关联数据对所述状态数据进行更新;
所述明文处理阶段包括将待加密明文注入更新后的状态数据中以得到对应密文;
所述生成认证数据阶段包括生成认证标签进行身份认证。
4.根据权利要求2所述的方法,其特征在于,所述多个寄存器中的一个寄存器根据特定的轮常数进行更新。
5.根据权利要求1所述的方法,其特征在于,所述逻辑器件所构成的逻辑电路集成于芯片中。
6.一种轻量级认证加密算法的实现装置,所述轻量级认证加密算法包括S盒置换层和线性置换层,其特征在于,所述装置包括:
目标获取模块,用于获取所述S盒置换层中的S盒查找表和/或线性置换层中的异或运算;
析取范式模块,用于将获取的S盒查找表和/或异或运算转化为析取范式的形式;其中,将获取的S盒查找表转化为析取范式的形式,包括:构建S盒查找表的输入值与输出值之间的表达式,所述表达式包括布尔运算符、所述输入值和所述输出值;对所述表达式中的相同项进行优化,得到不存在相同项的表达式,作为析取范式;
将获取的异或运算转化为析取范式的形式,包括:获取采用循环移位和异或运算所表达的线性置换层的输入值与输出值之间的表达式;将所述表达式中的异或运算转化为析取范式的形式;以及
器件映射模块,用于通过将所述析取范式中的逻辑运算映射为对应的逻辑器件,得到对应的逻辑电路。
7.根据权利要求6所述的装置,其特征在于,所述轻量级认证加密算法采用多个寄存器存储状态;
所述多个寄存器在每个周期内进行两轮更新。
8.根据权利要求6所述的装置,其特征在于,所述S盒置换层和线性置换层存在于所述轻量级认证加密算法的以下阶段:初始化阶段、相关数据处理阶段、明文处理阶段和生成认证数据阶段;
所述初始化阶段包括采用密钥和随机数对寄存器中的状态数据进行初始化;
所述相关数据处理阶段包括采用关联数据对所述状态数据进行更新;
所述明文处理阶段包括将待加密明文注入更新后的状态数据中以得到对应密文;
所述生成认证数据阶段包括生成认证标签进行身份认证。
9.根据权利要求7所述的装置,其特征在于,所述多个寄存器中的一个寄存器根据特定的轮常数进行更新。
10.根据权利要求6所述的装置,其特征在于,所述逻辑器件所构成的逻辑电路集成于芯片中。
11.一种轻量级认证加密算法的实现设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项权利要求所述的轻量级认证加密算法的实现方法的步骤。
12.一种计算机可读存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行权利要求1至5中任一项权利要求所述的轻量级认证加密算法的实现方法的步骤。
CN202210968570.4A 2022-08-12 2022-08-12 轻量级认证加密算法的实现方法、装置及设备 Active CN115037485B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210968570.4A CN115037485B (zh) 2022-08-12 2022-08-12 轻量级认证加密算法的实现方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210968570.4A CN115037485B (zh) 2022-08-12 2022-08-12 轻量级认证加密算法的实现方法、装置及设备

Publications (2)

Publication Number Publication Date
CN115037485A CN115037485A (zh) 2022-09-09
CN115037485B true CN115037485B (zh) 2022-11-08

Family

ID=83130160

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210968570.4A Active CN115037485B (zh) 2022-08-12 2022-08-12 轻量级认证加密算法的实现方法、装置及设备

Country Status (1)

Country Link
CN (1) CN115037485B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105426349A (zh) * 2015-11-03 2016-03-23 北京锐安科技有限公司 一种逻辑表达式的传输交换方法及装置
CN112398639A (zh) * 2020-11-04 2021-02-23 山东大学 一种Fountain轻量级加密算法的实现装置、方法及应用
CN112613080A (zh) * 2020-12-16 2021-04-06 哈尔滨理工大学 一种面向轻量级分组密码算法的可重构阵列单元及阵列

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150222421A1 (en) * 2014-02-03 2015-08-06 Qualcomm Incorporated Countermeasures against side-channel attacks on cryptographic algorithms
CN112636899B (zh) * 2020-09-21 2022-03-18 中国电子科技集团公司第三十研究所 一种轻量化s盒设计方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105426349A (zh) * 2015-11-03 2016-03-23 北京锐安科技有限公司 一种逻辑表达式的传输交换方法及装置
CN112398639A (zh) * 2020-11-04 2021-02-23 山东大学 一种Fountain轻量级加密算法的实现装置、方法及应用
CN112613080A (zh) * 2020-12-16 2021-04-06 哈尔滨理工大学 一种面向轻量级分组密码算法的可重构阵列单元及阵列

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于轻量级分组密码算法的SoC安全存储器设计;刘伟等;《电子科技》;20220607;第36卷(第9期);全文 *

Also Published As

Publication number Publication date
CN115037485A (zh) 2022-09-09

Similar Documents

Publication Publication Date Title
US11121856B2 (en) Unified AES-SMS4—Camellia symmetric key block cipher acceleration
US20160269175A1 (en) Cryptographic cipher with finite subfield lookup tables for use in masked operations
US10205589B2 (en) Encryption processing device and encryption processing method
US20220108039A1 (en) Post quantum public key signature operation for reconfigurable circuit devices
CN112398639B (zh) 一种Fountain轻量级加密算法的实现装置、方法及应用
CN112200713B (zh) 一种联邦学习中的业务数据处理方法、装置以及设备
Shahbazi et al. Design and implementation of an ASIP-based cryptography processor for AES, IDEA, and MD5
CN116366248B (zh) 基于紧凑指令集扩展的Kyber实现方法及系统
JP2015191107A (ja) 暗号処理装置、および暗号処理方法、並びにプログラム
CN104219045A (zh) Rc4 流密码生成器
CN115037485B (zh) 轻量级认证加密算法的实现方法、装置及设备
CN112564890A (zh) 一种加速sm4算法的方法、装置、处理器及电子设备
CN114826560B (zh) 一种轻量级分组密码cref实现方法及系统
CN103873229A (zh) KLEIN加密AVR环境下抗timing和cache边信道攻击的快速保护方法
WO2016059870A1 (ja) 暗号処理装置、および暗号処理方法、並びにプログラム
Khairallah et al. Romulus: Lighweight aead from tweakable block ciphers
CN114371828A (zh) 多项式乘法器及具有该乘法器的处理器
CN114124359A (zh) 保留格式加密数据的方法、装置、电子设备及存储介质
CN114615069A (zh) 一种Quartet轻量级加密算法的实现装置及方法
CN107437990A (zh) 加密方法、解密方法、加密装置和解密装置
CN110071927B (zh) 一种信息加密方法、系统及相关组件
JP2002287635A (ja) Sha演算の高速演算回路
CN104683096B (zh) 动态s盒变换方法及系统
KR102282363B1 (ko) 비트 시리얼 hight 연산 장치 및 그 방법, 그 방법을 프로세서가 수행하도록 하기 위한 명령어를 포함하는 컴퓨터 판독 가능한 기록매체 및 컴퓨터 프로그램
Polani et al. Low power and area efficient AES implementation using ROM based key expansion and rotational shift

Legal Events

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