本技术公开了一种基于商密SM9的前向安全标识签名方法,包括密钥生成中心、签名者、验证者。密钥生成中心跟签名者、验证者之间是完全信任的。其中密钥生成中心初始化系统参数,并根据用户标识ID为签名者颁发初始密钥。签名者向密钥生成中心发出密钥更新请求,从而获得更新后的密钥。签名者输入系统主公钥、消息以及t时段下的密钥执行签名算法生成消息签名,并将消息、签名以及自身的用户标识ID发送给验证者。验证者输入系统主公钥以及接收到的参数执行签名验证算法,验证成功则输出1,验证失败则输出0。本发明通过引入密钥更新机制,即使在私钥泄露的情况下,也能确保过去生成的签名不被伪造的签名机制。
背景技术
数字签名技术是信息安全领域的一项关键技术,它的核心作用在于确保数据在传输过程中的完备性。随着信息技术的飞速发展,在引领传统互联网行业数字化转型和推动电子商务模式革新的过程中,云计算、大数据、人工智能和区块链等新兴技术发挥了重要作用。尽管这些技术在工业化生产过程中带来了效率上的提升,但也不可避免的带来了数据泄露、未经授权访问和数据完整性方面的安全挑战。在此背景下,数字签名技术的重要性日益凸显。然而现有的传统签名算法往往部署在一些关键基础设施中(例如银行系统等),假设用户在某一时刻使用其私钥对一笔交易进行签名,若该私钥在未来被黑客窃取,黑客便可以伪造用户的数字签名,从而进行未经授权的交易,最终导致用户的资金被盗,进而引发一系列法律纠纷。
为解决上述问题,1994年,图灵奖得主Micali等三位密码学家首次提出了前向签名(Forward Secure Signatures)的概念。前向签名,也称为前向安全签名,是一种确保未来泄露不影响过去安全的数字签名技术,前向签名的提出是为了解决密钥泄露后的安全问题,它能够确保即使密钥在未来某个时刻被泄露,过去使用该密钥生成的签名依然有效。这一特性对于保障数据的完整性和不可否认性至关重要。
SM9标识密码算法的设计目标是为了满足特定应用场景下的安全性需求,特别是在移动通信、物联网等环境中,需要一种安全高效的数字签名技术来保护数据传输的完整性。尽管国家商用密码SM9标识密码算法为数据安全提供了基础共性保障,但其难以支持数字签名上的专用安全功能拓展。为解决身份认证过程中因密钥泄露引发的相关安全问题且满足国产密码技术自主、安全、有效、可控的战略要求,亟需研究一种基于国产商用密码SM9的前向安全标识签名算法。
实现思路