一种自主群组密钥更新方法与流程

文档序号:11693052阅读:590来源:国知局

本发明涉及移动互联网密钥管理技术领域,具体是一种能够减少密钥更新延时的自主群组密钥更新方法。



背景技术:

群组密钥管理是无线网络安全的基础技术之一,随着分布式无线网络的广泛应用,分布式群组密钥管理(distributedgroupkeymanagement,dgkm)成为安全研究热点。dgkm具有无需密钥管理中心kmc支持、公开信道协商和容忍失败节点的优点,但是由于所有节点共享密钥协商任务,具有延时长、计算开销大和全体成员参与更新的缺陷。

随着高性能处理器和能量水平的不断提高,深空网络、dtn网络、机会网络等对密钥管理延时提出了更为苛刻的要求,基于密钥交互协议的群组密钥管理方案在密钥更新中需要全部成员重新计算和发布公开密钥资料,需要为成员交互支付延时,不适合非可靠端到端服务、延时有限和非同步机制支持的无线网络。

单加密密钥多解密密钥加密解密方法(one-encryption-keymulti-decryption-keyencryptionmethod,omem),既存在一个加密密钥和解密密钥集合,使用相同加密密钥加密的信息能够被多个不同的解密密钥解密。omem更新过程中必须依赖一个强有力的实体密钥管理中心作为密钥更新的发起者和承担者,即使合法成员也不能利用自己的私有秘密密钥材料成功执行密钥更新过程。



技术实现要素:

本发明的目的在于提供一种自主群组密钥更新方法,该更新方法,可以避免omem的缺陷,减少密钥更新延时和计算总量,无需密钥管理中心、可靠端到端链接与同步机制的支持,适用延时受限的无线网络场景。

本发明解决其技术问题所采用的技术方案是:

一种自主群组密钥更新方法,包括以下步骤:

s1、消息发送者发送明文m;

s2、密钥源分发初始密钥kl′和更新密钥kj′,加入成员注册私有秘密密钥,退出成员注销私有秘密密钥;

s3、更新密钥kl′和加密算法对明文m加密得到密文c=ekl′(m);

s4、将密文c发送给下一节点;

s5、更新密钥kj′和解密算法对密文c解密得到明文m;

s6、执行密钥交互协议;

s7、网络运行;

所述步骤s6的密钥交互协议为基于diffie-hellman协议构造的自主密钥管理方案,有合法实体uii∈{1,2,...,n}、公告板b与离线管理服务器c三类参与实体,ui和c已经选择素数阶有限域fp和乘法循环群fp*的任一生成元g作为密钥资料,包含以下步骤:

s61、密钥协商阶段;

s62、加密阶段;

s63、解密阶段;

s64、密钥更新阶段;

所述步骤s61具体包括以下步骤:

s611、节点ui从[1,p]域内随机选择秘密值xi,作为解密密钥skey=xi,将xi通过保密安全信道发送到c,c秘密保存;

s612、c从[1,p]域内随机选择秘密值t,计算p0=gtmodp,计算{pi},i∈{1,2,...,n};

s613、c将公开加密密钥ekey={pi},i∈{0,1,2,...,n}发布到b;

所述步骤s62具体包括以下步骤:

s621、ukk∈{1,2,...,n}从b获取{pi}i∈{0,1,2,...,n},在[1,p]内选择随机数s和r作为秘密值,计算替换参数

s622、对{pi|i∈{0,1,2,...,n}}计算得到对信息m加密得到mgrsmodp;

s623、加密者使用公开信道将加密信息mgrsmodp、发布给ujj∈{1,2,...,k-1,k+1,...,n};

所述步骤s63具体包括以下步骤:

s631、解密者ujj∈{1,2,...,n}持有秘密密钥xjj∈{1,2,...,n}解密,uj使用如下的方式解密:

s632、解密者计算将所有的部分相乘得到

所述步骤s64具体为:

当新节点un+1加入网络时,需要使自己的秘密值xn+1具有合法性和有效性,执行以下步骤:

s641、un+1从[1,p]随机选择秘密值xn+1;

