ISO/IEC 29192-2:2012
Information technology -- Security techniques -- Lightweight cryptography -- Part 2: Block ciphers
发布时间:2012-01-10 实施时间:


随着物联网、移动设备等技术的发展,越来越多的设备和应用场景需要使用轻量级密码学算法来保护数据的安全性。轻量级密码学算法是指在资源受限的设备上能够高效、安全地运行的密码学算法。ISO/IEC 29192-2:2012是一项轻量级密码学标准,主要针对资源受限的设备和应用场景,提供高效、安全的分组密码算法。

该标准定义了两种分组密码算法:PRESENT和SKINNY。PRESENT是一种基于SPN结构的分组密码算法,具有高效、安全、简单等特点。PRESENT的分组长度为64位,密钥长度为80位,加密轮数为31轮。PRESENT的加密过程包括四个步骤:Substitution、Permutation、Key Addition和Round Key Generation。其中,Substitution和Permutation是SPN结构的基本操作,Key Addition是密钥加操作,Round Key Generation是轮密钥生成操作。PRESENT的加密过程可以用以下公式表示:

C = PRESENT(K, P) = (P ⊕ K0) ⊕ (K1 ⊕ S31(K2 ⊕ (P ⊕ K3)))

其中,K0、K1、K2、K3是密钥的四个部分,S31是PRESENT的S盒,P是明文,C是密文。

SKINNY是一种基于SPN结构的分组密码算法,具有高效、安全、抗侧信道攻击等特点。SKINNY的分组长度为64位,密钥长度为128位,加密轮数为40轮。SKINNY的加密过程包括四个步骤:Substitution、Permutation、Key Addition和Round Key Generation。其中,Substitution和Permutation是SPN结构的基本操作,Key Addition是密钥加操作,Round Key Generation是轮密钥生成操作。SKINNY的加密过程可以用以下公式表示:

C = SKINNY(K, P) = (P ⊕ K0) ⊕ (K1 ⊕ S40(K2 ⊕ (P ⊕ K3)))

其中,K0、K1、K2、K3是密钥的四个部分,S40是SKINNY的S盒,P是明文,C是密文。

ISO/IEC 29192-2:2012还定义了两种分组密码算法的加密模式:ECB和CTR。ECB是一种基本的分组密码加密模式,将明文分成若干个分组,每个分组独立加密。CTR是一种分组密码加密模式,将明文分成若干个分组,每个分组与一个计数器进行异或运算,然后再加密。

ISO/IEC 29192-2:2012的轻量级密码学算法具有高效、安全、简单、抗侧信道攻击等特点,适用于资源受限的设备和应用场景。该标准的应用范围包括智能卡、传感器网络、RFID、移动设备等。

相关标准
- ISO/IEC 29192-1:2012 Information technology -- Security techniques -- Lightweight cryptography -- Part 1: General
- ISO/IEC 18033-3:2010 Information technology -- Security techniques -- Encryption algorithms -- Part 3: Block ciphers
- ISO/IEC 19772:2009 Information technology -- Security techniques -- Key management -- Part 1: General
- ISO/IEC 9797-1:2011 Information technology -- Security techniques -- Message Authentication Codes (MACs) -- Part 1: Mechanisms using a block cipher
- ISO/IEC 23001-7:2016 Information technology -- MPEG systems technologies -- Part 7: Common encryption in ISO base media file format files