SIMON 算法的白盒实现与分析
作者:
作者单位:

作者简介:

通讯作者:

中图分类号:

TP309

基金项目:

陕西省自然科学基础研究计划(2021JM-126); 河南省网络密码技术重点实验室研究课题(LNCT2022-A08); 国家自然科学基金(62302285); 陕西省重点研发计划(2023-YBGY-015)


White-box Implementation and Analysis of SIMON
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    在白盒攻击环境下, 攻击者可以访问密码算法的实现过程, 观测算法运行的动态执行和内部细节, 并任意修改. 2002年Chow等人首次提出了白盒密码的概念, 利用查找表技术提出了AES算法和DES算法的白盒实现, 所采用的方法称为CEJO框架. 白盒实现将已有的密码算法进行编码混淆, 在白盒攻击环境下以软件的形式达到保护密钥的目的, 同时保证算法结果的正确性. SIMON算法是一种轻量级分组密码算法, 因其良好的软硬件实现性能被广泛应用于物联网设备中, 研究该算法的白盒实现具有重要现实意义. 给出SIMON算法的两种白盒实现. 第1种方案(SIMON-CEJO)采用经典的CEJO框架, 利用网络化编码对查找表进行保护, 从而混淆密钥. 该方案占用内存为369.016 KB, 安全性分析表明SIMON-CEJO方案可以抵抗BGE攻击和仿射等价算法攻击, 但不能抵抗差分计算分析. 第2种方案(SIMON-Masking)采用Battistello等人提出的编码方式, 对明文信息和密钥信息进行编码, 利用编码的同态性, 将异或运算和与运算转化为模乘运算和表查找操作; 最后进行解码, 得到对应的密文结果. 在算法运行过程中, 对与运算添加布尔掩码, 编码的随机性保护了真实密钥信息, 提高了方案抵抗差分计算分析和其他攻击的能力. SIMON-Masking占用内存空间为655.81 KB, 基于勒让德符号的二阶差分计算分析的时间复杂度为O(n2klog2p). 这两种方案的对比结果表明, 经典的CEJO框架无法有效防御差分计算分析, 运用新型编码并添加掩码是一种有效的白盒实现方法.

    Abstract:

    In the white-box attack context, an attacker can access the implementation process of the cryptographic algorithm, observe the dynamic execution and internal details of the algorithm, and modify it arbitrarily. In 2002, Chow et al. proposed the concept of white-box cipher and pointed out the white-box implementation of the AES algorithm and DES algorithm by using lookup table technology, which is called the CEJO framework. The white-box implementation obfuscates the existing cryptographic algorithms, protects the key in the form of software under white-box attack, and ensures the correctness of the algorithm results. SIMON is a lightweight block cipher algorithm, which is widely used in Internet of Things devices because of its great software and hardware performance. It is of great practical significance to study the white-box implementation of this algorithm. This study presents two white-box implementations of the SIMON algorithm. The first scheme (SIMON-CEJO) uses the classical CEJO framework to protect the lookup tables by using network codings, so as to confuse the key. In this scheme, the occupied memory space is 369.016 KB. The security analysis shows that the SIMON-CEJO scheme can resist BGE attack and affine equivalent algorithm attack, but it fails to resist differential computing analysis. The second scheme (SIMON-Masking) uses the encoding method proposed by Battistello et al. to encode the plaintext information and key information, and it uses the homomorphism of encoding to convert the XOR operation and AND operation into modular multiplication and table lookup operation. Finally, the corresponding ciphertext result is obtained by decoding. During the operation of the algorithm, the Boolean mask is added to the AND operation. The randomness of the codings protects the real key information and improves the ability of the scheme to resist differential computing analysis and other attacks. SIMON-Masking occupies 655.81 KB of memory space, and the time complexity of the second-order differential computing based on the Legendre symbol is O(n2klog2p). The comparison results of the two schemes show that the classical CEJO framework cannot effectively defend against differential computing analysis, but using new coding and adding masks are effective white-box implementation methods.

    参考文献
    相似文献
    引证文献
引用本文

罗一诺,陈杰,王超. SIMON 算法的白盒实现与分析.软件学报,,():1-16

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2022-07-22
  • 最后修改日期:2023-04-28
  • 录用日期:
  • 在线发布日期: 2024-01-17
  • 出版日期:
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号