CN101309137A - 一种基于秘密共享的单向函数树组播密钥管理方法 - Google Patents
一种基于秘密共享的单向函数树组播密钥管理方法 Download PDFInfo
- Publication number
- CN101309137A CN101309137A CNA2008100630208A CN200810063020A CN101309137A CN 101309137 A CN101309137 A CN 101309137A CN A2008100630208 A CNA2008100630208 A CN A2008100630208A CN 200810063020 A CN200810063020 A CN 200810063020A CN 101309137 A CN101309137 A CN 101309137A
- Authority
- CN
- China
- Prior art keywords
- key
- group
- new
- blind
- node
- 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.)
- Granted
Links
Images
Abstract
本发明涉及一种基于秘密共享的单向函数树组播密钥管理方法。目前的组播协议缺乏有效的安全机制来满足组播应用的安全性要求。本发明在更新密钥传递过程中,采用密钥加密盲密钥的方式进行传送,包括产生密钥层次树和盲密钥层次树、生成,分发与恢复组密钥、组成员加入、组成员离开和周期性密钥更新。其中产生盲密钥层次树的具体方法是:密钥层次树中的每个节点利用对应的密钥K,通过函数S=g(K)得到密钥K的盲密钥S,其中g为单向函数。本发明方法利用秘密共享方法,能够通过只传送盲密钥S和有效共享秘密份额来进行密钥更新,从而避免了传送真实密钥进行密钥更新,降低了密钥被截获并破解的可能性,增强了抗攻击性,具有更高的安全性。
Description
技术领域
本发明属于组播密钥管理技术领域,涉及一种基于秘密共享的单向函数树组播密钥管理方法,具体是一种结合单向函数和秘密共享进行组播密钥管理的方法。
背景技术
随着Internet的迅速普及和爆炸性发展,在Internet上产生了许多新的应用,其中不少是高带宽的多媒体应用,如网络视频会议、网络音/视频广播、视频点播、股市行情发布、多媒体远程教育等。组播技术是顺应这种应用需要而产生的一种新技术。组播传输提高了数据传送效率,减少了网络出现拥塞的可能性。然而,目前的组播协议缺乏有效的安全机制来满足组播应用的安全性要求,而采用明文传输的组播报文在网络上很容易被窃听、冒充和篡改。组播安全问题是迫切需要解决的问题,其内容包括数据保密、组管理、源认证等多个方面。
组播密钥管理为参与组播的成员生成、分发和更新组密钥,即解决组管理的安全问题,功能主要包括两个方面:一个方面是密钥的分发;另一个方面是对密钥进行管理以适应组成员关系的变化。组密钥是所有组成员都知道的密钥,用来对组播报文进行加密/解密、认证等操作,以满足保密、组成员认证、完整性等需求。相比单播的密钥管理,前向保密性、后向保密性和合谋破解是组播密钥管理特有的安全问题。
到目前为止,已提出了许多组播密钥管理方案,如集中式基于树的密钥管理(Centralized Tree-Based Key Management,CTKM)方案、单向函数树(One-Way Function Tree,OFT)方案和Iolus方案等。
单向函数树(One-Way Function Tree,OFT)方案利用左右子节点密钥的2个g函数值通过f函数计算产生新的密钥。其中g是单向函数,f是混合函数。组控制者创建和维护一棵密钥层次树,图1表示OFT方案的密钥层次树结构。OFT的叶子节点密钥是由组控制者和对应成员使用公开密钥交换算法(比如Diffie-Hellman密钥交换算法)秘密协商得到的,在组控制者和对应成员之间共享的成员私钥,而根节点密钥和中间节点密钥由组控制者利用孩子节点密钥,通过函数Kx=f(g(Kxl),g(Kxr))计算得到,式中Kx为节点x的密钥;xl和xr分别为节点x的左右孩子节点,g(K)为K的盲密钥。成员保存对应的叶子节点密钥,及从叶子节点到根节点之间所有中间节点的兄弟节点的盲密钥。
在(k,n)Shamir秘密共享方法中,秘密S被分解成为n个共享秘密份额Si(1≤i≤n),如果要通过共享秘密份额Si恢复秘密S,必须获得至少k个共享秘密份额Si才能正确恢复原先的秘密。(k,n)Shamir秘密共享方法使用了有限伽罗瓦域上的一个随机(k-1)次多项式,例如f(x)=(ak-1xk-1+...+a1x1+a0)mod p。
秘密S分解过程由以下四个步骤构成:
1)找一个素数p大于n和秘密S;
2)将常量a0设为S;
3)选择k-1个随机系数a1,a2,...,ak-1,构建多项式f(x);
4)在n个离散点上计算f(x)得到n个共享秘密份额。
秘密S恢复过程是利用拉格朗日插值函数 由n个共享秘密份额中的任意k个构建得到多项式f(x),然后计算f(0)即可得到秘密S。
发明内容
本发明的目的是提供一种基于秘密共享的单向函数树组播密钥管理方法(Secret-Sharing-Based One-Way Function Tree,SOFT),它是一种新型的集中式层次型组播密钥管理方法。该方法引入(2,n)Shamir秘密共享方法并结合单向函数g来实现密钥更新,即用g函数值作为共享秘密份额,用秘密恢复函数计算得到上层节点密钥,以树型结构来进行组播密钥管理。整个组播组分为组控制者(Group Controllor,GC)和组成员。节点ki对应的密钥为Ki,对应的盲密钥为Si。
本发明提供的组播密钥管理方法在更新密钥传递过程中,采用密钥加密盲密钥的方式进行传送,相比传统的利用密钥加密新密钥进行传送的方式,具有更高的安全性。而且,利用秘密共享方法,能够通过只传送盲密钥Si和有效共享秘密份额(Active Sharing,AS)来进行密钥更新,从而避免了传送真实密钥进行密钥更新,降低了密钥被截获并破解的可能性,增强了本发明提供的组播密钥管理方法的抗攻击性。
本发明方法包括产生密钥层次树和盲密钥层次树、生成,分发与恢复组密钥、组成员加入、组成员离开和周期性密钥更新五个内容。
1.产生密钥层次树
密钥层次树是实现基于树的组播密钥管理的基础。组播组成员加入和离开的密钥更新过程需要根据密钥层次树的结构来进行。密钥层次树产生的方法是:
产生密钥层次树和盲密钥层次树中产生密钥层次树包括产生密钥层次树叶子节点的私钥、产生钥层次树根节点和中间节点的密钥,其具体方法是:
组控制者与各个组成员通过密钥交换协议产生密钥层次树叶子节点y,密钥层次树叶子节点对应的密钥是各个组成员的私钥Ky,该私钥Ky为组控制者与对应的组成员之间共享;
通过函数Kx=S(Sxl,Sxr)得到密钥层次树根节点对应的密钥和中间节点对应的密钥,其中Kx为根节点或中间节点x对应的密钥,xl和xr分别为节点x的左右子节点,Sxl、Sxr分别是子节点xl和xr的盲密钥,S为秘密恢复算法。
产生盲密钥层次树的具体方法是:密钥层次树中的每个节点x或y利用对应的密钥Kx或Ky,通过函数Sx=g(Kx)得到密钥Kx的盲密钥Sx,通过函数Sy=g(Ky)得到密钥Ky的盲密钥Sy,其中g为单向函数;这些盲密钥构成的树即为盲密钥层次树,盲密钥层次树和密钥层次树具有相同的树结构,盲密钥层次树中的节点对应的是在密钥层次树中处于相同位置的节点对应密钥的盲密钥。
密钥层次树和盲密钥层次树产生后,每个组成员保存其对应叶子节点到根节点路径上所有节点的密钥以及这些节点的兄弟节点的盲密钥。
秘密恢复算法S是利用拉格朗日插值函数的方法,为成熟的现有技术。
密钥交换协议和单向函数g为成熟的现有技术。
2.生成、分发与恢复组密钥、
组密钥是所有组成员的共享密钥。如果它用于加密组播业务数据,则能保证只有属于该组播组的成员才能正确解密组播业务数据。
组密钥的生成,分发与恢复的方法是:
1)组控制者产生组密钥Kg,并且用组密钥和根节点的盲密钥Sr构造一个秘密共享多项式,利用该秘密多项式计算出一个有效共享秘密份额AS;
2)组控制者以组播的方式向所有组成员发送共享秘密份额AS。
3)收到共享秘密份额AS的组成员,利用保存的根节点的盲密钥Sr,通过Kg=S(Sr,AS)恢复出组密钥Kg。
3.组成员加入
组成员加入过程包括组控制者对请求加入者身份的认证和组成员的密钥更新。组控制者对请求者身份认证的目的是验证请求者身份的合法性,组成员的密钥更新是为了保证组播密钥的前向保密性。
组成员加入的具体步骤是:
1)组控制者对发送加入请求者进行身份验证,允许通过验证者加入到组中。组控制者与新加入的成员通过密钥交换协议产生新加入成员的私钥。
密钥交换协议为成熟的现有技术。
2)组控制者根据当前密钥层次树的结构,确定新加入成员在该密钥层次树中的插入节点,将新成员作为该插入节点的子节点加入到密钥层次树中。
3)组控制者利用新成员的私钥加密从新成员对应叶子节点到根节点路径上所有节点的兄弟节点对应密钥的盲密钥,然后发送给新加入成员;
4)组控制者产生新的组密钥;
5)组控制者利用新成员的盲密钥按照密钥层次树生成过程中使用的计算方法计算得到从新成员对应叶子节点到根节点路径上的所有新密钥和新盲密钥;
6)组控制者用根节点的新盲密钥和新组密钥构造新的秘密共享多项式,并计算得到新的有效共享秘密份额AS’;
7)组控制者采用对应的密钥加密新盲密钥,然后以组播的方式发送给所有组成员。只有拥有对应密钥的节点才能正确解密所要获得的数据;
8)组控制者用根节点的新密钥加密6)中得到的AS’,以组播的方式发送给所有组成员;
9)各个组成员根据接收到的盲密钥,按照密钥层次树生成过程中使用的计算方法计算得到相应中间节点及根节点的新密钥和新盲密钥,再结合所接收到的有效共享秘密份额AS’,通过组密钥恢复方法计算出新的组密钥,完成密钥更新过程。
4.组成员离开
组成员离开过程包括组控制者对离开成员信息的处理和组成员的密钥更新。组控制者对离开成员的处理主要是确认离开成员的身份,并删除其在组内的相关信息,组成员的密钥更新是为了保证组播密钥的后向保密性。
组成员离开的具体步骤是:
1)组控制者验证发送离开请求的成员身份。验证通过后,组控制者删除离开节点在密钥分布树中的对应的叶子节点;
2)组控制者根据当前树的情况,确定离开点的位置。离开点指离开成员的父节点;
3)组控制者产生新的组密钥;
4)组控制者为离开成员生成一个替代盲密钥,该替代盲密钥对离开成员是未知的。组控制者利用该替代盲密钥,按照密钥层次树生成过程中使用的计算方法计算得到从离开成员对应叶子节点到根节点路径上所有节点对应的新密钥和新盲密钥;
5)组控制者用根节点的新盲密钥和新组密钥构造新的秘密共享多项式,并计算得到新的有效共享秘密份额AS’;
6)组控制者用对应的密钥加密新盲密钥,然后以组播的方式发送给剩余的所有组成员。只有拥有对应密钥的节点才能正确解密所要获得的数据;
7)组控制者用根节点的新密钥加密5)中得到的AS’,以组播的方式发送给剩余的组成员;
8)各个剩余的组成员根据接收到的盲密钥,按照密钥层次树生成过程中使用的计算方法计算得到相应中间节点及根节点的新密钥和新盲密钥,再结合所接收到的有效共享秘密份额AS’,通过组密钥恢复方法计算出新的组密钥,完成密钥更新过程。
5.周期性密钥更新
为了保证密钥的时效性,组控制者以一定的周期生成新的组密钥,并进行密钥更新。
周期性密钥更新的具体步骤是:
1)组控制者产生一个新的组密钥;
2)组控制者用根节点的盲密钥和新组密钥构造新的秘密共享多项式,并计算得到新的有效共享秘密份额AS’;
3)组控制者以组播的方式将新的AS’发送给所有组成员;
4)各个组成员利用根节点的盲密钥和新的AS’,通过组密钥恢复方法计算出新的组密钥,完成密钥更新过程。
本发明提供的基于秘密共享的单向函数树组播密钥管理方法消除了CTKM方案在成员变动更新时更新开销较大以及OFT方案在周期性更新密钥时更新过程复杂、更新消息长、计算开销高的缺陷。当组成员数量很大时,本发明提出的方法具有OFT方案在成员变动引起的密钥更新过程中都具有较小的更新开销的优点,同时还具有CTKM方案在周期性更新过程中计算开销小的优点。
附图说明
图1OFT方案的密钥层次树结构图;
图2本发明的密钥层次树结构图;
图3本发明的盲密钥层次树结构图;
图4成员m3所保存的密钥示意图;
图5成员m3所保存的盲密钥示意图;
图6成员m8加入前的密钥层次树;
图7成员m8加入前的盲密钥层次树;
图8成员m8加入后的密钥层次树。
图9成员m8加入后的盲密钥层次树;
图10成员m8离开前的密钥层次树;
图11成员m8离开前的盲密钥层次树;
图12成员m8离开后的密钥层次树;
图13成员m8离开后的盲密钥层次树。
具体实施方式
本发明适用于任何需要组播密钥管理的应用场景。
在具体实施方式的阐述过程中,符号s→{m}:x表示发送者s将消息x发送给成员m,符号{x}K表示用密钥K对消息x进行加密。
1.密钥层次树的产生
图2和图3分别表示采用本发明中提供的方法,由组控制者创建的含有8个组成员的密钥层次树和盲密钥层次树。叶子节点k1,k2...,k8分别对应组成员和组控制者共享的私钥K1,K2,...,K8;Ki(i=1,2,...,8)是在成员mi加入组时,与组控制者通过密钥交换协议(如Diffie-Hellman密钥交换协议)产生的成员私钥。中间节点k1-2,k3-4,k5-6,k7-8,k1-4,k5-8和根节点k1-8各自对应的密钥为K1-2,K3-4,K5-6,K7-8,K1-4,K5-8和K1-8,这些密钥用于加密盲密钥,所以称他们为密钥加密密钥。这些密钥由组控制者分三步计算得到:
1).K1-2=S(g(K1),g(K2)),K3-4=S(g(K3),g(K4)),L5-6=S(g(K5),g(K6)),K7-8=S(g(K7),g(K8));
2).K1-4=S(g(K1-2),g(K3-4)),K5-8=S(g(K5-6),g(K7-8));
3).K1-8=S(g(K1-4),g(K5-8))。
密钥层次树和盲密钥层次树生成之后,每个组成员保存其对应叶子节点到根节点路径上所有节点的密钥和盲密钥以及这些节点的兄弟节点的盲密钥。图4和图5分别表示成员m3所保存的密钥示意图和m3所保存的盲密钥示意图。黑点表示成员m3保存的密钥和盲密钥,分别为K3,K3-4,K1-4,K1-8和S3,S4,S1-2,S3-4,S1-4,S5-8,S1-8。
2.组密钥的生成,分发和恢复过程
为了实现组播
1)组控制者产生组密钥Kg,并且用组密钥和根节点的盲密钥构造一个秘密多项式f(x),利用该秘密多项式f(x)计算出一个有效共享秘密份额AS。
2)组控制者用根节点的密钥加密共享秘密份额AS,然后以组播的方式发送给所有组成员。
3)组成员解密收到的消息获得AS,并且利用保存的根节点的盲密钥Sr,通过Kg=S(Sr,AS)恢复出组密钥Kg。在本实施例中,根节点的盲密钥Sr即为S1-8,各个组成员利用Kg=S(S1-8,AS)恢复出组密钥Kg。
3.组成员加入过程
m8为请求加入的组成员,图6和图7分别表示m8加入前的密钥层次树结构和盲密钥层次树结构。
成员m8加入过程包括以下几个步骤:
1)m8向组控制者发送加入请求,组控制者对m8进行身份验证。验证通过后,组控制者与m8利用密钥交换协议(如Diffie-Hellman密钥交换协议)产生m8的私钥K8,该私钥由组控制者和m8共享。
2)组控制者根据密钥结构树的情况,选定k7-8作为成员m8对应叶子节点k8的插入节点,k8将作为节点k7-8的右子节点插入到密钥层次树中。
3)组控制者利用新成员m8的私钥K8加密盲密钥,向新成员m8发送其所需的盲密钥信息:GC→{m8}:{S7,S5-6,S1-4}K8;
4)组控制者更新组密钥Kg为K’g;
5)组控制者利用新成员m8的盲密钥S8按照密钥层次树生成过程中使用的计算方法计算得到从新成员m8对应叶子节点k8到根节点路径上的所有新密钥和新盲密钥;
6)组控制者用根节点的新盲密钥S’1-8和新组密钥K’g构造新的秘密共享多项式f(x),并计算得到新的有效共享秘密份额AS’;
7)组控制器采用组播的方式发送密钥更新消息,由于该消息采用加密方式传送,所以只有拥有对应密钥的组成员才能正确解密消息的内容,进行密钥更新。在本实施例中,组控制者向成员组发送三条密钥更新消息:
①.组控制者利用成员m7的私钥K7加密新成员m8的盲密钥S8,发送给成员m7:GC→{m7}:{S8}K7;
②.组控制者利用成员m5,m6所拥有的密钥K5-6加密节点k7-8的新盲密钥
S’7-8,发送给成员m5,m6:GC→{m5,m6}:{S’7-8}K5-6;
③.组控制者利用成员m1,m2,m3,m4所拥有的密钥K1-4加密节点k5-8的新盲密钥S’5-8,发送给成员m1,m2,m3,m4:GC→{m1,m2,m3,m4}:{S’5-8}K1-4;
8)组控制者用根节点的新密钥加密AS’并向所有成员组播:
GC→{m1,...,m7,m8}:{AS’}K’1-8;。
9)各个组成员利用收到的密钥更新消息,通过秘密恢复算法以及g函数计算得到从对应叶子节点到根节点路径上的所有密钥和盲密钥,再利用新的共享秘密份额AS’,通过组密钥恢复方法得到新的组密钥K’g,完成密钥更新过程。在本实施例中,各个组成员密钥恢复的具体过程如下所述:
①成员m7:m7原先掌握了盲密钥S8t、S5-6和S1-4,其中,S8t表示m7对应兄弟节点的盲密钥,虽然没有对应兄弟节点,但为了计算得到父节点的密钥,m7存储了组控制者生成的虚拟兄弟节点盲密钥S8t。成员m8加入后,m7得到新节点k8的盲密钥S8,替换原先对应的盲密钥S8t。通过计算
S7=g(K7),K’7-8=S(S7,S8)得到节点k7-8对应的新密钥K’7-8;
S’7-8=g(K’7-8),K’5-8=S(S5-6,S’7-8)得到节点k5-8对应的新密钥K’5-8;
S’5-8=g(K’5-8),K’1-8=S(S1-4,S’5-8)得到根节点k1-8对应的新密钥K’1- 8;
S’1-8=g(K’1-8),K’g=S(S’1-8,AS’)得到新的组密钥K’g。
②成员m5,m6:m5,m6原先掌握了盲密钥S7-8和S1-4。成员m8加入后,m5,m6得到节点k7-8的新盲密钥S’7-8,替换原先对应的盲密钥S7-8。通过计算
S5-6=g(K5-6),K’5-8=S(S5-6,S’7-8)得到节点k5-8对应的新密钥K’5-8;
S’5-8=g(K’5-8),K’1-8=S(S1-4,S’5-8)得到根节点k1-8对应的新密钥K’1- 8;
S’1-8=g(K’1-8),K’g=S(S’1-8,AS’)得到新的组密钥K’g。
③成员m1,m2,m3,m4:m1,m2,m3,m4原先掌握了盲密钥S5-8。成员m8加入后,m1,m2,m3,m4得到节点k5-8的新盲密钥S’5-8,替换原先对应的盲密钥S5-8。通过计算
S1-4=g(K1-4),K’1-8=S(S1-4,S’5-8)得到根节点k1-8对应的新密钥K’1-8;
S’1-8=g(K’1-8),K’g=S(S’1-8,AS’)得到新的组密钥K’g。
④新成员m8:m8在接收到组控制者的数据后,掌握了盲密钥S7、S5-6、S1-4和AS’。通过计算
S8=g(K8),K’7-8=S(S7,S8)得到节点k7-8对应的新密钥K’7-8;
S’7-8=g(K’7-8),K’5-8=S(S5-6,S’7-8)得到节点k5-8对应的新密钥K’5-8;
S’5-8=g(K’5-8),K’1-8=S(S1-4,S’5-8)得到根节点k1-8对应的新密钥K’1- 8;
S’1-8=g(K’1-8),K’g=S(S’1-8,AS’)得到新的组密钥K’g。
成员m8加入,密钥更新完成后的密钥层次树结构和盲密钥层次树结构分别如图8和图9所示。
4.组成员离开过程
m8为请求离开的组成员。图10和图11分别表示m8离开前的密钥层次树结构和盲密钥层次树结构。
成员m8离开过程包括以下几个步骤:
1)成员m8向组控制者发送离开请求,组控制者对m8的身份进行验证.允许成员m8离开后,组控制者删除成员结点m8在密钥分布树中的对应的叶子节点k8;
2)组控制者根据m8的信息,确定叶子节点k8的离开点为k7-8;
3)组控制者更新组密钥Kg为K’g;
4)组控制者为离开的成员m8生成一个替代盲密钥S’8t,并密钥层次树生成过程中使用的计算方法计算得到从离开的成员节点k8到根节点路径上的所有新密钥和新盲密钥;
5)组控制者用根节点的新盲密钥S’1-8和新组密钥K’g来构造新的秘密共享多项式f(x),并计算得到新的有效共享秘密份额AS’;
6)组控制器采用组播的方式发送密钥更新消息,由于该消息采用加密方式传送,所以只有拥有对应的组成员才能正确解密消息的内容,进行密钥更新。
在本实施例中,组控制者向组成员发送三条密钥更新消息:
①.组控制者利用成员m7的私钥K7加密新盲密钥S’8t发送给成员m7:GC→{m7}:{S’8t}K7;
②.组控制者利用成员m5,m6所拥有的密钥K5-6加密节点k7-8的新盲密钥S’7-8,发送给成员m5,m6:GC→{m5,m6}:{S’7-8}K5-6;
③.组制者利用成员m1,m2,m3,m4所拥有的密钥K1-4加密节点k5-8的新盲密钥S’5-8,发送给成员m1,m2,m3,m4:GC→{m1,m2,m3,m4}:{S’5- 8}K1-4;
7)组控制者用根节点的新密钥加密AS′并向剩余的成员组播:
GC→{m1,...,m6,m7}:{AS’}K’1-8;
8)各个组成员利用收到的密钥更新消息,通过秘密恢复算法以及g函数计算得到从对应叶子节点到根节点路径上的所有密钥和盲密钥,再利用新的共享秘密份额AS’,通过组密钥恢复方法得到新的组密钥K’g,完成密钥更新过程。
在本实施例中,各个组成员的密钥恢复过程如下所述:
①.成员m7:m7原先掌握了盲密钥S8、S5-6和S1-4。成员m8离开后,m7得到替代盲密钥S’8t,替换原先对应的盲密钥S8。通过计算
S7=g(K7),K’7-8=S(S7,S’8t)得到节点k7-8对应的新密钥K’7-8;
S’7-8=g(K’7-8),K’5-8=S(S5-6,S’7-8)得到节点k5-8对应的新密钥K’5-8;
S’5-8=g(K’5-8),K’1-8=S(S1-4,S’5-8)得到根节点k1-8对应的新密钥K’1-8;
S’1-8=g(K’1-8),K’g=S(S’1-8,AS’)得到新的组密钥K’g。
②.成员m5,m6:m5,m6原先掌握了盲密钥S7-8和S1-4。成员m8离开后,m5,m6得到节点k7-8的新盲密钥S’7-8替换原先对应的盲密钥S7-8。通过计算
S5-6=g(K5-6),K’5-8=S(S5-6,S’7-8)得到节点k5-8对应的新密钥K’5-8;
S’5-8=g(K’5-8),K’1-8=S(S1-4,S’5-8)得到根节点k1-8对应的新密钥K’1-8;
S’1-8=g(K’1-8),K’g=S(S’1-8,AS’)得到新的组密钥K’g。
③.成员m1,m2,m3,m4:m1,m2,m3,m4原先掌握了盲密钥S5-8。成员m8离开后,m1,m2,m3,m4得到节点k5-8的新盲密钥S’5-8,替换原先对应的盲密钥S5-8。通过计算
S1-4=g(K1-4),K’1-8=S(S1-4,S’5-8)得到根节点k1-8对应的新密钥K’1-8;
S’1-8=g(K’1-8),K’g=S(S’1-8,AS’)得到新的组密钥K’g。
成员m8离开,密钥更新完成后的密钥层次树结构和盲密钥层次树结构分别如图12和图13所示。
5.周期性密钥更新过程
在本实施例中,周期性的密钥更新过程包括以下几个步骤:
1)组控制者更新组密钥Kg为K’g;
2)组控制者用根节点的盲密钥S1-8和新组密钥K’g来构造新的秘密共享多项式f(x),并计算得到新的有效共享秘密份额AS’;
3)组控制者用根节点的密钥加密AS’并向所有成员组播:
GC→{m1,...,m7,m8}:{AS’}K1-8;
4)各个组成员利用保存的根节点盲密钥S1-8和解密得到的新的共享秘密份额AS’,通过K’g=S(S1-8,AS’)得到新的组密钥K’g,完成周期性密钥更新的整个过程。
Claims (1)
1、一种基于秘密共享的单向函数树组播密钥管理方法,包括产生密钥层次树和盲密钥层次树、生成,分发与恢复组密钥、组成员加入、组成员离开和周期性密钥更新,其特征在于:
A.产生密钥层次树和盲密钥层次树中产生密钥层次树包括产生密钥层次树叶子节点的私钥、产生钥层次树根节点和中间节点的密钥,其具体方法是:
组控制者与各个组成员通过密钥交换协议产生密钥层次树叶子节点y,密钥层次树叶子节点对应的密钥是各个组成员的私钥Ky,该私钥Ky为组控制者与对应的组成员之间共享;
通过函数Kx=S(Sxl,Sxr)得到密钥层次树根节点对应的密钥和中间节点对应的密钥,其中Kx为根节点或中间节点x对应的密钥,xl和xr分别为节点x的左右子节点,Sxl、Sxr分别是子节点xl和xr的盲密钥,S为秘密恢复算法;
产生盲密钥层次树的具体方法是:密钥层次树中的每个节点x或y利用对应的密钥Kx或Ky,通过函数Sx=g(Kx)得到密钥Kx的盲密钥Sx,通过函数Sy=g(Ky)得到密钥Ky的盲密钥Sy,其中g为单向函数;这些盲密钥构成的树即为盲密钥层次树,盲密钥层次树和密钥层次树具有相同的树结构,盲密钥层次树中的节点对应的是在密钥层次树中处于相同位置的节点对应密钥的盲密钥;
密钥层次树和盲密钥层次树产生后,每个组成员保存其对应叶子节点到根节点路径上所有节点的密钥以及这些节点的兄弟节点的盲密钥;
B.生成、分发与恢复组密钥的具体步骤是:
(1)组控制者产生组密钥Kg,并且用组密钥和根节点的盲密钥Sr构造秘密共享多项式,利用该秘密共享多项式得到有效共享秘密份额AS;
(2)组控制者以组播的方式向所有组成员发送共享秘密份额AS;
(3)收到共享秘密份额AS的组成员利用保存的根节点的盲密钥Sr,通过Kg=S(Sr,AS)恢复出组密钥Kg;
C.组成员加入的具体步骤是:
(1)组控制者对发送加入请求者进行身份验证,允许通过验证者加入到组中,组控制者与新加入的成员通过密钥交换协议产生新加入成员的私钥Ky;
(2)组控制者根据当前密钥层次树的结构,确定新加入成员在该密钥层次树中的插入节点,将新成员作为该插入节点的子节点加入到密钥层次树中;
(3)组控制者利用新成员的私钥加密从新成员对应叶子节点到根节点路径上所有节点的兄弟节点对应密钥的盲密钥,然后发送给新加入成员;
(4)组控制者产生新的组密钥;
(5)组控制者利用新成员的盲密钥按照密钥层次树生成过程中使用的计算方法计算得到从新成员对应叶子节点到根节点路径上的所有新密钥和新盲密钥;
(6)组控制者用根节点的新盲密钥和新组密钥构造新的秘密共享多项式,并计算得到新的有效共享秘密份额AS’;
(7)组控制者采用对应的密钥加密新盲密钥,然后以组播的方式发送给所有组成员,只有拥有对应密钥的节点才能正确解密所要获得的数据;
(8)组控制者用根节点的新密钥加密6)中得到的AS’,以组播的方式发送给所有组成员;
(9)各个组成员根据接收到的盲密钥,按照密钥层次树生成过程中使用的计算方法计算得到相应中间节点及根节点的新密钥和新盲密钥,再结合所接收到的有效共享秘密份额AS’,通过组密钥恢复方法计算出新的组密钥;
D.组成员离开的具体步骤是:
(1)组控制者验证发送离开请求的成员身份,验证通过后,组控制者删除离开节点在密钥分布树中的对应的叶子节点;
(2)组控制者根据当前树的情况,确定离开点的位置;
(3)组控制者产生新的组密钥;
(4)组控制者为离开成员生成一个替代盲密钥,该替代盲密钥对离开成员是未知的;组控制者利用该替代盲密钥,按照密钥层次树生成过程中使用的计算方法计算得到从离开成员对应叶子节点到根节点路径上所有节点对应的新密钥和新盲密钥;
(5)组控制者用根节点的新盲密钥和新组密钥构造新的秘密共享多项式,并计算得到新的有效共享秘密份额AS’;
(6)组控制者用对应的密钥加密新盲密钥,然后以组播的方式发送给剩余的所有组成员;
(7)组控制者用根节点的新密钥加密5)中得到的AS’,以组播的方式发送给剩余的组成员;
(8)各个剩余的组成员根据接收到的盲密钥,按照密钥层次树生成过程中使用的计算方法计算得到相应中间节点及根节点的新密钥和新盲密钥,再结合所接收到的有效共享秘密份额AS’,通过组密钥恢复方法计算出新的组密钥;
E.周期性密钥更新的具体步骤是:
(1)组控制者产生一个新的组密钥;
(2)组控制者用根节点的盲密钥和新组密钥构造新的秘密共享多项式,并计算得到新的有效共享秘密份额AS’;
(3)组控制者以组播的方式将新的AS’发送给所有组成员;
(4)各个组成员利用根节点的盲密钥和新的AS’,通过组密钥恢复方法计算出新的组密钥,完成密钥更新过程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100630208A CN101309137B (zh) | 2008-07-10 | 2008-07-10 | 一种基于秘密共享的单向函数树组播密钥管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100630208A CN101309137B (zh) | 2008-07-10 | 2008-07-10 | 一种基于秘密共享的单向函数树组播密钥管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101309137A true CN101309137A (zh) | 2008-11-19 |
CN101309137B CN101309137B (zh) | 2010-09-08 |
Family
ID=40125374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100630208A Expired - Fee Related CN101309137B (zh) | 2008-07-10 | 2008-07-10 | 一种基于秘密共享的单向函数树组播密钥管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101309137B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741566B (zh) * | 2009-12-24 | 2012-02-22 | 北京科技大学 | 基于秘密共享加密的实体认证方法 |
CN102523086A (zh) * | 2011-12-07 | 2012-06-27 | 上海交通大学 | 一种隐私保护云存储系统中的密钥恢复方法 |
CN103997463A (zh) * | 2014-05-23 | 2014-08-20 | 中国人民解放军理工大学 | 一种低开销的覆盖网安全组播方法 |
CN104704504A (zh) * | 2012-09-26 | 2015-06-10 | 净睿存储股份有限公司 | 生成加密密钥的多驱动器协作 |
CN106161034A (zh) * | 2015-05-08 | 2016-11-23 | 恩智浦有限公司 | 使用乘法秘密共享的rsa解密 |
CN109510707A (zh) * | 2019-01-16 | 2019-03-22 | 北京交通大学 | 基于树状结构模型的群组密钥管理方法 |
CN110266721A (zh) * | 2019-07-05 | 2019-09-20 | 西南交通大学 | 一种基于同态的云辅助动态通用安全多方计算方法 |
US10623386B1 (en) | 2012-09-26 | 2020-04-14 | Pure Storage, Inc. | Secret sharing data protection in a storage system |
US11032259B1 (en) | 2012-09-26 | 2021-06-08 | Pure Storage, Inc. | Data protection in a storage system |
CN114329617A (zh) * | 2022-03-14 | 2022-04-12 | 浙江大学 | 计算第二价格密封拍卖成交金额的方法及装置、电子设备 |
WO2023116292A1 (en) * | 2021-12-21 | 2023-06-29 | Huawei Technologies Co., Ltd. | Methods, systems, and computer-readable storage media for organizing an online meeting |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101119364A (zh) * | 2007-09-13 | 2008-02-06 | 上海大学 | 可鉴权的Ad Hoc组密钥协商协议 |
-
2008
- 2008-07-10 CN CN2008100630208A patent/CN101309137B/zh not_active Expired - Fee Related
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741566B (zh) * | 2009-12-24 | 2012-02-22 | 北京科技大学 | 基于秘密共享加密的实体认证方法 |
CN102523086B (zh) * | 2011-12-07 | 2014-12-24 | 上海交通大学 | 一种隐私保护云存储系统中的密钥恢复方法 |
CN102523086A (zh) * | 2011-12-07 | 2012-06-27 | 上海交通大学 | 一种隐私保护云存储系统中的密钥恢复方法 |
CN104704504B (zh) * | 2012-09-26 | 2020-09-29 | 净睿存储股份有限公司 | 生成加密密钥的多驱动器协作 |
US10623386B1 (en) | 2012-09-26 | 2020-04-14 | Pure Storage, Inc. | Secret sharing data protection in a storage system |
US11924183B2 (en) | 2012-09-26 | 2024-03-05 | Pure Storage, Inc. | Encrypting data in a non-volatile memory express (‘NVMe’) storage device |
US11032259B1 (en) | 2012-09-26 | 2021-06-08 | Pure Storage, Inc. | Data protection in a storage system |
US10284367B1 (en) | 2012-09-26 | 2019-05-07 | Pure Storage, Inc. | Encrypting data in a storage system using a plurality of encryption keys |
CN104704504A (zh) * | 2012-09-26 | 2015-06-10 | 净睿存储股份有限公司 | 生成加密密钥的多驱动器协作 |
CN103997463B (zh) * | 2014-05-23 | 2019-06-18 | 中国人民解放军理工大学 | 一种低开销的覆盖网安全组播方法 |
CN103997463A (zh) * | 2014-05-23 | 2014-08-20 | 中国人民解放军理工大学 | 一种低开销的覆盖网安全组播方法 |
CN106161034A (zh) * | 2015-05-08 | 2016-11-23 | 恩智浦有限公司 | 使用乘法秘密共享的rsa解密 |
CN109510707A (zh) * | 2019-01-16 | 2019-03-22 | 北京交通大学 | 基于树状结构模型的群组密钥管理方法 |
CN110266721A (zh) * | 2019-07-05 | 2019-09-20 | 西南交通大学 | 一种基于同态的云辅助动态通用安全多方计算方法 |
CN110266721B (zh) * | 2019-07-05 | 2020-04-28 | 西南交通大学 | 一种基于同态的云辅助动态通用安全多方计算方法 |
WO2023116292A1 (en) * | 2021-12-21 | 2023-06-29 | Huawei Technologies Co., Ltd. | Methods, systems, and computer-readable storage media for organizing an online meeting |
CN114329617A (zh) * | 2022-03-14 | 2022-04-12 | 浙江大学 | 计算第二价格密封拍卖成交金额的方法及装置、电子设备 |
CN114329617B (zh) * | 2022-03-14 | 2022-06-17 | 浙江大学 | 计算第二价格密封拍卖成交金额的方法及装置、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN101309137B (zh) | 2010-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101309137B (zh) | 一种基于秘密共享的单向函数树组播密钥管理方法 | |
Balenson et al. | Key management for large dynamic groups: One-way function trees and amortized initialization | |
CN105959269B (zh) | 一种基于身份的可认证动态群组密钥协商方法 | |
US6941457B1 (en) | Establishing a new shared secret key over a broadcast channel for a multicast group based on an old shared secret key | |
CN114730420A (zh) | 用于生成签名的系统和方法 | |
CN104168114A (zh) | 一种分布式的基于(k,n)门限证书加密方法及系统 | |
CN106713349B (zh) | 一种能抵抗选择密文攻击的群组间代理重加密方法 | |
CN103888249A (zh) | 组播通信用代理重加密方法 | |
CN117201132A (zh) | 一种完全去中心化的多委员会属性基加密方法及其应用 | |
CN113132104A (zh) | 一种主动安全的ecdsa数字签名两方生成方法 | |
Li et al. | AD‐ASGKA–authenticated dynamic protocols for asymmetric group key agreement | |
Liu et al. | Collusion-resistant multicast key distribution based on homomorphic one-way function trees | |
CN100588153C (zh) | 一种多播数据加密传输的方法 | |
Pal et al. | Diffie-Hellman key exchange protocol with entities authentication | |
Yang et al. | Secure key agreement for group communications | |
Aparna et al. | Key management scheme for multiple simultaneous secure group communication | |
Hur et al. | Chosen ciphertext secure authenticated group communication using identity-based signcryption | |
Patil et al. | Security Analysis of Proxy Cryptography Based Group Key Management Schemes for Dynamic and Wireless Networks Under Active Outsider Attack Model. | |
CN115001764B (zh) | 分层系统下基于共识数据库的跨域密钥协商方法及系统 | |
Raj et al. | A novel approach for computation-efficient rekeying for multicast key distribution | |
Cimato et al. | A unified model for unconditionally secure key distribution | |
Thomas et al. | A novel decentralized group key management using attribute based encryption | |
Tseng et al. | Enhancement on strongly secure group key agreement | |
Aparna et al. | Authenticated secure group communication using broadcast encryption key computation | |
Jain et al. | Group Key Management Protocols for Non-Network: A Survey |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100908 Termination date: 20140710 |
|
EXPY | Termination of patent right or utility model |