CN115834038A - 基于国家商用密码算法的加密方法及装置 - Google Patents

基于国家商用密码算法的加密方法及装置 Download PDF

Info

Publication number
CN115834038A
CN115834038A CN202211350989.XA CN202211350989A CN115834038A CN 115834038 A CN115834038 A CN 115834038A CN 202211350989 A CN202211350989 A CN 202211350989A CN 115834038 A CN115834038 A CN 115834038A
Authority
CN
China
Prior art keywords
private key
encryption
ciphertext
public
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211350989.XA
Other languages
English (en)
Inventor
陈超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bank of China Financial Technology Co Ltd
Original Assignee
Bank of China Financial Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bank of China Financial Technology Co Ltd filed Critical Bank of China Financial Technology Co Ltd
Priority to CN202211350989.XA priority Critical patent/CN115834038A/zh
Publication of CN115834038A publication Critical patent/CN115834038A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明提供一种基于国家商用密码算法的加密方法及装置,属于加密技术领域,该方法包括:调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文。该方法中的SM2私钥是基于内部密钥密文加密的,人工操作整个过程没有密钥泄露的风险,无人能看到密码明文,也无法解密,从而规避密码泄露的风险,实现了满足对侧***要求的公私钥对的同时,保证了***的安全性。因此,无需通过对硬件加密机进行硬件上的改进来匹配对侧***,不会存在额外的硬件改造成本。

Description

