摘要:白盒密码技术是一种新兴的密码保护手段,能够在攻击者完全控制执行环境的情况下确保密钥的安全性。本文介绍了白盒密码技术基本原理,并探讨了其在金融、物联网等领域的广泛应用。白盒密码技术具有高安全、低成本和高适应性等优势,随着研究的深入,白盒密码技术有望在更多领域得到广泛应用,成为数据安全的重要屏障。
引言
在数字化时代,数据已成为推动社会和经济发展的核心资源。然而,伴随着信息技术的迅猛发展,数据安全威胁呈现出日益复杂和多样化的趋势。黑客攻击、数据泄露、恶意软件等安全事件频发,严重威胁着个人隐私、企业利益乃至国家安全。近年来发生的多起重大数据泄露事件,造成了巨大的经济损失与社会影响。面对安全威胁新形势,提升数据安全防护水平成为了亟待解决的关键问题。
为解决复杂场景下数据安全防护问题,白盒密码应运而生。传统的密码学技术,如对称密码和非对称密码,虽然在数据加密和传输保护方面取得了显著成效,但在面对恶意攻击者具备系统内部访问权限的场景中,依然存在诸多局限。白盒密码技术则通过将密码算法嵌入到复杂的白盒环境中,确保即使攻击者获取了系统的全部信息,也无法获取密码算法所使用的密钥等敏感信息,从而保护数据安全。白盒密码技术极大的增强了密码算法在不可信环境中的运行安全性,提升了数据安全防护能力。
白盒密码以其高安全特性,可广泛应用于金融、医疗、物联网等领域。在金融领域,白盒密码技术能够保护在线支付和移动支付中的敏感数据,防止黑客通过逆向工程或内存提取手段窃取用户的银行信息和交易记录等。在医疗领域,白盒密码技术可以确保电子病历和患者隐私数据的安全,防止未经授权的访问和数据泄露。在物联网领域,白盒密码技术为智能设备之间的通信提供了强大的安全保障,抵御来自网络和物理层面的多重攻击。
白盒密码概述
我们常用的密码算法如SM2/3/4/9等,在设计时通常只考虑了其黑盒攻击模型下的安全性,即密码算法部署在受到严格保护或安全硬件等安全的地方,而攻击者只能获取密码算法的输入与输出信息。然而,在实际应用中,特别是在移动设备和开放环境中,黑盒攻击模型这一假设往往难以成立。如移动设备中可能存在间谍软件监控密码算法运行过程,获取算法执行的中间数据等。当攻击者能获取密码算法执行时所产生的中间数据时,密码算法所使用的密钥等敏感信息将较容易恢复出来,如根据SM4算法一轮运算的输入输出信息可直接计算出该轮的轮密钥。此类开放环境称为白盒攻击环境,该概念由Chow等人在2002年为解决数字版权保护等问题而提出。
在白盒攻击环境中,攻击者不仅可以访问和操纵加密算法和密钥,还可以完全控制执行加密操作的设备,这包括:
- 完全了解和访问加密算法的细节和实现代码;
- 能够监视和篡改执行加密操作的整个过程;
- 能够访问和修改密码运行环境中的相关数据等。
白盒密码就是研究如何在白盒攻击环境中保护密钥等敏感信息的安全。白盒密码包含两方面的含义,一是针对常见标准密码算法,如SM2、SM4等算法的白盒实现,另一方面指根据白盒攻击特点设计新型密码算法,使其能抵抗白盒攻击。由于我们通常使用标准密码算法,因此我们重点考虑标准密码算法的白盒实现。
白盒密码的基本原理是通过复杂的混淆技术,将密钥和密码算法紧密结合,使得攻击者即使能够访问整个执行环境,也无法分离出密钥等敏感信息。Chow等提出白盒攻击环境概念时,构造了关于AES、DES算法的白盒实现方案,其主要思想(如图1)是利用分组密码迭代运算的特点,将密码算法的运算过程进行分解,将其中部分运算结合起来转换成查找表,再以查表的方式完成计算,将轮密钥嵌入到查找表中并通过随机映射保护查找表,以实现保护每一轮轮密钥的目标。
与传统密码技术相比,白盒密码技术具有独特的优势:
- 高安全:安全的白盒方案可在不可信终端安全地完成密码运算,有效保护密钥等敏感数据安全,极大提升安全性;
- 低成本:相比于密码安全硬件解决方案,白盒解决方案实现成本更低、更新维护更容易;
- 更可靠:可信执行环境(TEE)等解决方案其安全性与第三方提供的相关平台有关,相比之下,安全的白盒解决方案的安全性由方案本身决定,因此具有更可靠的信任关系,同时,由于是纯软件解决方案,白盒密码具有更高的灵活性和适应性。
白盒密码技术应用
白盒密码可以确保密码算法在不可信终端上运行时的密钥安全, 从而抵抗白盒攻击。与使用密码安全硬件相比,白盒密码等软实现方式具有容易扩展、 使用便捷、传输方便等优点。随着越来越多的应用软件和运行平台的出现,密码算法的运行环境也越来越复杂和恶劣,白盒密码发挥作用的舞台也越来越大。
01终端密钥保护
随着手机金融业务、数字多媒体业务及物联网场景业务的迅速发展,终端中密码算法运行时的密钥安全问题越来越严重。密码算法运行的终端环境处于用户或攻击者的控制之下,算法运行的中间过程可能被攻击者获取,密钥存在泄露的风险。特别地,一些合法的用户可能成为潜在的攻击者。如数字版权保护等应用中,当受版权保护的数字资源在手机、电脑等终端被解密供用户使用时,合法用户可能监控干扰算法运行,提取密钥,进而获取数字资源,进行非法传播获利,造成数字资源所有者的损失。
数字化信息技术丰富了我们的生活,同时也对密码应用带来挑战。运营商提供相关服务,而密码算法需在不受运营商控制的终端完成对数据的加解密、签名等运算,因此运营商的信息安全保障主要取决于密钥的安全。为防范潜在的攻击者,密钥等敏感信息不能直接出现在终端,这就要求终端所使用的密码方案应能够抵抗白盒攻击。
商密系列算法白盒方案可用于保护终端中的密钥,从而保护数字资源的安全。具体实施过程如下:
- 运营商在自身服务器上完成白盒初始化过程,即根据密钥初始化白盒实现代码。
- 当用户请求数字资源服务时,运营商可通过互联网发送密文数据,同时将白盒实现代码发送给用户,用户在终端使用白盒实现代码完成对数据的处理,从而获取数字服务。
02云计算密钥保护
云计算将处于不同地理位置的计算资源有效整合,构成一个超大规模的共享资源池,将计算分布在该资源池中进行,使得远程的计算机用户能够享受似乎“能力无限”的计算资源服务。云计算凭借其超大规模性、 虚拟性、 高可靠性、 高扩展性、 按需服务性和廉价性等特质被普遍接受,成为了互联网行业中不可或缺的一环。
云计算为我们带来便利、 经济、 高可扩展性等优势的同时,也面临许多关键性问题,而安全问题首当其冲。云服务器其实是一种不可信任的平台,为了某些利益,云服务器很有可能对其上执行的程序进行恶意主机攻击。例如当用户借助于云计算资源在云端使用密码算法对数据进行处理时,云服务器可以扫描正在处理的数据甚至恶意地插入附加操作或数据,从而获取用户的密钥等敏感信息。这种攻击一旦成功将会带来不可弥补的损失, 特别是商业机构或政府机构。云计算平台的安全问题制约了云计算技术的推广应用。
商密白盒方案可部署在云端,用于对云端存储的数据进行白盒化加解密、签名解密等操作。具体实施过程如下:
- 用户在本地自己的设备上完成白盒初始化过程,并将初始化后的白盒SM2/3/4/9代码上传至云端;
- 云计算平台利用强大的计算资源,使用白盒代码完成对海量数据的加解密、签名等操作。
在整个过程中,密钥被混淆在白盒实现代码中,云平台根据白盒密码加解密或签名的过程难以从中恢复密钥等敏感信息。白盒应用设计方案既充分利用了云平台的计算资源,又保护了密钥等敏感信息,可以有效防范云服务提供商潜在的安全风险。
商密白盒实现技术部署示例
商密系列算法白盒实现方案可直接用于替换现有密码应用方案中相关的密码算法模块,在提供相同的加解密、签名等功能的同时,确保在不可控环境中保护算法运行时的密钥安全。在实际部署中,白盒密码技术需要结合具体的应用场景和安全需求进行设计和实施。白盒方案实际部署的主要步骤包括:
1. 算法初始化:在安全区域,根据密钥生成白盒方案实例。如根据给定的密钥,生成具体的SM4白盒加密代码等;
2. 安全分发:将白盒实现安全分发到应用终端,供应用终端执行特定的功能;
3. 白盒方案运行:终端使用白盒方案完成相应的密码功能。
下面以两个典型的应用场景举例说明。
01移动电子支付密码应用方案
客户在支付终端进行消费行为时,支付终端需要完成客户身份鉴别、交易确认、发送指令等任务,此时一般使用SM2/3/4等算法满足身份鉴别、数据机密性防护、数据完整性保护、以及数据抗抵赖性等需求。由于终端环境可靠性不高,可使用白盒解决方案对终端密码模块进行升级,加强这些算法在终端运行时的密钥安全。
02网银密码应用方案
在网上银行系统组成中,服务器端位于银行的安全性机房等地方,受到重点防护。然而,用户在客户端处理数据,并通过开放的互联网传输数据,此对客户端的环境提出一定要求,常用解决办法是使用专用安全机制,如U盾之类的硬件设备,这种解决方案影响使用便捷性。由于白盒密码方案以纯软方式实现,同时可有效抵抗不可控环境中密码算法的密钥安全,使用白盒密码方案替代专用安全机制可有效降低成本,并提高密钥更换等使用便捷性。
总结
白盒密码技术作为一种新兴的密码保护手段,具有重要的应用价值和发展潜力。在数据安全威胁日益严峻的背景下,白盒密码技术能够在攻击者完全控制执行环境的情况下确保密钥的安全性,为保护敏感数据和增强应用安全提供了有效的手段。其应用不仅限于金融、版权保护等高风险领域,还可以在物联网、智能卡、身份认证等多个场景中发挥重要作用。通过结合具体的应用场景和安全需求,合理设计和实施白盒密码技术,可以大幅提升系统的安全性。
随着研究的深入和技术的不断进步,白盒密码技术的安全性和性能将进一步提升。未来,白盒密码技术有望在更多领域得到广泛应用,成为保护数据安全的重要工具。然而,白盒密码技术的发展也面临着诸多挑战,例如在提高安全性的同时保证算法的高效性和实用性,以及应对不断演进的攻击技术。此外,白盒密码技术的实际应用还需要考虑实现复杂度、计算资源等因素,以确保其在不同应用场景中的可行性和有效性。白盒密码技术必将在数据安全领域发挥越来越重要的作用,为保护数据安全和隐私提供更强有力的保障。
海泰方圆作为一家二十余年的专业密码企业,为产业提供高质量密码供给是担当所在。海泰方圆深入研究白盒密码技术,拥有SM4白盒加解密、SM2/9白盒签名/解密、HMAC-SM3等商密SM2/3/4/9全系列算法的白盒解决方案。同时,海泰方圆紧跟白盒密码技术研究学术前沿,并积极参与国内相关标准制定,为白盒密码技术研究与应用贡献海泰力量。海泰方圆也与产学研建立了广泛深入的合作,欢迎交流探讨。
作者:海泰方圆Max潘博士
热门跟贴