CN110061836B - 一种具有前向安全性的组密钥分发方法 - Google Patents
一种具有前向安全性的组密钥分发方法 Download PDFInfo
- Publication number
- CN110061836B CN110061836B CN201910285199.XA CN201910285199A CN110061836B CN 110061836 B CN110061836 B CN 110061836B CN 201910285199 A CN201910285199 A CN 201910285199A CN 110061836 B CN110061836 B CN 110061836B
- Authority
- CN
- China
- Prior art keywords
- user
- key
- group
- users
- polynomial
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/065—Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种具有前向安全性的组密钥分发方法。为了实现组内用户之间的安全通信,需要用组密钥对通信内容进行加解密。因此在组内安全通信开始之前,需要将本次通信用的组密钥安全分发给组内需要进行通信的用户。本发明解决的关键问题是如何在无可信第三方的情况下进行具有前向安全性的组密钥分发。本发明利用对称二元多项式使得组内每对用户之间可以协商出一个对称密钥,利用该对称密钥实现组密钥的安全分发。同时,本发明为每个用户维护一张通信记录表,根据该记录表更新用于安全分发下一轮组内通信的组密钥的用户之间的对称密钥,从而实现具有前向安全性的组密钥分发。
Description
技术领域
本发明属于信息安全技术领域,涉及一种组密钥分发方法,具体涉及一种具有前向安全性的组密钥分发方法。
背景技术
组内安全通信有着广泛的应用价值。例如,在一个企业中,董事长召集各部门领导通过公开信道进行安全的语音会议或视频会议,或者技术部门通过公开信道进行安全的技术方案讨等等,这些都需要安全的组内通信。如何做到安全的组内通信呢?通常的做法是给需要进行通信的组内用户安全分发一个组密钥,用这个组密钥对这些用户的通信信息进行加解密。安全分发组密钥的方法通常有两类:一类是可信第三方与组内每个用户之间都有一个”用户对密钥”,可信第三方随机选择一个组密钥,然后用它与用户之间的“用户对密钥”加密该组密钥,并将加密后的组密钥发给对应的用户,收到加密组密钥的用户利用他与可信第三方之间的“用户对密钥”对其进行解密从而获得组密钥。获得组密钥的用户之间可以开始进行安全的组内通信了。这里的可信第三方在实际生活中通常由服务器扮演,但在一些应用场合,用户并不信任服务器,他们只信任自己。因此,产生了另一类分发方法:组内任意两个用户之间都有一个“用户对密钥”,当组内一个用户发起与组内其他多个用户的组内安全通信时,该用户随机选择一个组密钥,然后用他与这些用户之间的“用户对密钥”对该组密钥进行加密,并把加密后的组密钥发送给这些用户。收到加密组密钥的用户利用他与发生用户之间的“用户对密钥”对其进行解密从而获得组密钥。获得组密钥的用户之间可以开始进行安全的组内通信了。但是这种方法需要每个用户维护n(n-1)/2个“用户对密钥”(假设组内有n个用户)会带来比较大的存储开销,不适用于通过移动设备进行组内通信的用户;而且用户之间的“用户对密钥”是固定不变的,这会带来一些安全问题,例如,在某次组内通信过程中不小心泄漏了某两个用户之间的“用户对密钥”,那么敌手可以通过该“用户对密钥”获得他们之前参与的组内通信的通信信息。因此,具有前向安全性的组密钥分发是一个实际应用价值很大、非常值得研究的问题。
发明内容
为了解决上述的技术问题,本发明提供了一种具有前向安全性的组密钥分发方法。
本发明所采用的技术方案是:一种具有前向安全性的组密钥分发方法,假设组内有n个用户{U1,U2,…,Un},用户Uk(k=1,2,…,n)随机创建的一个t次对称二元多项式:fk(x,y)=(ak00+ak10x+ak01y+ak11xy+ak20x2+ak02y2+ak21x2y+ak12xy2+ak22x2y2+…+akttxtyt)mod q,其中q是一个大素数,akij=akji;此外,有n+1个常数是公开信息{x1,x2,…,xn,x’};k=1,2,…,n;ak00、…、aktt是二元多项式fk(x,y)的系数,由用户Uk随机选择;
其特征在于,所述方法包括以下步骤:
步骤1:系统初始化;
步骤1的具体实现包括以下子步骤:
步骤1.1:用户Uk随机创建一个t次对称二元多项式fk(x,y),并分别将x1,x2,…,xn,x’作为第一参数带入到二元多项式fk(x,y)中,产生n+1个t次一元多项式:fk(x1,y),fk(x2,y),…,fk(xn,y),fk(x’,y);
步骤1.2:用户Uk通过安全信道将fk(xl,y)和fk(x’,y)发送给用户Ul,l=1,2,…,k-1,k+1,…,n;
步骤1.3:用户Uk创建一个n×n的二维表Ak,并将表里的n×n个元素初始化为0;
步骤2:每个用户检测步骤1中其他用户随机生成的二元多项式是否是对称的t次二元多项式;
若是,则继续执行步骤3;
若否,则终止执行或重启初始化过程;
步骤3:具有前向安全性的组密钥分发;
步骤4:组密钥的安全获取。
本发明方法与现有的技术相比有如下的优点和有益效果:
本发明解决了安全的组内通信应用中没有可信第三方参与的安全组密钥分发问题,并且解决了“用户对密钥”泄漏带来的前向安全问题,具有非常好的实际应用价值。此外,本发明提出的方法需要较少的计算量和存储量,因此非常适合通过手机、iPad等资源有限设备进行组内通信的用户。
附图说明
图1:本发明实施例的系统初始化流程图。
图2:本发明实施例的组密钥分发和获取流程图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
本发明提供的一种具有前向安全性的组密钥分发方法,假设组内有n个用户{U1,U2,…,Un},用户Uk(k=1,2,…,n)随机创建的一个t次对称二元多项式:fk(x,y)=(ak00+ak10x+ak01y+ak11xy+ak20x2+ak02y2+ak21x2y+ak12xy2+ak22x2y2+…+akttxtyt)mod q,其中q是一个大素数,akij=akji;此外,有n+1个常数是公开信息{x1,x2,…,xn,x’};k=1,2,…,n;ak00、…、aktt是二元多项式fk(x,y)的系数,由用户Uk随机选择;
则方法包括以下步骤:
步骤1:系统初始化;
请见图1,步骤1的具体实现包括以下子步骤:
步骤1.1:用户Uk(k=1,2,…,n)随机创建一个t次对称二元多项式:
fk(x,y)=ak00x0y0+ak10x+ak01y+ak11xy+ak20x2+ak02y2+ak22x2y2+…+akttxtyt,
其中多项式中的系数均随机选自有限域GF(q)(q为一个大素数),并且当i≠j时有akij=akji(i=0,1,…,t;j=0,1,…,t),然后分别将x1,x2,…,xn,x’作为第一参数带入到二元多项式fk(x,y)中,产生n+1个t次一元多项式:
fk(x1,y)=((ak00x1 0y0+ak10x1+…+akt0x1 t)+(ak01+ak11x1+…+akt1x1 t)y+…+(ak0t+ak1tx1+…+akttx1 t)yt)mod q,
fk(x2,y)=((ak00x2 0y0+ak10x2+…+akt0x2 t)+(ak01+ak11x2+…+akt1x2 t)y+…+(ak0t+ak1tx2+…+akttx2 t)yt)mod q,
……
fk(xn,y)=((ak00xn 0y0+ak10xn+…+akt0xn t)+(ak01+ak11xn+…+akt1xn t)y+…+(ak0t+ak1txn+…+akttxn t)yt)mod q,
fk(x′,y)=((ak00x′0y0+ak10x′+…+akt0x′t)+(ak01+ak11x′+…+akt1x′t)y+…+(ak0t+ak1tx′+…+akttx′t)yt)mod q。
步骤1.2:用户Uk通过安全信道将(fk(xl,y),fk(x’,y))发送给用户Ul(l=1,2,…,k-1,k+1,…,n);
步骤1.3:用户Uk(k=1,2,…,n)创建一个n×n的二维表Ak:
其中的元素均初始化为0。
步骤2:二元多项式的一致性验证(即即每个用户检测步骤1中其他用户随机生成的二元多项式是否是对称的t次二元多项式);
二元多项式的一致性验证具体包括以下子步骤:
步骤2.1:用户Uk(k=1,2,…,n)首先验证收到的2(n-1)个一元多项式(f1(xk,y),f2(xk,y),…,fk-1(xk,y),fk+1(xk,y),…,fn(xk,y),f1(x’,y),f2(x’,y),…,fk-1(x’,y),fk+1(x’,y),…,fn(x’,y))是否均是t次一元多项式,如果是,则执行下面的步骤,否则终止执行或重启初始化过程;
步骤2.2:然后验证收到的2(n-1)个一元多项式是否均是由对称二元多项式产生的,具体验证步骤如下:
步骤3:具有前向安全性的组密钥分发;
步骤3.1:用户Uk随机选择一个组密钥key,然后计算他与用户Ur1之间的“用户对密钥”:keyk,r1=(fk(xk,xr1)+fk(x’,xk+xr1+Ak[k][r1]×x’)mod q),计算他与用户Ur2之间的“用户对密钥”:keyk,r2=(fk(xk,xr2)+fk(x’,xk+xr2+Ak[k][r2]×x’))mod q,…,计算他与用户Urm之间的“用户对密钥”:keyk,rm=(fk(xk,xrm)+fk(x’,xk+xrm+Ak[k][rm]×x’))mod q;
步骤3.2:用户Uk更新自己的二维表Ak,具体更新步骤如下:
步骤3.2.1:随机生成m个随机数r1′,r′2,…,r′m;
步骤3.2.2:更新Ak的第k行:
Ak[k][r1]=(Ak[k][r1]+r1′)mod q,
Ak[k][r2]=(Ak[k][r2]+r′2)mod q,
…,
Ak[k][rm]=(Ak[k][rm]+r′m)mod q。
步骤4:组密钥的安全获取;
请见图2,用户Url(l=1,2,…,m)安全获取组密钥的具体实现包括以下子步骤:
步骤4.1:用户Url获得组密钥key和随机数,具体步骤如下:
步骤4.1.1:用户Url计算他与用户Uk之间的“用户对密钥”:
keyk,rl=(fk(xrl,xk)+fk(x’,xk+xrl+Arl[k][rl]×x’))mod q;
步骤4.2:用户Url根据随机数rl′对自己的二维表Arl进行如下更新:
Arl[k][rl]=(Ak[k][rl]+rl′)modq。
本发明有效地解决了在安全的组内通信应用中没有可信第三方参与的安全组密钥分发问题,并且解决了“用户对密钥”泄漏带来的前向安全问题,具有非常好的实际应用价值。此外,本发明提出的方法需要较少的计算量和存储量,因此非常适合通过手机、iPad等资源有限设备进行组内通信的用户。
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
Claims (1)
1.一种具有前向安全性的组密钥分发方法,假设组内有n个用户{U1,U2,…,Un},用户Uk随机创建的一个t次对称二元多项式:fk(x,y)=(ak00+ak10x+ak01y+ak11xy+ak20x2+ak02y2+ak21x2y+ak12xy2+ak22x2y2+…+akttxtyt)mod q,其中q是一个大素数,akij=akji;此外,有n+1个常数是公开信息{x1,x2,…,xn,x’};k=1,2,…,n;ak00、…、aktt是二元多项式fk(x,y)的系数,由用户Uk随机选择;其中,i=0,1,…,t;j=0,1,…,t;
其特征在于,所述方法包括以下步骤:
步骤1:系统初始化;
步骤1的具体实现包括以下子步骤:
步骤1.1:用户Uk随机创建一个t次对称二元多项式fk(x,y),并分别将x1,x2,…,xn,x’作为第一参数带入到二元多项式fk(x,y)中,产生n+1个t次一元多项式:fk(x1,y),fk(x2,y),…,fk(xn,y),fk(x’,y);
步骤1.2:用户Uk通过安全信道将fk(xl,y)和fk(x’,y)发送给用户Ul,l=1,2,…,k-1,k+1,…,n;
步骤1.3:用户Uk创建一个n×n的二维表Ak,并将表里的n×n个元素初始化为0;
步骤2:每个用户检测步骤1中其他用户随机生成的二元多项式是否是对称的t次二元多项式;
若是,则继续执行步骤3;
若否,则终止执行或重启初始化过程;
步骤2的具体实现内包括以下子步骤:
步骤2.1:用户Uk验证收到的2(n-1)个一元多项式(f1(xk,y),f2(xk,y),…,fk-1(xk,y),fk+1(xk,y),…,fn(xk,y),f1(x’,y),f2(x’,y),…,fk-1(x’,y),fk+1(x’,y),…,fn(x’,y))是否均是t次一元多项式;
步骤2.2:用户Uk通过验证等式f1(xk,x’)=f1(x’,xk),f2(xk,x’)=f2(x’,xk),…,fk-1(xk,x’)=fk-1(x’,xk),…,fn(xk,x’)=fn(x’,xk)是否成立来确定收到的2(n-1)个一元多项式是否均是由对称二元多项式产生的;
如果步骤2.1和步骤2.2中的验证均通过,则说明用户Uk收到的2(n-1)个一元多项式是合法的,均是由对称的二元t次多项式产生的;
步骤3:具有前向安全性的组密钥分发;
则步骤3的具体实现内包括以下子步骤:
步骤3.1:用户Uk随机选择一个组密钥key,然后计算他与用户Ur1之间的“用户对密钥”keyk,r1=(fk(xk,xr1)+fk(x’,xk+xr1+Ak[k][r1]×x’))mod q,计算他与用户Ur2之间的“用户对密钥”keyk,r2=(fk(xk,xr2)+fk(x’,xk+xr2+Ak[k][r2]×x’))mod q,…,计算他与用户Urm之间的“用户对密钥”keyk,rm=(fk(xk,xrm)+fk(x’,xk+xrm+Ak[k][rm]×x’))mod q;
步骤3.2:用户Uk更新自己的二维表Ak,以便下一次Uk与{Ur1,Ur2,…,Urm}这些用户之间生成新的“用户对密钥”, 从而实现前向安全性;
首先随机生成m个随机数r1′,r2′,…,rm′,然后对Ak进行更新:
Ak[k][r1]=(Ak[k][r1]+r1′)modq,
Ak[k][r2]=(Ak[k][r2]+r2′)modq,
…,
Ak[k][rm]=(Ak[k][rm]+rm′)modq;
步骤4:组密钥的安全获取;
步骤4的具体实现包括以下子步骤:
步骤4.1:用户Url计算他与用户Uk之间的“用户对密钥”keyk,rl=(fk(xrl,xk)+fk(x’,xk+xrl+Arl[k][rl]×x’))mod q,接着用密钥keyk,rl对进行解密得到组密钥key和随机数rl′;l=1,2,…,m;
步骤4.2:用户Url根据随机数rl′更新自己的二维表Arl:
Arl[k][rl]=(Ak[k][rl]+rl′)modq。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910285199.XA CN110061836B (zh) | 2019-04-10 | 2019-04-10 | 一种具有前向安全性的组密钥分发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910285199.XA CN110061836B (zh) | 2019-04-10 | 2019-04-10 | 一种具有前向安全性的组密钥分发方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110061836A CN110061836A (zh) | 2019-07-26 |
CN110061836B true CN110061836B (zh) | 2021-09-24 |
Family
ID=67318742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910285199.XA Active CN110061836B (zh) | 2019-04-10 | 2019-04-10 | 一种具有前向安全性的组密钥分发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110061836B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110690967B (zh) * | 2019-12-11 | 2021-03-02 | 杭州字节信息技术有限公司 | 一种不依赖于服务端安全的即时通信密钥确立方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101790163A (zh) * | 2010-01-08 | 2010-07-28 | 电子科技大学 | 面向Ad Hoc网络的动态密钥交换协议 |
EP2667539A1 (en) * | 2012-05-21 | 2013-11-27 | Koninklijke Philips N.V. | Key sharing methods, device and system for configuration thereof. |
CN103731825A (zh) * | 2013-12-20 | 2014-04-16 | 北京理工大学 | 一种基于桥式的无线传感网密钥管理方案 |
CN104854814A (zh) * | 2012-12-21 | 2015-08-19 | 皇家飞利浦有限公司 | 密钥共享网络设备及其配置 |
CN107005408A (zh) * | 2014-12-09 | 2017-08-01 | 皇家飞利浦有限公司 | 公共密钥加密系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957101B (zh) * | 2014-05-15 | 2017-05-24 | 三星电子(中国)研发中心 | 一种群组通信中的组密钥建立方法 |
CN109194476B (zh) * | 2018-09-28 | 2020-08-25 | 中国科学技术大学 | 安全高效的线上线下组密钥分发方法 |
-
2019
- 2019-04-10 CN CN201910285199.XA patent/CN110061836B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101790163A (zh) * | 2010-01-08 | 2010-07-28 | 电子科技大学 | 面向Ad Hoc网络的动态密钥交换协议 |
EP2667539A1 (en) * | 2012-05-21 | 2013-11-27 | Koninklijke Philips N.V. | Key sharing methods, device and system for configuration thereof. |
CN104854814A (zh) * | 2012-12-21 | 2015-08-19 | 皇家飞利浦有限公司 | 密钥共享网络设备及其配置 |
CN103731825A (zh) * | 2013-12-20 | 2014-04-16 | 北京理工大学 | 一种基于桥式的无线传感网密钥管理方案 |
CN107005408A (zh) * | 2014-12-09 | 2017-08-01 | 皇家飞利浦有限公司 | 公共密钥加密系统 |
Non-Patent Citations (1)
Title |
---|
《Centralized Group Key Establishment Protocol without a Mutually Trusted Third Party》;Lein Harn等;《Mobile Netw Appl》;20161121;正文1132–1140页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110061836A (zh) | 2019-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11108565B2 (en) | Secure communications providing forward secrecy | |
US11552792B2 (en) | Systems and methods for generating signatures | |
JP7011646B2 (ja) | 量子通信及びトラステッドコンピューティングに基づくデータセキュリティのための方法及びシステム | |
CN107948189B (zh) | 非对称密码身份鉴别方法、装置、计算机设备及存储介质 | |
US9106410B2 (en) | Identity based authenticated key agreement protocol | |
US8331568B2 (en) | Efficient distribution of computation in key agreement | |
JP2019533384A (ja) | データ伝送方法、装置およびシステム | |
JP2003298568A (ja) | 鍵供託を使用しない、認証された個別暗号システム | |
JP2014514860A (ja) | セキュリティアソシエーションの発見法 | |
CN110635901B (zh) | 用于物联网设备的本地蓝牙动态认证方法和系统 | |
TWI760546B (zh) | 用於高安全性高速資料加密及傳輸的電腦實施系統與方法 | |
CN110493272B (zh) | 使用多重密钥的通信方法和通信系统 | |
US10630476B1 (en) | Obtaining keys from broadcasters in supersingular isogeny-based cryptosystems | |
CN116957064A (zh) | 基于知识蒸馏的联邦学习隐私保护模型训练方法及系统 | |
CN111478911A (zh) | 一种采用轻量化密钥交换算法的即时通信加密方法 | |
CN113098681B (zh) | 云存储中口令增强且可更新的盲化密钥管理方法 | |
WO2020042023A1 (zh) | 一种即时通信的数据加密方法及装置 | |
CN110061836B (zh) | 一种具有前向安全性的组密钥分发方法 | |
Das et al. | A decentralized open web cryptographic standard | |
CN111756537B (zh) | 基于sm2标准的两方协同解密方法、系统及存储介质 | |
CN111565108B (zh) | 签名处理方法、装置及系统 | |
US20220345298A1 (en) | Systems and methods for providing signatureless, confidential and authentication of data during handshake for classical and quantum computing environments | |
CN111615107B (zh) | 一种数据交互方法、终端及系统 | |
CN117150568A (zh) | 基于单向不经意哈希函数的数据集隐私求交方法和系统 | |
CN114584298A (zh) | 一种量子安全ssl协议应用方法与系统 |
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 |