掌桥专利:专业的专利平台
掌桥专利
首页

一种基于SM9的多用户消息加密解密方法及系统

文献发布时间:2023-06-19 19:30:30


一种基于SM9的多用户消息加密解密方法及系统

技术领域

本发明属于信息安全技术领域,涉及一种消息加密解密方法及系统,具体涉及一种基于SM9的多用户消息加密解密方法及系统,可以应用于群聊消息加密保护中。

背景技术

在信息安全领域中,如何保护数据的安全与隐私一直是人们关注的重点。在安全通信场景中,服务端加密方法会存储在传输过程中加密的数据,保证数据不被未经授权者访问,但这种方法不能保护整个的数据隐私的传输过程。端到端加密则提供了保护通信的最高标准,这种方法的加密解密过程发生在终端设备上,只有发送方和指定的接收方可以访问数据,任何第三方机构都不能访问服务器上的加密数据。即时通信是当前信息网络上应用广泛的一种通信技术,允许两人或多人使用互联网实时传输文字、语音和图片等信息。与电子邮件等传统安全通信任务的要求不同,安全即时通信不仅要求保障用户信息的安全传输,同时也需要保证用户隐私数据的安全存储。

运用密码技术是解决通信过程中的数据隐私保护问题的重要手段。目前的即时通信加密技术为满足该场景下用户多方的解密需求,需要通过密钥协商生成多方共有的会话密钥。这种方法不仅为实现会话密钥的一次一密安全要求带来了困难,也为即时通信系统的密钥管理带来了极大困难。

发明内容

本发明的目的在于克服现有在多用户参与的场景下安全即时通信加密方法存在的缺陷,提出了一种基于SM9的多用户消息加密解密方法及系统,用于解决现有技术存在的需要复杂的密钥协商过程以及密钥管理困难的问题,在省去密钥协商过程的情况下,实现满足一次一密且群组中所有用户均可解密的公钥加密算法。

本发明的方法所采用的技术方案是:一种基于SM9的多用户消息加密解密方法,包括以下步骤:

步骤1:用户i使用拥有n个用户的群组G的标识、群组中所有用户的标识ID以及系统公钥加密消息M,并将加密后的消息密文C发送给群组G;加密后的消息密文C包含群组中所有用户对应的加密参数;其中n≥3;

步骤2:将密文发送给群组中的用户j;用户j使用自身的私钥,解密出消息明文。

本发明的系统所采用的技术方案是:一种基于SM9的多用户消息加密解密系统,包括以下模块:

模块1,用于用户i使用拥有n个用户的群组G的标识、群组中所有用户的标识ID以及系统公钥加密消息M,并将加密后的消息密文C发送给群组G;加密后的消息密文C包含群组中所有用户对应的加密参数;

模块2,用于将密文发送给群组中的用户j;用户j使用自身的私钥,解密出消息明文。

本发明的优点在于,使用基于SM9的公钥加密算法的变种实现,利用群组中用户的标识进行消息加解密可省去消息通讯过程中的数字证书交换与证书管理等过程,适用于即时通信场景下的数据安全保障;将用户标识引入消息加密过程中,从而使得群组中的用户均能够解密群聊消息,消除了当前即时通信对称加密方法中的密钥协商过程与传统公钥加密算法中只能一方解密的问题;实现了安全通信中端到端加密方案的隐私数据传输全过程保护与端到服务器加密方案中隐私数据的安全存储的有效融合,将隐私数据的安全传输与安全存储一次完成。

附图说明

附图1为本发明实施例的加密实现流程图;

附图2为本发明实施例的解密实现流程图。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图详细描述本发明的具体实施方式及其简化和变形。应理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明的保护范围。

本发明提出了一种基于SM9的群聊消息加密解密方法,用于解决现有安全即时通信方法存在的需要复杂的密钥协商过程以及密钥管理困难的问题,在省去密钥协商过程的情况下,实现满足一次一密且通信多方均可解密的公钥加密算法。

本实施例中设需要发送的消息为比特串M,mlen为M的比特长度,K

参照附图1,本实施例提供的一种基于SM9的即时通信群聊消息加密方法,群组用户i加密明文M给拥有n个用户的群组G,其中n≥3;实现步骤为:

步骤1.1:用户i使用群组中n个用户的标识以及系统公钥P

Q

其中,ID

步骤1.2:产生n+1个随机数{r

步骤1.3:使用随机数r

计算群G

步骤1.4:计算群G

步骤1.5:计算群G

步骤1.6:使用密钥派生函数KDF()生成密钥K

本实施例使用结合密钥派生函数的分组密码算法加密明文;

计算整数klen=K

计算CC

步骤1.7:计算CC

步骤1.8:输出密文C=(C

设mlen为密文C=C

参照附图2,本实施例提供的一种基于SM9的即时通信群聊消息解密方法,用户j解密群聊消息M,实现步骤为:

步骤2.1:从C中取出比特串C

步骤2.2:计算群G

计算群G

步骤2.3:使用密钥派生函数KDF()生成密钥K′

本实施例使用结合密钥派生函数的分组密码算法解密密文;

计算整数klen=K

计算M′=Dec(k′

步骤2.4:计算u=MAC(K′

步骤2.5:输出明文M′。

SM9公钥加密与解密算法即基于标识的非对称密码算法,该算法使消息发送者可以利用接收者的标识对消息进行加密,唯有接收者可以用相应的私钥对该密文进行解密,从而获取消息。与传统公钥加密算法相比,SM9通过将用户标识作为公钥,从而省略了数字证书交换与证书管理等过程,适用于互联网各种新兴应用的安全保障。

应当理解的是,上述针对较佳实施案例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

技术分类

06120115932683