基于国家商用密码算法的加密方法及装置
技术领域
本发明涉及加密技术领域,尤其涉及一种基于国家商用密码算法的加密方法及装置。
背景技术
国家商用密码算法,是国家密码局推出的一套加解密算法。其中,SM2算法为国家商用密码算法中的非对称密钥算法;SM4算法为国家商用密码算法中的对称密钥算法。目前,为了适应当前国际形势变化,信息***使用国家商用密码算法的场景与日俱增。
然而,与外部***对接过程中,发现现有的硬件加密机体系生成的SM2公私钥对会存在无法满足对方要求的情况。其原因包括:二者的SM2加密方式参数不同,例如,硬件加密机和对侧***的mode,一个为C1|C3|C2,另一个为C1|C2|C3;SM2签名方式参数不同,例如,硬件加密机和对侧***的用户ID(即userid),一个为默认值12345671234567,另一个为自定义值。
如果想通过软件方式实现与对侧***的匹配,则存在SM2私钥泄露的风险。因此,要想实现与外部加密***的对接,目前只能对硬件加密机进行硬件上的改进。但是,这些改进会对时限、硬件加密机改造成本等产生影响。
发明内容
针对现有技术存在的问题,本发明提供一种基于国家商用密码算法的加密方法及装置。
本发明提供一种基于国家商用密码算法的加密方法,包括:调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
根据本发明提供的一种基于国家商用密码算法的加密方法,所述调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥,包括:接收对侧***指定的***参数,所述***参数包括用户ID和加密模式参数;将所述***参数配置在配置文件中;调用SM2加密接口,读取配置文件,通过传参方式设置加密参数,所述加密参数包括加密方式及签名方式参数,生成SM2公钥和SM2私钥。
根据本发明提供的一种基于国家商用密码算法的加密方法,所述生成SM2公钥和SM2私钥之后,还包括:将所述SM2公钥发送至对侧***,用于对侧***对待发送的业务内容进行加密。
根据本发明提供的一种基于国家商用密码算法的加密方法,所述得到SM2私钥密文之后,还包括:将所述SM2私钥密文进行本地存储,用于对侧***基于所述SM2公钥加密后的内容进行解密。
根据本发明提供的一种基于国家商用密码算法的加密方法,所述将所述SM2公钥发送至对侧***之后,还包括:接收对侧***发送的业务内容密文;读取所述配置文件中的SM4密钥密文;调用硬件加密机的SM4解密接口对SM2私钥密文进行解密,得到SM2私钥明文;将对侧***发送的业务内容密文使用所述SM2私钥明文进行解密,得到业务内容明文。
本发明还提供一种基于国家商用密码算法的加密装置,包括:生成模块,用于调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;处理模块,用于调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;加密模块,用于调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
根据本发明提供的一种基于国家商用密码算法的加密装置,还包括解密模块,用于:接收对侧***发送的业务内容密文;读取所述配置文件中的SM4密钥密文;调用硬件加密机的SM4解密接口对SM2私钥密文进行解密,得到SM2私钥明文;将对侧***发送的业务内容密文使用所述SM2私钥明文进行解密,得到业务内容明文。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于国家商用密码算法的加密方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于国家商用密码算法的加密方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述基于国家商用密码算法的加密方法。
本发明提供的基于国家商用密码算法的加密方法及装置,通过调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,在进行软加密方式与对侧***匹配的同时,SM2私钥是基于内部密钥密文加密的,人工操作整个过程没有密钥泄露的风险,无人能看到密码明文,也无法解密,从而规避密码泄露的风险,实现了满足对侧***要求的公私钥对的同时,保证了***的安全性。因此,无需通过对硬件加密机进行硬件上的改进来匹配对侧***,不会存在额外的硬件改造成本。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的基于国家商用密码算法的加密方法的流程示意图;
图2是本发明提供的基于国家商用密码算法的加密装置的结构示意图;
图3是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面针对本发明涉及的一些技术术语进行解释。
SM2是国家密码管理局发布的椭圆曲线公钥密码算法,SM2为非对称加密,基于椭圆加密算法(Ellipse Curve Ctyptography,ECC)。由于该算法基于ECC,故其签名速度与密钥生成速度都快于RSA(一种非对称加密算法,这一算法主要依靠分解大素数的复杂性来实现其安全性,由于大素数之积难被分解,因此该密码就难被破解)。ECC256位(SM2采用的就是ECC 256位的一种)安全强度比RSA2048位高,但运算速度快于RSA。SM2性能更优更安全:密码复杂度高、处理速度快、机器性能消耗更小。
SM2加密算法以及流程:
输入:需要发送的消息为比特串M,klen为M的比特长度。
1.用随机数发生器产生随机数k∈[1,n-1],k的值为1到n-1;
2.计算椭圆曲线点C1=[k]G=(x1,y1),将C1的数据类型转换为比特串;
3.计算椭圆曲线点S=[h]PB,若S是无穷远点,则报错并退出;
4.计算椭圆曲线点[k]PB=(x2,y2),将坐标x2、y2的数据类型转换为比特串;
5.计算t=KDF(x2∥y2,klen),若t为全0比特串,则返回1;
6.计算C2=M⊕t;
7.计算C3=Hash(x2∥M∥y2);
8.输出密文C=C1∥C2∥C3。
SM2解密算法以及流程:
klen为密文中C2的比特长度,对密文C=C1∥C2∥C3进行解密,需要实现以下步骤:
1.从C中取出比特串C1,将C1的数据类型转换为椭圆曲线上的点,验证C1是否满足椭圆曲线方程,若不满足则报错并退出;
2.计算椭圆曲线点S=[h]C1,若S是无穷远点,则报错并退出;
3.计算[dB]C1=(x2,y2),将坐标x2、y2的数据类型转换为比特串;
4.计算t=KDF(x2∥y2,klen),若t为全0比特串,则报错并退出。
5.从C中取出比特串C2,计算M=C2⊕t;
6.计算u=Hash(x2∥M∥y2),从C中取出比特串C3,若u≠C3,则报错并退出;
7.输出明文M′。
其中,参数未解释部分可参见现有技术,此处不再赘述。
SM4为由国家密码管理局发布的对称加密算法,该算法的分组长度为128比特,密钥长度为128比特。加密算法与密钥扩展算法都采用32轮非线性迭代结构。解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反,解密轮密钥是加密轮密钥的逆序。
下面结合图1-图3描述本发明的基于国家商用密码算法的加密方法及装置。图1是本发明提供的基于国家商用密码算法的加密方法的流程示意图,如图1所示,本发明提供基于国家商用密码算法的加密方法,包括:
101、调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文。
硬件加密机本身具有SM2密钥和SM4密钥的生成功能,即提供了SM2密钥和SM4密钥的生成接口,本发明仅使用硬件加密机的SM4密钥生成接口。在本发明中,业务***收到生成对侧***(可以是前述提到的参数不匹配的对侧***)SM2密钥的需求后,首先调用硬件加密机SM4生成接口随机生成一个SM4密钥密文。需要说明的是,此SM4密钥密文仅可通过硬件加密机解密为明文,从而安全性有保障。
将所述SM4密钥密文存储至配置文件,并作为生成SM2公私钥对的后续参数。即具体可将101生成的SM4密钥密文配置并存储在配置文件(或者配置表)中,用于后续SM2公私钥对生成过程的使用。
102、调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥。
调用SM2公私钥对生成流程,并在此根据对侧***的参数(如userid等),进行生成SM2公私钥对的过程,以匹配对侧***。
103、调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
即基于101生成的SM4密钥密文,结合硬件加密机提供的SM4加密接口,对102生成的SM2私钥进行加密,得到可以内部使用的SM2私钥密文。本发明实施例对上述和对侧***进行业务内容加密和解密的方法不作具体限定,包括目前的多种加解密方法,如包括加签验签等方式。
可以看出,本发明中生成的SM2公私钥对中,其中的SM2私钥是经过调用硬件加密机SM4加密接口而得到的密文。因此,无论如何进行操作和流转,在加密机外部是无法解密的,从而避免了SM2私钥泄露带来的风险,从而无需对硬件加密机进行硬件上的改进便可符合使用要求。
本发明的基于国家商用密码算法的加密方法,通过调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,在进行软加密方式与对侧***匹配的同时,SM2私钥是基于内部密钥密文加密的,人工操作整个过程没有密钥泄露的风险,无人能看到密码明文,也无法解密,从而规避密码泄露的风险,实现了满足对侧***要求的公私钥对的同时,保证了***的安全性。因此,无需通过对硬件加密机进行硬件上的改进来匹配对侧***,不会存在额外的硬件改造成本。
在一个实施例中,所述调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥,包括:接收对侧***指定的***参数,所述***参数包括用户ID和加密模式参数;将所述***参数配置在配置文件中;调用SM4公私钥对生成接口,读取配置文件,通过传参方式设置加密参数,所述加密参数包括加密方式及签名方式参数,生成SM2公钥和SM2私钥。
在本发明实施例中,调用SM4公私钥对生成方法的接口,并在此根据对侧***的参数,通过接口方法中传参方式设置如加密方式及签名方式等参数,以匹配对侧***,进行生成SM2公私钥对。其中,对侧***的参数包括用户ID和加密模式参数,如加密模式为C1|C3|C2或者C1|C2|C3,用户ID为12345671234567。最后,调用硬件加密机的SM2加密接口,读取配置文件,生成SM2公钥和SM2私钥。
本发明的基于国家商用密码算法的加密方法,无需对硬件加密机进行硬件上的改进,同时使用对侧***参数生成SM2密钥,能够匹配对侧***,实现相互之间的加密和解密。
在一个实施例中,所述生成SM2公钥和SM2私钥之后,还包括:将所述SM2公钥发送至对侧***,用于对侧***对待发送的业务内容进行加密。
生成SM2公钥和SM2私钥之后,将SM2公钥发送给对侧***,对侧***若存在需要加密的业务内容时,可基于该SM2公钥进行加密。
在一个实施例中,所述得到SM2私钥密文之后,还包括:将所述SM2私钥密文进行本地存储,用于对侧***基于所述SM2公钥加密后的内容进行解密。
将SM2公钥发送给对侧***后,对侧***若存在需要加密的业务内容时,基于该SM2公钥进行加密。而在本侧***,将上述SM2私钥密文进行本地存储,当收到对侧***发送的基于上述SM2公钥加密的业务内容后,基于存储的SM2私钥密文便可进行业务内容的解密。
在一个实施例中,所述将所述SM2公钥发送至对侧***之后,还包括:接收对侧***发送的业务内容密文;读取所述配置文件中的SM4密钥密文;调用硬件加密机的SM4解密接口对SM2私钥密文进行解密,得到SM2私钥明文;将对侧***发送的业务内容密文使用所述SM2私钥明文进行解密,得到业务内容明文。
在对侧***基于上述SM2公钥对业务内容进行加密后,本侧***收到相关的业务内容后,则需进行解密。
在本发明实施例中,基于上述SM2私钥密文进行解密。具体过程为,首先从配置文件或者配置标准读取101生成的SM4密钥密文,基于该SM4密钥密文,调用SM4解密接口,对SM2私钥密文进行解密,得到SM2私钥。
基于此,根据目前通用的SM2私钥的解密方法,便可实现业务内容的解密。
本发明的基于国家商用密码算法的加密方法中,可以看出,无人能看到SM2密钥明文,也无法在***外部进行解密,从而规避密码泄露的风险。
在密钥交换过程中,通过无需进行硬件改进的硬件加密机便可实现满足对方要求的SM2公私钥对,私钥经过调用加密机SM4密钥密文加密形成SM2私钥密文,仅输出,部署人员仅接触并配置,由业务***调用硬件加密机将SM2私钥解密形成明文使用。其中,业务***可以是参与加解密的用户M,对侧***可以是参与加解密的用户N,硬件加密机为提供SM4密钥生成及加解密的服务器,M生成SM2公私钥对,并通过硬件加密机和业务***得到需要的SM2私钥密文,N通过业务***发送给对侧***而接收到所需要的SM2公钥。
下面对本发明提供的基于国家商用密码算法的加密装置进行描述,下文描述的基于国家商用密码算法的加密装置与上文描述的基于国家商用密码算法的加密方法可相互对应参照。
图2是本发明提供的基于国家商用密码算法的加密装置的结构示意图,如图2所示,该基于国家商用密码算法的加密装置包括:生成模块201、处理模块202和加密模块203。其中,生成模块201用于调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;处理模块202用于调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;加密模块203用于调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
在一个装置实施例中,所述处理模块202具体用于:接收对侧***指定的***参数,所述***参数包括用户ID和加密模式参数;将所述***参数配置在配置文件中;调用硬件加密机的SM2加密接口,读取配置文件,通过传参方式设置加密方式及签名方式,生成SM2公钥和SM2私钥。
在一个装置实施例中,还包括发送模块,用于在所述生成SM2公钥和SM2私钥之后:将所述SM2公钥发送至对侧***,用于对侧***对待发送的业务内容进行加密。
在一个装置实施例中,还包括存储模块,用于:将所述SM2私钥密文进行本地存储,用于对侧***基于所述SM2公钥加密后的内容进行解密。
在一个装置实施例中,还包括解密模块,用于:接收对侧***发送的业务内容密文;读取所述配置文件中的SM4密钥密文;调用硬件加密机的SM4解密接口对SM2私钥密文进行解密,得到SM2私钥明文;将对侧***发送的业务内容密文使用所述SM2私钥明文进行解密,得到业务内容明文。
本发明实施例所提供的基于国家商用密码算法的加密装置,是为了实现上述各方法实施例的,其实现原理和前述基于国家商用密码算法的加密方法实施例相同,为简要描述,基于国家商用密码算法的加密装置实施例部分未提及之处,可参考前述基于国家商用密码算法的加密方法实施例中相应内容。
本发明实施例所提供的基于国家商用密码算法的加密装置,通过调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,在进行软加密方式与对侧***匹配的同时,SM2私钥是基于内部密钥密文加密的,人工操作整个过程没有密钥泄露的风险,无人能看到密码明文,也无法解密,从而规避密码泄露的风险,实现了满足对侧***要求的公私钥对的同时,保证了***的安全性。因此,无需通过对硬件加密机进行硬件上的改进来匹配对侧***,不会存在额外的硬件改造成本。
图3是本发明提供的电子设备的结构示意图,如图3所示,该电子设备可以包括:处理器(processor)301、通信接口(Communications Interface)302、存储器(memory)303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信。处理器301可以调用存储器303中的逻辑指令,以执行基于国家商用密码算法的加密方法,该方法包括:调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
此外,上述的存储器303中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的基于国家商用密码算法的加密方法,该方法包括:调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的基于国家商用密码算法的加密方法,该方法包括:调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种基于国家商用密码算法的加密方法,其特征在于,包括:
调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;
调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;
调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;
其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
2.根据权利要求1所述的基于国家商用密码算法的加密方法,其特征在于,所述调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥,包括:
接收对侧***指定的***参数,所述***参数包括用户ID和加密模式参数;
将所述***参数配置在配置文件中;
调用SM2公私钥对生成接口,读取配置文件,通过传参方式设置加密参数,所述加密参数包括加密方式及签名方式参数,生成SM2公钥和SM2私钥。
3.根据权利要求1所述的基于国家商用密码算法的加密方法,其特征在于,所述生成SM2公钥和SM2私钥之后,还包括:
将所述SM2公钥发送至对侧***,用于对侧***对待发送的业务内容进行加密。
4.根据权利要求1所述的基于国家商用密码算法的加密方法,其特征在于,所述得到SM2私钥密文之后,还包括:
将所述SM2私钥密文进行本地存储,用于对侧***基于所述SM2公钥加密后的内容进行解密。
5.根据权利要求3所述的基于国家商用密码算法的加密方法,其特征在于,所述将所述SM2公钥发送至对侧***之后,还包括:
接收对侧***发送的业务内容密文;
读取所述配置文件中的SM4密钥密文;
调用硬件加密机的SM4解密接口对SM2私钥密文进行解密,得到SM2私钥明文;
将对侧***发送的业务内容密文使用所述SM2私钥明文进行解密,得到业务内容明文。
6.一种基于国家商用密码算法的加密装置,其特征在于,包括:
生成模块,用于调用硬件加密机的SM4生成接口随机生成一个SM4密钥密文;
处理模块,用于调用SM2公私钥对生成接口,根据对侧***参数生成SM2公钥和SM2私钥;
加密模块,用于调用硬件加密机的SM4加密接口,基于所述SM4密钥密文对所述SM2私钥进行加密,得到SM2私钥密文;
其中,所述SM2公钥和所述SM2私钥密文用于和对侧***进行业务内容的加密和解密。
7.根据权利要求6所述的基于国家商用密码算法的加密装置,其特征在于,还包括解密模块,用于:
接收对侧***发送的业务内容密文;
读取所述配置文件中的SM4密钥密文;
调用硬件加密机的SM4解密接口对SM2私钥密文进行解密,得到SM2私钥明文;
将对侧***发送的业务内容密文使用所述SM2私钥明文进行解密,得到业务内容明文。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述基于国家商用密码算法的加密方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述基于国家商用密码算法的加密方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述基于国家商用密码算法的加密方法。
CN202211350989.XA 2022-10-31 2022-10-31 基于国家商用密码算法的加密方法及装置 Pending CN115834038A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211350989.XA CN115834038A (zh) 2022-10-31 2022-10-31 基于国家商用密码算法的加密方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211350989.XA CN115834038A (zh) 2022-10-31 2022-10-31 基于国家商用密码算法的加密方法及装置

