论文部分内容阅读
安全多方计算(简称SMC)是指在一个互不信任的多用户网络中,两个或多个用户能够在不泄漏各自私有输入信息时协同合作执行某项计算任务。实际上安全多方计算是一种分布式协议,在这个协议中n个成员分别持有秘密的输入x1,x2,…,xn,试图计算函数值(y1,y2,…,yn)=f(x1,x2,…,xn),其中f为一给定的函数。安全的含义是指既要保证函数值的正确性,又不暴露任何有关各自秘密输入的信息,甚至参与方有欺骗行为。自A.C.Yao于1982年首次提出安全多方计算的概念以来,安全多方计算已经成为国际密码学界的研究热点,实际上,如果我们能安全的计算任何函数,我们就掌握了一个强大的工具,因为任何一个密码协议都可以划归为一个特殊的安全多方计算协议。传统的安全多方计算领域主要关注于如何获得一般化的可计算任意函数的协议,而对安全多方计算在具体环境下的应用并没有做深入的研究。本文旨在针对不同类型的攻击者和网络条件,面向具体的应用问题和安全性要求设计出适合的安全多方计算协议。本文主要的研究工作如下:1.研究了安全多方计算的基础协议——多秘密共享协议。针对目前大多数秘密共享协议只适用于(t,n)门限的应用,不适合一般访问结构上的应用,基于RSA密码系统和Shamir的门限秘密共享方案,提出了一个新的基于一般访问结构的可验证多秘密共享方案。方案通过成员提供的子密钥的一个影子来恢复秘密,由影子难以得到子密钥本身,因此可以复用,也即通过同一组子密钥共享多个秘密。同时,方案可以对分发者发布的信息和参与者提供的子密钥影子进行认证,从而可以抵御分发者和参与者欺骗。2.针对现有大多数秘密共享方案在共享大秘密时效率较低的问题,提出了基于一般访问结构的新型、高效多秘密共享方案。在该方案中,一次秘密共享过程可以共享任意多个秘密,特别是对于共享大的秘密非常有用,由于所涉及的主要操作为Lagrange插值运算,因此较大地提高了系统运算效率。3.针对目前门限签名大都是基于离散对数,并且只能抵抗静态攻击者的问题,给出了安全多方计算的一个典型的应用——抗自适应攻击者的门限RSA签名体制。本文对门限RSA体制进行了较为深入的研究,总结了前人的一些工作,分析和提炼了其中的一些重要技巧,并对其中某些不足进行了改进,最后提出了一个安全的抗自适应攻击者的门限RSA,并通过仿真进行了安全性证明。4.针对目前门限签密方案不能解决多发送者联合签密的问题,基于身份的密码系统和双线性配对,本文提出了另外一个安全多方计算的应用——基于多发送者的(t,n)门限签密方案。首先利用ECC上的双线性对设计了一个基于身份的签密方案,并在随机预言模型(Random Oracle Model)中给出了方案的安全性证明,方案与目前典型的基于身份的签密方案相比具有更高的效率;进一步以所设计的签密方案为基础,通过融合一个安全的可验证秘密共享协议(VSS),给出了基于身份的多发送者门限签密方案,最后,利用仿真证明了该方案的安全性。5.为了在保护用户的隐私权与政府机构的监听权之间提供一种折衷的方法,提出了安全多方计算的另一个典型应用——密钥托管。首先分析了现有密钥托管方案及其缺陷,接着提出了一种新的密钥分拆体制,由此设计了一种强壮的动态密钥托管方案。方案具有强壮性、可验证性、动态性,有效地解决了“一次监听,永久监听”的问题,并且具有抵抗LEAF反馈攻击与阈下信道攻击的特性。