s642、un+1向管理者c汇报秘密值xn+1;

s643、un+1重新计算公开加密密钥,令

s644、公告版更新公开加密密钥为{p0,pi'|i∈{1,2,...,n+1}},更新后的公开密钥{pi'}为:

当节点un退出网络时,需要使用自己的秘密值xn注销公告板的加密密钥,执行以下步骤:

s645、un令p0”=gtmodp,计算

s646、un在b上公开加密密钥为和{pi”}i∈{1,2,...,n-1},内容为:

当成员un需要更新自己私有秘密密钥时,执行以下步骤:

s647、un从[1,p]选择随机数x'n,通过安全信道将其发送给c,将xn更新为x′n;

s648、如果该请求被允许,un执行计算:

当un使用{pi|i∈{1,2,...,n}}和β=x'n-xn,计算{pi'|i∈{1,2,...,n}};

当un在公告板b上发布更新后的公开加密密钥{pi'|i∈{1,2,...,n}}

本发明的有益效果是,由加入/退出成员本地自主执行密钥加入/退出操作,非更新成员不参与密钥更新过程,更新公开加密密钥不会破坏非更新成员秘密解密密钥的有效性,基于该方法设计自主密钥管理方案,满足单加密密钥多解密密钥性质,从而减少密钥交互过程的延时和计算总量,无需密钥管理中心、可靠端到端链接和同步机制的支持,适用延时受限的无线网络场景。

附图说明

下面结合附图和实施例对本发明进一步说明:

图1是本发明的示意图。

具体实施方式

如图1所示,本发明提供一种自主群组密钥更新方法,包括以下步骤:

s1、消息发送者发送明文m;

s2、密钥源分发初始密钥kl′和更新密钥kj′,加入成员注册私有秘密密钥,退出成员注销私有秘密密钥;

s3、更新密钥kl′和加密算法对明文m加密得到密文c=ekl′(m);

s4、将密文c发送给下一节点;

s5、更新密钥kj′和解密算法对密文c解密得到明文m;

s6、执行密钥交互协议;

s7、网络运行;

所述步骤s6的密钥交互协议为基于diffie-hellman协议构造的自主密钥管理方案,有合法实体uii∈{1,2,...,n}、公告板b与离线管理服务器c三类参与实体,ui和c已经选择素数阶有限域fp和乘法循环群fp*的任一生成元g作为密钥资料,包含以下步骤:

s61、密钥协商阶段;

s62、加密阶段;

s63、解密阶段;

s64、密钥更新阶段;

所述步骤s61具体包括以下步骤:

s611、节点ui从[1,p]域内随机选择秘密值xi,作为解密密钥skey=xi,将xi通过保密安全信道发送到c,c秘密保存;

s612、c从[1,p]域内随机选择秘密值t,计算p0=gtmodp,计算{pi},i∈{1,2,...,n};

s613、c将公开加密密钥ekey={pi},i∈{0,1,2,...,n}发布到b;

所述步骤s62具体包括以下步骤:

s621、ukk∈{1,2,...,n}从b获取{pi}i∈{0,1,2,...,n},在[1,p]内选择随机数s和r作为秘密值,计算替换参数

s622、对{pi|i∈{0,1,2,...,n}}计算得到对信息m加密得到mgrsmodp;

s623、加密者使用公开信道将加密信息mgrsmodp、发布给ujj∈{1,2,...,k-1,k+1,...,n};

所述步骤s63具体包括以下步骤:

s631、解密者ujj∈{1,2,...,n}持有秘密密钥xjj∈{1,2,...,n}解密,uj使用如下的方式解密:

s632、解密者计算将所有的部分相乘得到

所述步骤s64具体为:

当新节点un+1加入网络时,需要使自己的秘密值xn+1具有合法性和有效性,执行以下步骤:

s641、un+1从[1,p]随机选择秘密值xn+1;

s642、un+1向管理者c汇报秘密值xn+1;

s643、un+1重新计算公开加密密钥,令

s644、公告版更新公开加密密钥为{p0,pi'|i∈{1,2,...,n+1}},更新后的公开密钥{pi'}为:

当节点un退出网络时,需要使用自己的秘密值xn注销公告板的加密密钥,执行以下步骤:

s645、un令p0”=gtmodp,计算

s646、un在b上公开加密密钥为和{pi”}i∈{1,2,...,n-1},内容为:

当成员un需要更新自己私有秘密密钥时,执行以下步骤:

s647、un从[1,p]选择随机数x'n,通过安全信道将其发送给c,将xn更新为x′n;

s648、如果该请求被允许,un执行计算:

当un使用{pi|i∈{1,2,...,n}}和β=x'n-xn,计算{pi'|i∈{1,2,...,n}};

