CN115801234B - 一种基于国密的数据不经意传输方法 - Google Patents
一种基于国密的数据不经意传输方法 Download PDFInfo
- Publication number
- CN115801234B CN115801234B CN202211238403.0A CN202211238403A CN115801234B CN 115801234 B CN115801234 B CN 115801234B CN 202211238403 A CN202211238403 A CN 202211238403A CN 115801234 B CN115801234 B CN 115801234B
- Authority
- CN
- China
- Prior art keywords
- point
- data
- key
- random number
- coordinate
- 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.)
- Active
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于国密的数据不经意传输方法。它包括以下步骤:数据持有方生成私钥sk0、公钥pk0,计算随机数r0在椭圆曲线上的点R0;数据接收方生成私钥sk1、公钥pk1,计算这N个随机数r1在椭圆曲线上的点R1,计算编号为c的随机数r1对应的点R1的修正坐标并赋值;数据持有方、数据接收方交换数据;数据持有方根据N个点R1的坐标信息计算出每个点R1的修正坐标并赋值,计算出每个点R1对应的密钥key0,用每个密钥key0加密对应的明文数据得到对应的密文数据并发送给数据接收方;数据接收方计算出密钥key1,并对N个密文数据解密,得到编号为c的明文数据。本发明只需要进行两轮通信,大大缩短了双方计算、通信等待的时间。
Description
技术领域
本发明涉及数据传输技术领域,尤其涉及一种基于国密的数据不经意传输方法。
背景技术
不经意传输是一种密码学协议,由于该协议能在不暴露接收者所取数据的同时保护数据方的其他数据,而被广泛的应用于安全多方计算中。国家商用密码(国密)算法是由国家密码管理局认定和公布的密码算法标准及其应用规范,其中部分密码算法已经成为国际标准。
不经意传输协议常用于金融风控场景的各大关键安全多方计算过程中。在金融机构联合风控建模中,金融机构首先需要确认双方拥有的共同数据进行联邦学习建模,为了保护非共有数据的安全,通常需要使用隐匿求交、隐匿查询技术用于共同特征数据(如:身份证号、手机号等信息)的筛选。其次,在联邦学习建模过程中,金融机构需要基于秘密分享进行密态数据处理,例如进行密态乘法计算(利用beaver三元组)、密态数据比较等操作。上述提到的隐匿求交技术、隐匿查询技术、密态数据比较、beaver三元组等关键安全多方计算过程,都需要不经意传输协议作为保证数据安全计算的关键核心。
目前,大部分的不经意传输协议均基于国外安全协议实现,底层密码技术受制于人,使得数据不经意传输的安全性不可控制,所以在设计绝对符合国家标准的安全协议时,迫切需要基于国密的协议进行计算。虽然业界已经有人提出基于国密的不经意传输协议,但其只利用了国密规定的椭圆曲线作为算子,在构造密钥的核心算法设计上采用的仍是基于国外提出的BaseOT算法,且在计算过程中需要进行三轮通信。
中国专利公开号CN113259329A,发明的名称为一种数据不经意传输方法、装置、电子设备及存储介质,该申请案公开了一种数据不经意传输方法,它首先由发送端将选择的椭圆曲线方程上的k-1个基点坐标的倍点信息发送至接收端,完成第一轮通信,接着,接收端据此生成第一公钥并将其发送至发送端,完成第二轮通信,然后,发送端依据第一公钥生成相应的k-1个第二公钥,根据第一公钥、k-1个第二公钥对k条待传输数据进行加密,得到k条密文,并将k条密文发送至接收端,完成第三轮通信,最后,接收端解密k条密文,得到选择的待传数据信息。其不足之处是,构造密钥的核心算法设计上采用的仍是基于国外提出的BaseOT算法,整个计算过程需要进行三轮通信。
发明内容
本发明为了解决上述技术问题,提供了一种基于国密的数据不经意传输方法,其基于国家商用密码算法实现数据不经意传输,整个过程只需要进行两轮通信,大大缩短了双方计算、通信等待的时间。
为了解决上述问题,本发明采用以下技术方案予以实现:
本发明的一种基于国密的数据不经意传输方法,用于安全多方计算,数据持有方持有N个待传输的明文数据,N个明文数据依次编号为1、2……N,数据接收方选择接收编号为c的明文数据,包括以下步骤:
S1:数据持有方、数据接收方统一国密SM2椭圆曲线系统参数;
S2:数据持有方根据国密SM2算法生成私钥sk0和公钥pk0,数据持有方生成随机数r0,并计算其在椭圆曲线上的点R0;
数据接收方根据国密SM2算法生成私钥sk1和公钥pk1,数据接收方生成N个随机数r1,N个随机数r1依次编号为1、2……N,计算这N个随机数r1在椭圆曲线上的点R1,编号为c的随机数r1对应的点R1的初始坐标记为RR1,采用国密SM3算法根据N个点R1的坐标信息计算出编号为c的随机数r1对应的点R1的修正坐标,将编号为c的随机数r1对应的点R1的坐标信息更新为该修正坐标;
S3:数据持有方将公钥pk0、点R0的坐标信息发送给数据接收方;
数据接收方将公钥pk1、N个点R1的坐标信息发送给数据持有方;
S4:数据持有方采用国密SM3算法根据N个点R1的坐标信息计算出每个点R1的修正坐标,并将每个点R1的坐标信息更新为对应的修正坐标;
S5:数据持有方采用国密SM2算法根据随机数r0、点R0的坐标信息、每个点R1的坐标信息、私钥sk0、公钥pk1计算出每个点R1对应的密钥key0,得到N个密钥key0,采用N个密钥key0分别加密对应的N个明文数据得到N个密文数据,并将其发送给数据接收方;
S6:数据接收方采用国密SM2算法根据编号为c的随机数r1、编号为c的随机数r1对应的点R1的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0计算出密钥key1,采用密钥key1对N个密文数据解密,得到编号为c的明文数据。
在本方案中,数据持有方、数据接收方预先进行协商,统一了国密SM2椭圆曲线系统参数,之后,双方利用国密SM2、SM3算法实现了N选1的数据不经意传输。整个过程中,双方在步骤S3处进行了第一轮通信,在步骤S5处进行了第二轮通信,即本方案只需要进行两轮通信就可以实现了N选1的数据不经意传输,大大缩短了双方计算、通信等待的时间,整个算法基于国密SM2、SM3算法,没有使用国外的算法协议,是符合国家数据安全标准的了N选1的数据不经意传输方法。
作为优选,所述步骤S2中采用国密SM3算法根据N个点R1的坐标信息计算出编号为c的随机数r1对应的点R1的修正坐标的方法如下:
采用国密SM3算法将除了编号为c的随机数r1对应的点R1之外的其他N-1个点R1的坐标信息按顺序拼接成字符串进行杂凑计算,得到杂凑值e1,计算杂凑值e1在椭圆曲线上的点E1,编号为c的随机数r1对应的点R1的修正坐标等于初始坐标RR1减去点E1的坐标。
作为优选,所述步骤S4中数据持有方采用国密SM3算法根据N个点R1的坐标信息计算出某个点R1的修正坐标的方法如下:
采用国密SM3算法将除了该点R1之外的其他N-1个点R1的坐标信息按顺序拼接成字符串进行杂凑计算,得到杂凑值e0,计算杂凑值e0在椭圆曲线上的点E0,该点R1的修正坐标为该点R1的坐标与点E0的坐标的和。
利用国密SM3的杂凑值计算,可以达到对原始数据保护和验证数据是否相同的目的。
作为优选,将除了第i个点R1之外的其他N-1个点R1的坐标信息按顺序拼接成字符串的方法如下,1≤i≤N:
将N-1个点R1的坐标信息按顺序依次拼接,
得到字符串x(1)||y(1)||……x(i-1)||y(i-1)||x(i+1)||y(i+1)||……x(N)||y(N),
其中,第i个点R1的坐标信息为(x(i),y(i))。
作为优选,所述步骤S5中数据持有方采用国密SM2算法根据随机数r0、点R0的坐标信息、编号为i的随机数r1对应的点R1的坐标信息、私钥sk0、公钥pk1计算出编号为i的随机数r1对应的点R1对应的密钥key0的方法如下:
将随机数r0、点R0的坐标信息、编号为i的随机数r1对应的点R1的坐标信息、私钥sk0、公钥pk1输入基于国密SM2的密钥生成函数,使密钥生成函数中的参数rA=r0,参数RA=R0,参数RB=R1(i),R1(i)表示编号为i的随机数r1对应的点R1,参数dA=sk0,参数PB=pk1,密钥生成函数输出密钥值KA,密钥值KA为编号为i的随机数r1对应的点R1对应的密钥key0的值。
作为优选,所述步骤S6中数据接收方采用国密SM2算法根据编号为c的随机数r1、编号为c的随机数r1对应的点R1的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0计算出密钥key1的方法如下:
将编号为c的随机数r1、编号为c的随机数r1对应的点R1的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0输入基于国密SM2的密钥生成函数,使密钥生成函数中的参数rA=r1(c),r1(c)表示号为c的随机数r1,参数RA=RR1,参数RB=R0,参数dA=sk1,参数PB=pk0,密钥生成函数输出密钥值KA,密钥值KA为密钥key1的值。
作为优选,所述密钥生成函数的公式如下:
,
,
,
,
,
,
其中,w、klen为常数,n为椭圆曲线基点G的阶,h为椭圆曲线的余因子,KDF为秘钥派生函数,ZA、ZB为椭圆曲线系统参数,U为椭圆曲线上的点,&表示按比特与运算,[k]F表示椭圆曲线上点F的k倍点。
本发明的有益效果是:(1)基于国家商用密码算法实现数据不经意传输,没有使用国外的算法协议,提高了安全性,解决了安全多方计算国产化的一个核心问题。(2)整个过程只需要进行两轮通信,大大缩短了双方计算、通信等待的时间。
附图说明
图1是实施例的流程图。
具体实施方式
下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
实施例:本实施例的一种基于国密的数据不经意传输方法,用于安全多方计算,数据持有方持有N个待传输的明文数据,N个明文数据依次编号为1、2……N,编号为i的明文数据记为X(i),数据接收方选择接收编号为c的明文数据X(c),1≤i≤N,1≤c≤N,N≥2,如图1所示,包括以下步骤:
S1:数据持有方、数据接收方统一国密SM2椭圆曲线系统参数;
S2:数据持有方根据国密SM2算法生成私钥sk0和公钥pk0,pk0=[sk0]G,数据持有方生成随机数r0,并计算其在椭圆曲线上的点R0,R0=[r0]G;
数据接收方根据国密SM2算法生成私钥sk1和公钥pk1,pk1=[sk1]G,数据接收方生成N个随机数r1,N个随机数r1依次编号为1、2……N,编号为i的随机数r1记为r1(i),计算这N个随机数r1在椭圆曲线上的点R1,随机数r1(i)在椭圆曲线上的点R1记为R1(i),R1(i)=[r1(i)]G,点R1(i)的坐标记为(x(i),y(i)),编号为c的随机数r1(c)对应的点R1(c)的初始坐标记为RR1,RR1=(xRR1,yRR1),即初始时x(c)=xRR1,y(c)=yRR1,采用国密SM3算法根据N个点R1的坐标信息计算出点R1(c)的修正坐标,将点R1(c)的坐标信息更新为该修正坐标;
采用国密SM3算法根据N个点R1的坐标信息计算出点R1(c)的修正坐标,将点R1(c)的坐标信息更新为该修正坐标的方法如下:
将除了点R1(c)之外的其他N-1个点R1的坐标信息按顺序拼接成字符串,得到字符串x(1)||y(1)||……x(c-1)||y(c-1)||x(c+1)||y(c+1)||……x(N)||y(N),采用国密SM3算法对该字符串进行杂凑计算,得到杂凑值e1,计算杂凑值e1在椭圆曲线上的点E1,E1=[e1]G,点R1(c)的修正坐标等于点R1(c)的初始坐标RR1减去点E1的坐标,将点R1(c)的坐标信息更新为该修正坐标就是给点R1(c)进行赋值,公式为R1(c):=RR1-E1;
S3:数据持有方将公钥pk0、点R0的坐标信息发送给数据接收方;
数据接收方将公钥pk1、N个点R1的坐标信息发送给数据持有方;
S4:数据持有方采用国密SM3算法根据N个点R1的坐标信息计算出每个点R1的修正坐标,并将每个点R1的坐标信息更新为对应的修正坐标;
数据持有方采用国密SM3算法根据N个点R1的坐标信息计算出编号为i的随机数r1(i)对应的点R1(i)的修正坐标,并将点R1(i)的坐标信息更新为对应的修正坐标的方法如下:
将除了点R1(i)之外的其他N-1个点R1的坐标信息按顺序拼接成字符串,得到字符串x(1)||y(1)||……x(i-1)||y(i-1)||x(i+1)||y(i+1)||……x(N)||y(N),采用国密SM3算法对该字符串进行杂凑计算,得到杂凑值e0(i),计算杂凑值e0(i)在椭圆曲线上的点E0(i),E0(i)=[e0(i)]G,R1(i)的修正坐标为点R1(i)的当前坐标与点E0(i)的坐标的和,将点R1(i)的坐标信息更新为对应的修正坐标就是给点R1(i)进行赋值,公式为R1(i):=R1(i)+E0(i);
S5:数据持有方采用国密SM2算法根据随机数r0、点R0的坐标信息、每个点R1的坐标信息、私钥sk0、公钥pk1计算出每个点R1对应的密钥key0,得到N个密钥key0,编号为i的随机数r1对应的点R1(i)对应的密钥key0记为key0(i),N个密钥key0分别为key0(1)、key0(2)……key0(N),采用N个密钥key0分别加密对应的N个明文数据得到N个密文数据,即密钥key0 (i)加密对应的明文数据X(i)得到密文数据Y(i),N个密文数据分别记为Y(1)、Y(2)……Y(N),将这N个密文数据发送给数据接收方;
S6:数据接收方采用国密SM2算法根据编号为c的随机数r1(c)、编号为c的随机数r1(c)对应的点R1(c)的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0计算出密钥key1,采用密钥key1对N个密文数据Y(1)、Y(2)……Y(N)解密,只有密文数据Y(c)能够被数据接收方解密成明文数据,最终数据接收方只得到了编号为c的明文数据X(c)。
在本方案中,数据持有方、数据接收方预先进行协商,统一了国密SM2椭圆曲线系统参数。
椭圆曲线系统参数包括:G为椭圆曲线的一个基点,其阶为素数;n为基点G的阶;h为椭圆曲线的余因子;ZA、ZB为椭圆曲线系统参数;KDF为秘钥派生函数;w、klen根据计算所需长度决定具体数值,通常情况下w=127,klen=256。
椭圆曲线计算符号包括:椭圆曲线上的点F可用坐标(x,y)的形式进行唯一表示;[k]F表示椭圆曲线上点F的k倍点,k是正整数;x||y表示x与y的拼接,其中x、y可以是比特串或字节串,本实施例进行拼接计算时,将自动将数据类型转变为比特串类型;&表示两个整数的按比特与运算。
数据持有方、数据接收方利用国密SM2、SM3算法实现了N选1的数据不经意传输。整个过程中,双方在步骤S3处进行了第一轮通信,在步骤S5处进行了第二轮通信,即本方案只需要进行两轮通信就可以实现了N选1的数据不经意传输,大大缩短了双方计算、通信等待的时间,整个算法基于国密SM2、SM3算法,没有使用国外的算法协议,是符合国家数据安全标准的了N选1的数据不经意传输方法。
N选1的数据不经意传输方法可以实现数据持有方P0拥有数据接收方P1所需查询的一条数据,但数据持有方P0不知道数据接收方P1具体查询了哪一条数据,数据接收方P1不知道除查询的那条数据以外的其他数据。以上场景被广泛应用于国内众多需要使用中国安全标准协议的银行、国企、政府等机构的安全计算协议或软件产品。因此,设计一种符合国家数据安全标准的N选1的数据不经意传输方法具有重大使用价值。
步骤S5中数据持有方采用国密SM2算法根据随机数r0、点R0的坐标信息、编号为i的随机数r1(i)对应的点R1(i)的坐标信息、私钥sk0、公钥pk1计算出编号为i的随机数r1(i)对应的点R1(i)对应的密钥key0(i)的方法如下:
将随机数r0、点R0的坐标信息、编号为i的随机数r1(i)对应的点R1(i)的坐标信息、私钥sk0、公钥pk1输入基于国密SM2的密钥生成函数,使密钥生成函数中的参数rA=r0,参数RA=R0,参数RB=R1(i),参数dA=sk0,参数PB= pk1,密钥生成函数输出密钥值KA,密钥值KA为编号为i的随机数r1(i)对应的点R1(i)对应的密钥key0(i)的值。
步骤S6中数据接收方采用国密SM2算法根据编号为c的随机数r1(c)、编号为c的随机数r1(c)对应的点R1(c)的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0计算出密钥key1的方法如下:
将编号为c的随机数r1(c)、编号为c的随机数r1(c)对应的点R1(c)的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0输入基于国密SM2的密钥生成函数,使密钥生成函数中的参数rA=r1(c),参数RA=RR1,参数RB=R0,参数dA=sk1,参数PB= pk0,密钥生成函数输出密钥值KA,密钥值KA为密钥key1的值。
上述步骤S5中计算密钥key0、步骤S6中计算密钥key1的方法都是给参数{rA、RA、RB、dA、PB}赋值后输入基于国密SM2的密钥生成函数,由密钥生成函数计算出对应的密钥值并输出。
基于国密SM2的密钥生成函数的公式如下:
,
,
,
,
,
,
其中,w、klen为常数,n为椭圆曲线几点G的阶,h为椭圆曲线的余因子,KDF为秘钥派生函数,ZA、ZB为椭圆曲线系统参数(这里为常数),U为椭圆曲线上的点,&表示按比特与运算,[k]F表示椭圆曲线上点F的k倍点。
本方案的数据持有方、数据接收方可以是银行、运营商、国企、政府等机构,本方案常用于金融机构联合风控建模,本方案传输的数据可以是个人信息数据、消费数据、贷款数据等,例如:姓名、身份证号、手机号、年龄、收入、每月话费、每月消费金额、每月还贷金额、欠款总额等信息。
本方案的正确性及安全性说明:
点R1(c)的初始坐标为RR1,则在步骤S2中数据接收方将点R1(c)的坐标信息更新为修正坐标后,R1(c)=RR1-E1,在步骤S4中数据持有方将每个点R1的坐标信息更新为对应的修正坐标,此时,只有点R1(c)的坐标信息在更新为对应的修正坐标后变成初始值RR1。因为,步骤S2中计算点R1(c)的修正坐标时计算出的杂凑值只与步骤S4中计算点R1(c)的修正坐标时计算出的杂凑值一样,即E1=E0(c),R1(c)=RR1-E1+E0(c)=RR1。所以,在步骤S4中数据持有方只能够还原出R1(c)的初始坐标,而不能还原出其他点R1的初始坐标,即执行完步骤S4后数据持有方持有的R1(c)的坐标为初始坐标RR1。利用国密SM3的杂凑值计算,可以达到对原始数据保护和验证数据是否相同的目的。
最后,数据持有方输入密钥生成函数的参数{rA、RA、RB、dA、PB}={r0、R0、R1(c)、sk0、pk1}={r0、R0、RR1、sk0、pk1},数据接收方输入密钥生成函数的参数{rA、RA、RB、dA、PB}={r1(c)、RR1、R0、sk1、pk0}。
基于国密SM2的密钥生成函数中,当且仅当数据持有方输入密钥生成函数的参数{rA、RA、RB、dA、PB}={r0、R0、RR1、sk0、pk1}、数据接收方输入密钥生成函数的参数{rA、RA、RB、dA、PB}={r1(c)、RR1、R0、sk1、pk0}时,即符合对称关系时,数据持有方、数据接收方才能生成相同的密钥。
所以,数据接收方生成的密钥key1只能将密文数据Y(c)解密成明文数据X(c),即数据接收方只能接收到编号为c的明文数据X(c)。
由于数据接收方无法获取数据持有方的私钥sk0、随机数r0,数据持有方无法获取数据接收方的私钥sk1、N个随机数r1,从而使得数据接收方无法解密编号为c的明文数据X(c)之外的其他明文数据,数据持有方无法知道数据接收方接收的是编号为c的明文数据X(c)。
Claims (7)
1.一种基于国密的数据不经意传输方法,用于安全多方计算,数据持有方持有N个待传输的明文数据,N个明文数据依次编号为1、2……N,数据接收方选择接收编号为c的明文数据,其特征在于,包括以下步骤:
S1:数据持有方、数据接收方统一国密SM2椭圆曲线系统参数;
S2:数据持有方根据国密SM2算法生成私钥sk0和公钥pk0,数据持有方生成随机数r0,并计算其在椭圆曲线上的点R0;
数据接收方根据国密SM2算法生成私钥sk1和公钥pk1,数据接收方生成N个随机数r1,N个随机数r1依次编号为1、2……N,计算这N个随机数r1在椭圆曲线上的点R1,编号为c的随机数r1对应的点R1的初始坐标记为RR1,采用国密SM3算法根据N个点R1的坐标信息计算出编号为c的随机数r1对应的点R1的修正坐标,将编号为c的随机数r1对应的点R1的坐标信息更新为该修正坐标;
S3:数据持有方将公钥pk0、点R0的坐标信息发送给数据接收方;
数据接收方将公钥pk1、N个点R1的坐标信息发送给数据持有方;
S4:数据持有方采用国密SM3算法根据N个点R1的坐标信息计算出每个点R1的修正坐标,并将每个点R1的坐标信息更新为对应的修正坐标;
S5:数据持有方采用国密SM2算法根据随机数r0、点R0的坐标信息、每个点R1的坐标信息、私钥sk0、公钥pk1计算出每个点R1对应的密钥key0,得到N个密钥key0,采用N个密钥key0分别加密对应的N个明文数据得到N个密文数据,并将其发送给数据接收方;
S6:数据接收方采用国密SM2算法根据编号为c的随机数r1、编号为c的随机数r1对应的点R1的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0计算出密钥key1,采用密钥key1对N个密文数据解密,得到编号为c的明文数据。
2.根据权利要求1所述的一种基于国密的数据不经意传输方法,其特征在于,所述步骤S2中采用国密SM3算法根据N个点R1的坐标信息计算出编号为c的随机数r1对应的点R1的修正坐标的方法如下:
采用国密SM3算法将除了编号为c的随机数r1对应的点R1之外的其他N-1个点R1的坐标信息按顺序拼接成字符串进行杂凑计算,得到杂凑值e1,计算杂凑值e1在椭圆曲线上的点E1,编号为c的随机数r1对应的点R1的修正坐标等于初始坐标RR1减去点E1的坐标。
3.根据权利要求1或2所述的一种基于国密的数据不经意传输方法,其特征在于,所述步骤S4中数据持有方采用国密SM3算法根据N个点R1的坐标信息计算出某个点R1的修正坐标的方法如下:
采用国密SM3算法将除了该点R1之外的其他N-1个点R1的坐标信息按顺序拼接成字符串进行杂凑计算,得到杂凑值e0,计算杂凑值e0在椭圆曲线上的点E0,该点R1的修正坐标为该点R1的坐标与点E0的坐标的和。
4.根据权利要求3所述的一种基于国密的数据不经意传输方法,其特征在于,将除了第i个点R1之外的其他N-1个点R1的坐标信息按顺序拼接成字符串的方法如下,1≤i≤N:
将N-1个点R1的坐标信息按顺序依次拼接,
得到字符串x(1)||y(1)||……x(i-1)||y(i-1)||x(i+1)||y(i+1)||……x(N)||y(N),
其中,第i个点R1的坐标信息为(x(i),y(i))。
5.根据权利要求1所述的一种基于国密的数据不经意传输方法,其特征在于,所述步骤S5中数据持有方采用国密SM2算法根据随机数r0、点R0的坐标信息、编号为i的随机数r1对应的点R1的坐标信息、私钥sk0、公钥pk1计算出编号为i的随机数r1对应的点R1对应的密钥key0的方法如下:
将随机数r0、点R0的坐标信息、编号为i的随机数r1对应的点R1的坐标信息、私钥sk0、公钥pk1输入基于国密SM2的密钥生成函数,使密钥生成函数中的参数rA=r0,参数RA=R0,参数RB=R1(i),R1(i)表示编号为i的随机数r1对应的点R1,参数dA=sk0,参数PB=pk1,密钥生成函数输出密钥值KA,密钥值KA为编号为i的随机数r1对应的点R1对应的密钥key0的值。
6.根据权利要求1所述的一种基于国密的数据不经意传输方法,其特征在于,所述步骤S6中数据接收方采用国密SM2算法根据编号为c的随机数r1、编号为c的随机数r1对应的点R1的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0计算出密钥key1的方法如下:
将编号为c的随机数r1、编号为c的随机数r1对应的点R1的初始坐标RR1、点R0的坐标信息、私钥sk1、公钥pk0输入基于国密SM2的密钥生成函数,使密钥生成函数中的参数rA=r1(c),r1(c)表示号为c的随机数r1,参数RA=RR1,参数RB=R0,参数dA=sk1,参数PB=pk0,密钥生成函数输出密钥值KA,密钥值KA为密钥key1的值。
7.根据权利要求5或6所述的一种基于国密的数据不经意传输方法,其特征在于,所述密钥生成函数的公式如下:
,
,
,
,
,
,
其中,w、klen为常数,n为椭圆曲线基点G的阶,h为椭圆曲线的余因子,KDF为秘钥派生函数,ZA、ZB为椭圆曲线系统参数,U为椭圆曲线上的点,&表示按比特与运算,[k]F表示椭圆曲线上点F的k倍点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211238403.0A CN115801234B (zh) | 2022-10-11 | 2022-10-11 | 一种基于国密的数据不经意传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211238403.0A CN115801234B (zh) | 2022-10-11 | 2022-10-11 | 一种基于国密的数据不经意传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115801234A CN115801234A (zh) | 2023-03-14 |
CN115801234B true CN115801234B (zh) | 2023-04-07 |
Family
ID=85432747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211238403.0A Active CN115801234B (zh) | 2022-10-11 | 2022-10-11 | 一种基于国密的数据不经意传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115801234B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5768388A (en) * | 1996-03-01 | 1998-06-16 | Goldwasser; Shafi | Time delayed key escrow |
CN113259329A (zh) * | 2021-04-26 | 2021-08-13 | 北京信安世纪科技股份有限公司 | 一种数据不经意传输方法、装置、电子设备及存储介质 |
CN114301594A (zh) * | 2022-03-01 | 2022-04-08 | 华控清交信息科技(北京)有限公司 | 一种不经意传输方法、多方安全计算平台和用于不经意传输的装置 |
CN114915396A (zh) * | 2022-04-11 | 2022-08-16 | 中国人民解放军海军工程大学 | 一种基于国密算法的跳变密钥数字通信加密系统和方法 |
CN114978488A (zh) * | 2022-05-05 | 2022-08-30 | 北京电子科技学院 | 一种基于sm2算法的协同签名方法及系统 |
CN115001685A (zh) * | 2022-07-22 | 2022-09-02 | 北京信安世纪科技股份有限公司 | 不经意传输方法、装置、设备和存储介质 |
-
2022
- 2022-10-11 CN CN202211238403.0A patent/CN115801234B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5768388A (en) * | 1996-03-01 | 1998-06-16 | Goldwasser; Shafi | Time delayed key escrow |
CN113259329A (zh) * | 2021-04-26 | 2021-08-13 | 北京信安世纪科技股份有限公司 | 一种数据不经意传输方法、装置、电子设备及存储介质 |
CN114301594A (zh) * | 2022-03-01 | 2022-04-08 | 华控清交信息科技(北京)有限公司 | 一种不经意传输方法、多方安全计算平台和用于不经意传输的装置 |
CN114915396A (zh) * | 2022-04-11 | 2022-08-16 | 中国人民解放军海军工程大学 | 一种基于国密算法的跳变密钥数字通信加密系统和方法 |
CN114978488A (zh) * | 2022-05-05 | 2022-08-30 | 北京电子科技学院 | 一种基于sm2算法的协同签名方法及系统 |
CN115001685A (zh) * | 2022-07-22 | 2022-09-02 | 北京信安世纪科技股份有限公司 | 不经意传输方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115801234A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11621833B2 (en) | Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system | |
CN111049650B (zh) | 一种基于sm2算法的协同解密方法及装置、系统、介质 | |
CN111162906B (zh) | 一种基于茫然传输算法的协同秘密分享方法及装置、系统、介质 | |
US9705683B2 (en) | Verifiable implicit certificates | |
KR100259179B1 (ko) | 암호화 통신 처리 | |
US7925010B2 (en) | Message deciphering method, system and article | |
CN110880972A (zh) | 一种基于安全多方计算的区块链密钥管理系统 | |
US7894608B2 (en) | Secure approach to send data from one system to another | |
KR20210139344A (ko) | 데이터 기반 활동을 수행하는 방법 및 장치 | |
CN113987583A (zh) | 一种隐匿查询方法及系统 | |
CN115567308A (zh) | 一种基于密钥扩展的数据加密传输方法 | |
CN113132104A (zh) | 一种主动安全的ecdsa数字签名两方生成方法 | |
CN112737783B (zh) | 一种基于sm2椭圆曲线的解密方法及设备 | |
CN108599941A (zh) | 随机非对称扩充字节通信数据加密方法 | |
CN115765969B (zh) | 一种基于同态加密的隐匿集合求交方法、装置及存储介质 | |
WO2018047132A1 (en) | A system and method for authentication and secure communication | |
CN115801234B (zh) | 一种基于国密的数据不经意传输方法 | |
CN116318654A (zh) | 融合量子密钥分发的sm2算法协同签名系统、方法及设备 | |
CN114697001B (zh) | 一种基于区块链的信息加密传输方法、设备及介质 | |
KR102304831B1 (ko) | 순열그룹 기반의 암호화 기술을 적용한 암호화시스템 및 방법 | |
CN115378588B (zh) | 不经意传输方法、设备和存储介质 | |
CN117176351B (zh) | 数据传输处理方法、系统、计算机设备及存储介质 | |
US20240177148A1 (en) | Non-custodial Wallet | |
CN116781243B (zh) | 一种基于同态加密的不经意传输方法、介质及电子设备 | |
CN114003938B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |