网络空间安全一级学科中白盒密码的教学与科研探讨

摘 要
随着Internet和云计算的出现,网络空间安全变得越来越重要,这使得网络空间安全人才的培养变得日益迫切 。国家于第一批和第二批分别批准了网络空间安全一级学科硕士点和博士点单位 。在网络空间安全一级学科中,密码学的教学必不可少 。白盒密码作为密码学的一个重要分支,可用来确保在不可信的环境下密码算法的安全性,保护密钥的机密性 。在白盒密码环境下,攻击者对密码实现是完全可见的,能对软件实现平台实施完全控制,可用在数字版权管理方面,近年来更用于移动支付 。因此,重点阐述白盒密码的相关概念、功能、研究方向和应用场景,可为包括研究生在内的科研人员指明了方向 。
内容目录:
0 引 言1 相关工作2 预备知识3 白盒密码的分类3.1 基于空间困难性的白盒密码3.2 白盒密码的安全性证明
3.3 基于动态密钥的白盒密码4 对白盒密码的研究方法
5 结 语0
引 言
随着威胁的日益增加,社会发展需要越来越多的网络空间安全人才 。国家分别批准设立了网络空间安全一级学科的硕士点和博士点,以加速我国的网络空间安全人才培养 。密码学在网络空间安全人才培养中是不可缺少的重要环节,对密码学的研究和密码人才的培养具有重要意义 。密码算法设计在攻击者出现的情况下用来保护数据或通信 。若这些算法利用了密钥,则它们的安全性依赖于密钥的安全性,因此攻击者主要的目标是提取密钥 。在传统的黑盒环境下,攻击者仅访问密码算法的输入与输出 。然而,越来越多的软件在由恶意第三方所拥有和控制的不可信开放平台上执行,这就需要配置强密码算法 。在黑盒环境不充足的情况下,攻击者能完全访问密码算法的软件实现,从而完全控制它的执行环境 。白盒密码可用于数字内容保护系统中,如数字版权管理和付费电视系统,近年来更用于移动支付 。提取密钥会危及内容安全,白盒密码的目的是在白盒环境下保护密码算法和密钥的机密性 。1
相关工作
传统上,密码原语被设计用来保护在黑盒攻击模型下的数据和密钥 。在这种模型下,通信的端点是可信的,这样密码执行就不能被观察或篡改 。这种假设在现在的数字版权管理、付费电视机顶盒和智能手机中是不适合的,因此需要白盒密码来解决 。在白盒密码环境下,攻击者对密码的软件实现完全可见,能完全控制执行平台,但并不能提取密钥信息 。周等人在2002年提出了白盒密码,目的是保护在不可信环境下密码算法的软件实现,主要目标是保护在白盒环境下密钥的机密性 。周等人首先提出了数据加密标准(Data Encryption Standard,DES)和高级加密标准(Advanced Encryption Standard,AES)的白盒实现 。它们的方法是要找到算法表示为以随机和密钥相关的表的查找网络,后又提出了对DES和AES的白盒实现 。然而,所有这些方法都通过密钥提取和表分解攻击被攻破了 。Biryukov等人提出了专用的白盒分组密码,基于仿射-非线性-仿射-非线性-仿射(Affine,Nonlinear,Affine,Nonlinear,Affine,ASASA)结构 。此结构由2个秘密的非线性层和3个秘密的仿射层组成,且仿射层和非线性层交织在一起 。ASASA结构的白盒实现使用查找表 。在白盒环境下,ASASA对密钥提取的安全性依赖于对ASASA的分解问题的困难性 。在白盒环境下的表分解攻击应是计算上困难的,使得代码提升攻击是困难的 。然而,对ASASA的分解攻击已经提出 。文献[10]提出了基于空间困难性的分组密码,在白盒下的分解安全性基于在标准黑盒下的密钥恢复困难性 。然而,由于安全性优先设计策略,此方案会造成严重的性能开销,需要多次AES调用以加密单一的分组 。文献[11]设计了专门的白盒分组密码SPNbox和小的分组密码,具有较好的效率和常量的执行时间 。文献[12-13]提出了差分计算分析方法,能从白盒实现中自动提取密钥 。文献[14]实现了和文献[10-11]同样的目标,但它提供了安全性证明保证且开销较小 。文献[15]焦距在不可压缩性上,且这种不可压缩性能减轻代码量和提升攻击 。他们提出了基于单向置换标准假设的不可压缩的白盒加密方案,而先前的工作多是基于公钥类型的假设和基于非标准的对称类型的假设 。文献[16]使用硬件绑定和混淆用于安全存储,定义了白盒密钥派生函数,与硬件功能进行绑定,建模安全的存储功能 。方案的安全性能规约到不可区分性混淆和伪随机函数安全假设 。2

推荐阅读