论文部分内容阅读
非交互多方密钥交换是指假设N个用户希望通过非交互多方密钥交换协议建立共享会话密钥,所有用户同时向其他用户广播自己的公钥,同时接收其他用户的公钥,然后每个用户就可以用自己的私钥和接收到的其他用户的公钥计算出会话密钥KEY。窃听者可以获得所有用户的公钥,但无法计算出真正的密钥KEY。 密钥交换这一概念最早于1976年由Diffie和Hellman提出,他们给出的是一个两方密钥交换协议,这在密码学上是一个里程碑事件。它为后来的三方乃至多方密钥交换协议提供了研究基础,现在的很多密钥交换协议就是在Diffie-Hellman密钥协商算法(DH协议)的基础上进行改进和变形而得来的。2000年,Joux使用双线性对给出了一个三方密钥交换协议,其主要思想类似于原始 DH协议。2003年,Boneh和Silverberg(以下简称BS)首次提出多线性映射(这成为了密码学上一个非常有用的工具)的概念,并从理论上构造了一个非交互多方密钥交换协议。在BS的协议中,用户数N和多线性映射的阶κ之间存在一个固定关系:κ=N-1。这就导致了一个“不太完美”的后果,即:当用户数发生改变时,系统需要重新初始化一个相应的多线性映射,这样就增加了系统开销。 本文研究的具体内容是:用两种方法扩展了BS提出的“基于多线性映射的非交互多方密钥交换协议”。相比于原方案中系统每次因用户数发生变化而重新初始化生成新的多线性映射,我们给出的这两种扩展方案中无论用户数如何变化,只需系统在初始化时生成一个N-1阶的多线性映射即可满足κ=N-1这一计算前提,具体可表述为: (1)在扩展方案一中,系统初始化时为每个用户生成一个公开的“替代身份”h,采取“谁缺席,就用谁h代替其公钥;缺席几位,就代替几位。”的方针。 (2)在扩展方案二中,系统初始化时只生成一个公开的“万能替代身份”h,采取“无论谁缺席,都用这个h代替其公钥;缺席几位,就用h代替几次。”的方针。 这两种扩展方案与原方案相比减少了系统初始化多线性映射的次数,使得任意不多于N个的用户都可以用(N-1)阶多线性映射共享会话密钥,极大地减少了系统资源销耗,对一些资源受限型场景具有很重要的意义。此外,本文还利用扩展方案二,描述了“用户组群中任意讨论组的建立”这样一个具体的应用场景,进一步,对它的安全性进行了分析。