Page 373 - 《软件学报》2025年第5期
P. 373

李玮 等: 基于代数关系的轻量级密码          DEFAULT  统计故障分析                                     2273


                    本文针对    DEFAULT  密码的内部结构, 将代数关系和统计故障分析相结合, 提出了基于代数关系的新型统计
                 故障分析方法, 将故障注入位置扩展至更深的轮数, 并且实现了唯密文基本假设下的密钥破解. 同时, 本文提出基
                 于  AD  检验的新型区分器设计, 在成功率、故障数和耗时等方面优于经典区分器, 表                      2  以  AES  密码、Piccolo  密码
                 以及  DEFAULT  密码的密钥恢复为例, 总结了各区分器破译密码的结果对比.

                                   表 2 针对   AES、Piccolo  和  DEFAULT  的统计故障分析结果比较

                                   AES [18]                  Piccolo [19]              DEFAULT
                  区分器
                        故障注入轮 故障数 (个) 成功率 (%) 故障注入轮 故障数 (个) 成功率 (%) 故障注入轮 故障数 (个) 成功率 (%)
                   SEI   倒数第1轮      320      99     倒数第2轮       ∞       28     倒数第3轮       ∞        6
                   MLE   倒数第1轮      224      99     倒数第2轮      313      99     倒数第3轮      2 080    84
                   HW    倒数第1轮      288      99     倒数第2轮      364      99     倒数第3轮      1 472    99
                  AD-SEI    -        -       -         -        -       -      倒数第3轮      2 048    99
                 AD-MLE     -        -       -         -        -       -      倒数第3轮      1 408    99
                  AD-HW     -        -       -         -        -       -      倒数第3轮      1 344    99

                 2   DEFAULT  密码简介

                 2.1   符号说明
                      Z  为 e  e 比特的二进制向量集合.
                    记   2
                                     4 32
                           4 32
                    记  X ∈ (Z )   和  Y ∈ (Z )   分别为  128  比特的明文和密文.
                           2         2
                                      4 32
                           4 32
                    记  K ∈ (Z )   和  RK r ∈ (Z )   分别为  128  比特的原始密钥和第  r+1  轮密钥, 其中  r ∈ [0,79] .
                           2
                                      2
                            SC L  分别为内外核轮的    S                                            AK  分别为比特置
                    记  SC C  和                 盒替换,   AC C  和  AC L  分别为内外核轮的轮常数加,    PB 和
                 换和轮密钥加. 记     SC C −1   、  SC −1   、  AC −1   、  AC  −1   、  PB −1   和  AK  −1  分别为以上操作的逆运算.
                                       L
                                                   L
                                             C
                                   D r  分别为第  r+1 轮
                    记  A r  、   B r  、   C r  和   S 盒替换、比特置换、轮常数加和轮密钥加的输出状态值, 其中,                r ∈ [0,79] .
                    记  ⊕ 和  ⊞ 分别为轮密钥加和轮常数加, mod、/和 || 分别为模、除法和级联运算.

                 2.2   算法参数
                    DEFAULT  是于  2021  年亚洲密码学年会中提出的一种新型轻量级分组密码                  [26] . 该算法采用代换置换网络结
                 构, 分组长度和密钥长度均为         128  比特, 总轮数为  80  轮, 每轮的轮函数均包括      4  种运算: S  盒替换、比特置换、轮
                 常数加和轮密钥加, 如图       1  所示, 加密过程如算法     1  所示. 解密过程同加密过程, 轮密钥采用相反的顺序.

                                28 轮                      24 轮                      28 轮
                       S 盒替换            S 盒替换     S 盒替换           S 盒替换     S 盒替换            S 盒替换
                  明    比特置换       …     比特置换      比特置换      …     比特置换      比特置换      …      比特置换     密
                  文    轮常数加             轮常数加      轮常数加            轮常数加      轮常数加             轮常数加     文
                       轮密钥加             轮密钥加      轮密钥加            轮密钥加      轮密钥加             轮密钥加
                      S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S  S S 盒替换


                                                                                              比特置换


                                                                                              轮常数加
                                                                                              轮密钥加

                                                 图 1 DEFAULT   密码示意图
   368   369   370   371   372   373   374   375   376   377   378