Attacks to software can be categorized into three classes: black-box, gray-box, and white box. When the intruder obtains a full control over a software and its running environment, the software is under the "white-box attack context". Obfuscation is a mechanism of program transformation, which make the program observable to humans while maintains the observable behavior of the program. Therefore, obfuscation is an effective way to improve the security of the software being threatened by "white-box" attacks. However, how to transform security critical codes efficiently is still underexplored. In this project, we propose a new approach to generalize obfuscating transformation and its related schemes. The approach relaxes constraints to the transform in that it allows rational changes of software running behavior without interfering other running programs and authorized users' operations. In this project, in order to construct generalized obfuscation schemes with high security level, we will focus on symmetric encryption, digital signature (both forward-secure signature and key-insulated signature) and message authentication code computation. Additionally, we will evaluate these transformation schemes' security level and the related costs to implement those schemes. The findings will contribute to "white-box" security research significantly. It also provides a new way to immune software to side-channel attacks under a gray-box attack context.
对软件的攻击环境包括黑盒、灰盒与白盒三种,当攻击者对软件及其运行环境拥有完全的控制权时,软件处于白盒攻击环境之下。混淆变换是一种程序转换机制,在保持程序可观测行为不变的前提下使转换后的程序难以被理解、分析和攻击,是提高白盒攻击环境下软件安全性的重要方法,但对于程序中安全关键代码的变换方法尚需深入研究。本研究提出了广义混淆变换这一新概念和相关的研究思路,放宽了对变换的限制,允许程序可观测行为的合理改变,但要求这种改变并不影响善意用户的正常使用,也不会干扰系统中其他合法程序的运行。主要内容是针对程序中对称加密、签名(包括前向安全签名和密钥隔离签名)及计算消息认证码等安全关键操作,构造安全性较好的专用的广义混淆变换。同时也对广义混淆变换的安全性和代价的度量与分析方法进行研究,并对研究出的广义混淆变换进行评价。研究有助于解决白盒攻击环境下的各类安全问题,也有助于在灰盒攻击环境下对抗旁道攻击等威胁。
对软件的攻击环境包括黑盒、灰盒与白盒三种,当攻击者对软件及其运行环境拥有完全控制权时,软件处于白盒攻击环境之下。软件运行的主机被入侵,特别是入侵者取得系统管理员或根用户权限时;或者在智能手机和平板电脑等容易遗失的移动设备上运行的软件,当这些设备被盗时,都是软件处于白盒攻击环境下的典型例子。被俘获的无线传感器网络节点、数字版权管理中系统中的用户端解密模块等也是常见实例。.混淆是一种转换机制,在保持程序可观测行为不变的前提下使转换后的程序难以被理解、分析和攻击,是提高白盒攻击环境下软件安全性的重要方法,但对于程序中安全关键代码难以找到实用的混淆变换。.本研究提出了广义混淆变换这一新的概念和研究思路,放宽了对混淆变换的限制,允许程序可观测行为的合理改变,但要求这种改变并不影响善意用户的正常使用,也不干扰系统中其他合法程序的运行。.本项目研究的主要内容是针对程序中的加密和数字签名等安全关键操作,构造安全性较好的专用的(广义)混淆变换。具体而言,本项目研究了:.(1)对加密算法的混淆和广义混淆方面:对SMS4加密算法进行广义混淆并得到轻量级的白盒SMS4加密算法;对SHARK加密算法进行广义混淆并得到重量级的白盒SHARK加密算法;给出了一个基于随机复用技术的可混淆的非对称多接收者重加密方案以及对其中重加密函数的混淆器。这方面共发表SCI收录论文3篇,CCF推荐国际学术会议论文2篇(且均为EI收录),项目负责人均为第一作者。.(2)对各种数字签名算法的混淆和广义混淆方面:对基于身份的数字签名算法进行广义混淆并得到基于身份的不可拆分数字签名方案;对前向安全的数字签名算法进行广义混淆并得到前向安全的不可拆分数字签名方案;对门限安全的数字签名算法进行广义混淆并得到具有门限安全性质的不可拆分签名方案;对密钥隔离的数字签名算法进行广义混淆并得到密钥隔离的不可拆分数字签名方案;给出了一个可混淆的加密群签名方案以及相应的混淆器。这方面共发表SCI收录论文3篇,提出发明专利申请4项(均已经公布并进入实审),以上成果项目负责人均为第一作者/第一发明人。.就安全理论的角度而言,这些具体的研究佐证了广义混淆变换的可行性,在多个难以用严格的混淆变换解决的问题中充分发挥了作用,体现了广义混淆变换的价值。本研究有助于境下的各类安全问题,也有助于在灰盒攻击环境下对抗旁道攻击。
{{i.achievement_title}}
数据更新时间:2023-05-31
论大数据环境对情报学发展的影响
硬件木马:关键问题研究进展及新动向
中国参与全球价值链的环境效应分析
面向云工作流安全的任务调度方法
居住环境多维剥夺的地理识别及类型划分——以郑州主城区为例
面向白盒攻击环境的最小约束多维协同混淆理论与方法
虚拟化混淆代码逆向分析方法研究
二进制代码路径混淆方法研究
代码纠缠:针对重包装攻击的新型Android应用自我保护方法研究