Publications (1)

Publication Number Publication Date
CN115834038A true CN115834038A (zh) 2023-03-21

Family

ID=85525981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211350989.XA Pending CN115834038A (zh) 2022-10-31 2022-10-31 基于国家商用密码算法的加密方法及装置

Country Status (1)

Country Link
CN (1) CN115834038A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116594972A (zh) * 2023-07-17 2023-08-15 国网江苏省电力有限公司信息通信分公司 一种文件加密共享方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116594972A (zh) * 2023-07-17 2023-08-15 国网江苏省电力有限公司信息通信分公司 一种文件加密共享方法和装置
CN116594972B (zh) * 2023-07-17 2023-10-24 国网江苏省电力有限公司信息通信分公司 一种文件加密共享方法和装置

Similar Documents

Publication Publication Date Title
Diffie et al. New directions in cryptography
US10785019B2 (en) Data transmission method and apparatus
US8670563B2 (en) System and method for designing secure client-server communication protocols based on certificateless public key infrastructure
US8429408B2 (en) Masking the output of random number generators in key generation protocols
Tseng et al. A chaotic maps-based key agreement protocol that preserves user anonymity
CN108199835B (zh) 一种多方联合私钥解密方法
CN107483212A (zh) 一种双方协作生成数字签名的方法
Khader et al. Preventing man-in-the-middle attack in Diffie-Hellman key exchange protocol
WO2017147503A1 (en) Techniques for confidential delivery of random data over a network
JP2011501585A (ja) キー配信用の方法、システムおよび機器
US6640303B1 (en) System and method for encryption using transparent keys
CN110535626B (zh) 基于身份的量子通信服务站保密通信方法和***
CN113711564A (zh) 用于加密数据的计算机实现的方法和***
Castiglione et al. An efficient and transparent one-time authentication protocol with non-interactive key scheduling and update
Muth et al. Smartdhx: Diffie-hellman key exchange with smart contracts
WO2020042023A1 (zh) 一种即时通信的数据加密方法及装置
CN115834038A (zh) 基于国家商用密码算法的加密方法及装置
CN109981254B (zh) 一种基于有限李型群分解问题的微型公钥加解密方法
EP2395698B1 (en) Implicit certificate generation in the case of weak pseudo-random number generators
CN111565108A (zh) 签名处理方法、装置及***
Panda et al. A modified PKM environment for the security enhancement of IEEE 802.16 e
CN110048852A (zh) 基于非对称密钥池的量子通信服务站数字签密方法和***
US20230188330A1 (en) System and method for identity-based key agreement for secure communication
Duits The post-quantum Signal protocol: Secure chat in a quantum world
CN108768923A (zh) 一种基于量子可逆逻辑线路的加密算法的聊天实时加密方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination