CN114422135A - 一种基于椭圆曲线的可验证的不经意传输方法 - Google Patents
一种基于椭圆曲线的可验证的不经意传输方法 Download PDFInfo
- Publication number
- CN114422135A CN114422135A CN202210067698.3A CN202210067698A CN114422135A CN 114422135 A CN114422135 A CN 114422135A CN 202210067698 A CN202210067698 A CN 202210067698A CN 114422135 A CN114422135 A CN 114422135A
- Authority
- CN
- China
- Prior art keywords
- receiving end
- message
- elliptic curve
- parameter
- identity
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Physics (AREA)
- Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于椭圆曲线的可验证的不经意传输方法,包括:接收端计算待获取的第α个消息标识的加密份额Tα和接收端身份验证参数h,并将加密份额Tα和接收端身份验证参数h发送至发送端;发送端验证接收端身份是否真实性,若是,则计算出k个发送端身份验证参数、解密份额V和k个消息标识密文{E1,E2,…Ek},发送至接收端;接收端对第α个消息标识密文Eα进行解密,得到第α个消息标识mα;接收端验证消息来源是否真实;若是,则表示消息来源真实,接收解密得到的消息标识mα,否则,拒绝接收解密得到的消息标识mα。本发明在基于椭圆曲线的不经意传输协议的执行中,发送端可以验证接收端身份的真实性,接收端也可以验证解密消息来源的真实性。
Description
技术领域
本发明涉及信息安全技术领域,更具体的说是涉及一种基于椭圆曲线的可验证的不经意传输方法。
背景技术
随着数据量的日益增长,隐私保护面临越来越严峻的考验,不经意传输作为数据隐私保护的一种有效方法,成为信息安全领域一个重要的研究课题。不经意传输可以让接收者从发送者的两条或多条消息中选择一条消息,而发送者却不能获得接收者所选取消息的任何信息,并且接收者也不能获得除所选取的那条消息之外的其他消息的任何信息,已被应用于电子商务、电子投票等互联网通信中。
但是,由于互联网开放性特点,在设计基于椭圆曲线的不经意输方法时,可验证性成为一个值得考虑的问题。即发送者可以验证与自己通信的接收者的身份是否是真实的,而不是被冒充的,同时接收者又能验证获得的消息是否来源于真实的发送者。
然而,在现有的基于椭圆曲线的不经意传输方法中,如果攻击者冒充接收者的身份与发送者进行通信,虽然最终攻击者不能从发送者那里获得有关真实接收者所选取消息的任何信息,但是由于发送者不能检测出与自己通信的接收者的身份是被冒充的,发送者需要完成整个协议的计算,从而浪费了自己的计算资源。另外,如果攻击者冒充发送者的身份向接收者发送错误的消息,接收者不能检测出所获得的消息是否来源于真实的发送者,从而可以导致攻击者利用错误消息达到攻击的目的,对通信双方造成一定的损失。
因此,如何提供一种能够验证接收者身份与消息来源真实性的基于椭圆曲线的可验证的不经意传输方法是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种基于椭圆曲线的可验证的不经意传输方法,在不经意传输协议的执行中,发送端可以验证接收端身份的真实性,同时接收端也可以验证解密消息来源的真实性。
为了实现上述目的,本发明采用如下技术方案:
一种基于椭圆曲线的可验证的不经意传输方法,发送端和接收端预先共享一条有限域上的椭圆曲线,包括以下步骤:
接收端计算待获取的第α个消息标识的加密份额Tα和接收端身份验证参数h,并将加密份额Tα和接收端身份验证参数h发送至发送端;其中,α∈[1,k],表示待选取的消息标识序号,k表示发送端拥有的消息标识的个数;
发送端计算接收端身份判断参数h′,并与接收端身份验证参数h进行比较;若二者相等,则表示接收端身份真实,并计算出k个发送端身份验证参数{z1,z2,…,zk}、解密份额V和k个消息标识密文{E1,E2,…,Ek},发送至接收端;否则,退出协议执行;
接收端从k个消息标识密文{E1,E2,…,Ek}中寻找第α个消息标识密文Eα,并进行解密操作,得到第α个消息标识mα;
接收端计算第α个发送端身份判断参数z′α,并与收到的k个发送端身份验证参数{z1,z2,…,zk}中的第α个参数进行比较;若相等,则表示消息来源真实,接收解密得到的消息标识mα,否则,拒绝接收解密得到的消息标识mα。
进一步的,在上述一种基于椭圆曲线的可验证的不经意传输方法中,接收端拥有一对椭圆曲线上的公私钥(dB,QB),其中,dB表示接收端基于椭圆曲线的私钥,QB=dBG表示接收端基于椭圆曲线的公钥;发送端拥有一对椭圆曲线上的公私钥(dA,QA)和k个消息标识(m1,m2,…mk),其中,dA表示发送端基于椭圆曲线的私钥,QA=dAG表示发送端基于椭圆曲线的公钥,mi表示基于椭圆曲线的长度为256比特的二进制0、1串。
进一步的,在上述一种基于椭圆曲线的可验证的不经意传输方法中,所述接收端计算待获取的第α个消息标识的加密份额Tα和接收端身份验证参数h,包括:
随机选取一个整数s∈[1,n-1],计算接收端加密验证参数P,P=(Px,Py)=dBQA,其中,Px表示接收端加密验证参数P的横坐标,Py表示接收端加密验证参数P的纵坐标;
为待获取的第α个消息标识计算加密份额Tα,其中,Tα=αP+sG;
计算接收端身份验证参数h,h=H(Px||Py);其中,H表示映射到数的哈希,长度为256比特,||表示二进制0、1串链接操作。
进一步的,在上述一种基于椭圆曲线的可验证的不经意传输方法中,接收端身份判断参数h′的计算公式为:h′=(P′x||P′y),P′=dAQB。
进一步的,在上述一种基于椭圆曲线的可验证的不经意传输方法中,k个发送端身份验证参数zi的计算公式为:zi=H(mi||P′x||P′y);
解密份额V的计算公式为:V=vG;
进一步的,在上述一种基于椭圆曲线的可验证的不经意传输方法中,第α个发送端身份判断参数z′α的计算公式为:z′α=H(mα||Px||Py)。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种基于椭圆曲线的可验证的不经意传输方法,发送端在收到接收端发送的信息后,会首先验证接收端身份的真实性,避免因接收端身份不真实而造成计算资源的浪费;同时,接收端可以验证消息标识来源的真实性,抵抗发送端的冒名攻击。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1附图为本发明提供的一种基于椭圆曲线的可验证的不经意传输方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例公开了一种基于椭圆曲线的可验证的不经意传输方法,发送端和接收端预先共享一条有限域上的椭圆曲线,包括以下步骤:
接收端计算待获取的第α个消息标识的加密份额Tα和接收端身份验证参数h,并将加密份额Tα和接收端身份验证参数h发送至发送端;其中,α∈[1,k],表示待选取的消息标识序号,k表示发送端待发送的消息标识的个数;
发送端计算接收端身份判断参数h′,并与接收端身份验证参数h进行比较;若二者相等,则表示接收端身份真实,并计算出k个发送端身份验证参数{z1,z2,…,zk}、解密份额V和k个消息标识密文Ei,发送至接收端;否则,退出协议执行;
接收端从k个消息标识密文Ei中寻找第α个消息标识密文Eα,并进行解密操作,得到第α个消息标识mα;
接收端计算第α个发送端身份判断参数z′α,并与收到的k个发送端身份验证参数{z1,z2,…,zk}中的第α个参数进行比较;若相等,则表示消息来源真实,接收解密得到的消息标识mα,否则,拒绝接收解密得到的消息标识mα。
下面,以一个具体实施例对上述步骤进行详细描述。
接收端和发送端提前共享一条有限域Fp上的椭圆曲线T=(p,a,b,G,n,h),其中p表示一个长度为256比特的大素数,a,b表示椭圆曲线的系数,G表示椭圆曲线的基点,n表示椭圆曲线的阶,h表示余因子。接收端拥有一对椭圆曲线上的公私钥(dB,QB),其中dB表示接收端基于椭圆曲线的私钥,QB=dBG表示接收端基于椭圆曲线的公钥。发送端拥有一对椭圆曲线上的公私钥(dA,QA)和k个消息标识(m1,m2,…mk),其中,dA表示发送端基于椭圆曲线的私钥,QA=dAG表示发送端基于椭圆曲线的公钥,mi表示基于椭圆曲线的长度为256比特的二进制0、1串。具体步骤如下:
S1、接收端计算加密份额Tα和接收端身份验证参数h;并将加密份额Tα和接收端身份验证参数h发送给发送端。具体计算过程为:
S11、随机选取一个整数s∈[1,n-1],计算接收端加密验证参数P=(Px,Py)=dBQA,其中,Px表示接收端加密验证参数P的横坐标,Py表示接收端加密验证参数P的纵坐标;
S12、为待获取的第α∈[1,k]个消息标识计算加密份额Tα=αP+sG,其中,k表示发送端消息标识的个数;
S13、计算接收端身份验证参数h=H(Px||Py),其中,H表示映射到数的哈希,长度为256比特,如SM3哈希算法,||表示二进制0、1串链接操作。
S2、发送端收到接收端发送过来的加密份额Tα和接收端身份验证参数h后,进行以下操作:
S21、计算发送端加密验证参数P′=dAQB,并计算h′=(P′x||P′y),其中h′表示发送端计算出来的接收端身份判断参数;
S22、判断收到的接收端身份验证参数h与自己计算出来的接收端身份判断参数h′是否相等,若相等,则说明与发送端进行通信的接收端的身份是真实的,继续执行S23,否则,退出协议的执行过程;
S23、计算k个发送端身份验证参数zi=H(mi||P′x||P′y),i=1,2,…,k;
S25、发送端将解密份额V,k个发送端身份验证参数{z1,z2,…,zk}和k个消息标识密文{E1,E2,…,Ek}发送给接收端。
S3、接收端收到发送端发送过来的信息后,进行以下操作:
S32、计算第α个发送端身份判断参数z′α=H(mα||Px||Py),并与收到的发送端身份验证参数集合{z1,z2,…,zk}里面的第α个参数进行比较,判断两个参数是否相等,若相等,则说明解密得到的消息标识来自于真实的发送端,此时,接收解密得到的消息标识,否则,拒绝接收解密得到的消息标识。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种基于椭圆曲线的可验证的不经意传输方法,发送端和接收端预先共享一条有限域上的椭圆曲线,其特征在于,包括以下步骤:
接收端计算待获取的第α个消息标识的加密份额Tα和接收端身份验证参数h,并将加密份额Tα和接收端身份验证参数h发送至发送端;其中,α∈[1,k],表示待选取的消息标识序号,k表示发送端拥有的消息标识的个数;
发送端计算接收端身份判断参数h′,并与接收端身份验证参数h进行比较;若二者相等,则表示接收端身份真实,并计算出k个发送端身份验证参数{z1,z2,…,zk}、解密份额V和k个消息标识密文{E1,E2,…,Ek},发送至接收端;否则,退出协议执行;
接收端从k个消息标识密文{E1,E2,…,Ek}中寻找第α个消息标识密文Eα,并进行解密操作,得到第α个消息标识mα;
接收端计算第α个发送端身份判断参数z′α,并与收到的k个发送端身份验证参数{z1,z2,…,zk}中的第α个参数进行比较;若相等,则表示消息来源真实,接收解密得到的消息标识mα,否则,拒绝接收解密得到的消息标识mα。
2.根据权利要求1所述的一种基于椭圆曲线的可验证的不经意传输方法,其特征在于,接收端拥有一对椭圆曲线上的公私钥(dB,QB),其中,dB表示接收端基于椭圆曲线的私钥,QB=dBG表示接收端基于椭圆曲线的公钥;发送端拥有一对椭圆曲线上的公私钥(dA,QA)和k个消息标识(m1,m2,…mk),其中,dA表示发送端基于椭圆曲线的私钥,QA=dAG表示发送端基于椭圆曲线的公钥,mi表示基于椭圆曲线的长度为256比特的二进制0、1串。
3.根据权利要求2所述的一种基于椭圆曲线的可验证的不经意传输方法,其特征在于,所述接收端计算待获取的第α个消息标识的加密份额Tα和接收端身份验证参数h,包括:
随机选取一个整数s∈[1,n-1],计算接收端加密验证参数P,P=(Px,Py)=dBQA,其中,Px表示接收端加密验证参数P的横坐标,Py表示接收端加密验证参数P的纵坐标;
为待获取的第α个消息标识计算加密份额Tα,其中,Tα=αP+sG;
计算接收端身份验证参数h,h=H(Px||Py);其中,H表示映射到数的哈希,长度为256比特,||表示二进制0、1串链接操作。
4.根据权利要求3所述的一种基于椭圆曲线的可验证的不经意传输方法,其特征在于,接收端身份判断参数h′的计算公式为:h′=(Px′||Py′),P′=dAQB。
5.根据权利要求4所述的一种基于椭圆曲线的可验证的不经意传输方法,其特征在于,k个发送端身份验证参数zi的计算公式为:zi=H(mi||Px′||Py′);
解密份额V的计算公式为:V=vG;
k个消息标识密文Ei的计算公式为:Ei=mi⊕H((v(Tα-iP′))x||(v(Tα-iP′))y);
其中,i=1,2,…,k,⊕表示二进制逐位异或操作。
6.根据权利要求5所述的一种基于椭圆曲线的可验证的不经意传输方法,其特征在于,接收端解密得到的第α个消息标识mα的计算公式为:mα=Eα⊕H(sV)。
7.根据权利要求1所述的一种基于椭圆曲线的可验证的不经意传输方法,其特征在于,第α个发送端身份判断参数z′α的计算公式为:z′α=H(mα||Px||Py)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210067698.3A CN114422135A (zh) | 2022-01-20 | 2022-01-20 | 一种基于椭圆曲线的可验证的不经意传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210067698.3A CN114422135A (zh) | 2022-01-20 | 2022-01-20 | 一种基于椭圆曲线的可验证的不经意传输方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114422135A true CN114422135A (zh) | 2022-04-29 |
Family
ID=81275014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210067698.3A Pending CN114422135A (zh) | 2022-01-20 | 2022-01-20 | 一种基于椭圆曲线的可验证的不经意传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114422135A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115065470A (zh) * | 2022-08-05 | 2022-09-16 | 北京信安世纪科技股份有限公司 | 数据传输方法和设备 |
CN116132029A (zh) * | 2022-12-22 | 2023-05-16 | 泉城省实验室 | 基于三选一茫然传输协议的通配符模式匹配方法及*** |
-
2022
- 2022-01-20 CN CN202210067698.3A patent/CN114422135A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115065470A (zh) * | 2022-08-05 | 2022-09-16 | 北京信安世纪科技股份有限公司 | 数据传输方法和设备 |
CN115065470B (zh) * | 2022-08-05 | 2022-11-11 | 北京信安世纪科技股份有限公司 | 数据传输方法和设备 |
CN116132029A (zh) * | 2022-12-22 | 2023-05-16 | 泉城省实验室 | 基于三选一茫然传输协议的通配符模式匹配方法及*** |
CN116132029B (zh) * | 2022-12-22 | 2023-09-26 | 泉城省实验室 | 基于三选一茫然传输协议的通配符模式匹配方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109559122B (zh) | 区块链数据传输方法及区块链数据传输*** | |
EP2416524B1 (en) | System and method for secure transaction of data between wireless communication device and server | |
JP2017063432A (ja) | 証明書不要公開鍵基盤に基づく安全なクライアント・サーバ通信プロトコルを設計するシステムと方法 | |
CN108683647B (zh) | 一种基于多重加密的数据传输方法 | |
CN110048849B (zh) | 一种多层保护的会话密钥协商方法 | |
CN110020524B (zh) | 一种基于智能卡的双向认证方法 | |
JP2008545353A (ja) | 未知の通信当事者間における信頼できる関係の確立 | |
CN101378320B (zh) | 一种认证方法和认证*** | |
CN104901935A (zh) | 一种基于cpk的双向认证及数据交互安全保护方法 | |
CN113630248B (zh) | 一种会话密钥协商方法 | |
CN107682152B (zh) | 一种基于对称密码的群组密钥协商方法 | |
KR20060133403A (ko) | Ocsp응답자의 세션 개인키의 노출에 대한 검출 시스템및 그 검출 방법 | |
CN114422135A (zh) | 一种基于椭圆曲线的可验证的不经意传输方法 | |
CN113285959A (zh) | 一种邮件加密方法、解密方法及加解密*** | |
CN114826656A (zh) | 一种数据链路可信传输方法和*** | |
CN110999202A (zh) | 用于对数据进行高度安全、高速加密和传输的计算机实现的***和方法 | |
CN114915396B (zh) | 一种基于国密算法的跳变密钥数字通信加密***和方法 | |
CN111416712B (zh) | 基于多个移动设备的量子保密通信身份认证***及方法 | |
CN114826659B (zh) | 一种加密通讯方法及*** | |
CN112713995A (zh) | 一种用于物联网终端的动态通信密钥分发方法及装置 | |
CN112165386A (zh) | 一种基于ecdsa的数据加密方法及*** | |
CN113300842B (zh) | 一种提高对称加密算法安全性的方法 | |
CN111245611B (zh) | 基于秘密共享和可穿戴设备的抗量子计算身份认证方法及*** | |
Toorani | SMEmail-a new protocol for the secure e-mail in mobile environments | |
CN112423295B (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 |