当un在公告板b上发布更新后的公开加密密钥{pi'|i∈{1,2,...,n}}

私有解密密钥skeyi更新不会引发其他成员的私有解密密钥skej,i≠j更新,skeyi更新后skeyj仍可以对更新的加密密钥ekey‘加密的信息解密,且更新成员ui在密钥更新活动中生成的加密密钥ekey'不会破坏其他成员的私有解密密钥的合法性和有效性,无需非更新成员参与密钥更新过程。

满足如下的条件:

自主群密钥管理方案具有前向后向安全性、密钥独立性、密钥自主性和高效的更新效率。

关于自主群密钥管理方案的前向后向安全性分析:

根据{si}中的s1和s2,ppt攻击者随机选择值x成功猜测{xi}中的任意元素的概率为:

因为|g|=ρ,||p||=n且n>>n,当ρ=θ(2n)。

所以

negl(n)是一个可忽略的函数。

同理,ppt攻击者通过si-1和si成功猜测集合{xi}中的任意元素的概率为:

综上所述,任意ppt攻击者从{pi}中得到解密密钥集合{xi}中的任意元素是一个困难问题,证明方案具有私密性。

un执行密钥离开操作后,xn不属于集合{xi},不是方程中的根,un利用xn计算得到信息如下:

退出节点无法利用xn对新公开加密密钥的信息解密,它解密更新后加密密钥加密的信息的概率为可忽略的函数。

新加入节点un+1通过加入更新操作将自己的秘密值xn+1作为新方程的根,因此un+1使用xn+1能够解密更新公开加密密钥{pi'}加密的信息;但是xn+1不是方程的根,因此un+1不能使用xn+1解密{pi}加密的信息;所以新加入节点解密加入前加密密钥加密信息的概率为可忽略的函数。

关于自主密钥管理方案的密钥独立性:

首先由于集合{xi}中任意秘密值xi是ui从域[1,p]中随机选择,因此{xi}中元素之间不具有相关性,已知ui的值xi,不能推导出uj(i≠j)的值xj;

其次从公开信道获取公开加密密钥{pi}求解xj,假设已知除xj之外的{xi},则pi可以表示为由于{pi},{ai}和{bi}都是已知值,最终归结为根据求解xj。因此攻击者使用{pi}和xi求出xj的概率为一个可忽略的函数。攻击者既不能根据xi求出xj,也不能根据{pi}求出xj,akms满足密钥独立性。

关于自主密钥管理方案的密钥自主性:

首先,加入/退出节点有能力对公钥进行更新,并且新鲜的公钥能够保证非更新成员解密密钥的合法性和有效性,更新过程中非更新成员不参与更新;

其次,更新过程不能破坏非更新成员解密密钥的合法性和有效性。

关于自主密钥管理方案的更新效率,非更新成员无需参与密钥更新过程,因此,在密钥更新过程中,只有加入或者退出节点密钥更新,使得密钥更新的规模缩减。当有新成员加入或者退出时,并不需要所有的成员都在b附近,或者提供可靠的端到端链路,非更新成员在更新过程中无需提供自身独有的秘密解密密钥,只要回到b获取公开加密密钥即可,无需依赖密钥管理中心,也无需节点密钥更新的同步机制,总之,其更新效率远远高于agkm和omdep。

以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制;任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同替换、等效变化及修饰,均仍属于本发明技术方案保护的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1