SMBA 分组密码算法
SMBA算法是一个安全性高、实用性强、创新设计的分组密码算法. SMBA算法支持三种版本, 当分组长度为128比特时, 密钥长度支持128比特和256比特, 当分组长度为256比特时, 密钥长度支持256比特. SMBA算法采用经典的Feistel结构, 加解密过程一致, 轮函数采用SP结构, 密钥扩展算法使用广义Feistel结构. 算法创新设计了非线性部件S0和S1, 以及线性部件L64, 均具有良好的密码学性质. S0和S1均由代数构造生成, 具有较优的差分概率、线性概率和代数次数, 且乘法复杂度低, 侧信道防护代价小. L64由简单线性变换组合构成, 具有较高的差分和线性分支数, 关键...
Saved in:
| Published in | Journal of Cryptologic Research Vol. 6; no. 6; p. 786 |
|---|---|
| Main Authors | , , , , , |
| Format | Journal Article |
| Language | Chinese |
| Published |
Beijing
Chinese Association for Cryptologic Research, Journal of Cryptologic Research
25.12.2019
|
| Subjects | |
| Online Access | Get full text |
| ISSN | 2097-4116 |
| DOI | 10.13868/j.cnki.jcr.000341 |
Cover
| Summary: | SMBA算法是一个安全性高、实用性强、创新设计的分组密码算法. SMBA算法支持三种版本, 当分组长度为128比特时, 密钥长度支持128比特和256比特, 当分组长度为256比特时, 密钥长度支持256比特. SMBA算法采用经典的Feistel结构, 加解密过程一致, 轮函数采用SP结构, 密钥扩展算法使用广义Feistel结构. 算法创新设计了非线性部件S0和S1, 以及线性部件L64, 均具有良好的密码学性质. S0和S1均由代数构造生成, 具有较优的差分概率、线性概率和代数次数, 且乘法复杂度低, 侧信道防护代价小. L64由简单线性变换组合构成, 具有较高的差分和线性分支数, 关键路径短, 延时低. SMBA算法在不同版本中共用主要部件S0、S1和L64, 扩展自然. SMBA 算法的安全界清晰, 可以有效评估抵抗差分攻击、线性攻击、积分攻击等已知攻击的强度, 有较大的安全冗余. 算法的基本运算为查表、循环移位以及异或等逻辑运算, 易于软件和硬件实现. 算法实现方式灵活, 软硬件速度快, 可适用于多种平台(如8/32/64位平台). |
|---|---|
| Bibliography: | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
| ISSN: | 2097-4116 |
| DOI: | 10.13868/j.cnki.jcr.000341 |