首页> 中国专利> 一种基于点积协议的协议安全性量化方法及系统

一种基于点积协议的协议安全性量化方法及系统

摘要

本发明公开了一种基于点积协议的协议安全性量化方法及系统,包括:分别获取各个参与方执行协议前后的变量取值范围;分别计算各个参与方执行协议前后变量取值范围的最大值与最小值的差值;将各个参与方执行协议前的差值相乘,得到执行协议前的安全性参数;将各个参与方执行协议后的差值相乘,得到执行协议后的安全性参数;参照执行协议前后的安全性参数,获取协议安全性取值。本发明通过对参与方执行协议前后的变量取值范围进行操作处理,将处理结果作为对协议安全性的表征值的方法,实现了将协议的安全性量化的目的。可以对不同协议的安全性进行量化,便于根据实际应用情况,选择安全性符合实际要求的协议,提高了安全多方计算的使用效率。

著录项

  • 公开/公告号CN101895530A

    专利类型发明专利

  • 公开/公告日2010-11-24

    原文格式PDF

  • 申请/专利权人 安徽师范大学;

    申请/专利号CN201010194265.1

  • 发明设计人 罗永龙;陈蔡霞;

    申请日2010-06-08

  • 分类号H04L29/06;

  • 代理机构北京集佳知识产权代理有限公司;

  • 代理人逯长明

  • 地址 241003 安徽省芜湖市花津南路1号

  • 入库时间 2023-12-18 01:09:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-08-03

    未缴年费专利权终止 IPC(主分类):H04L29/06 授权公告日:20121121 终止日期:20150608 申请日:20100608

    专利权的终止

  • 2012-11-21

    授权

    授权

  • 2011-01-05

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20100608

    实质审查的生效

  • 2010-11-24

    公开

    公开

说明书

技术领域

本发明涉及信息安全领域,尤其涉及一种基于点积协议的协议安全性量化方法及系统。

背景技术

安全多方计算(secure multi-party computation,SMC)主要用于研究一组互不信任的参与方之间在保护私有信息的前提下进行相关的合作计算问题,其基本要求是要确保输入的独立性,计算的正确性,同时不泄露参与协议的各参与方的输入信息给参与计算的其他成员。简单的来讲,安全多方计算是一种协议,在这个协议中,参与方采用一种特殊的方法计算许多变量的任何参数。安全多方计算协议的类型包括:基于OT的安全多方计算协议、点积协议等。

现有的关于SMC协议的性能分析主要涉及协议的复杂性,正确性及安全性。其中复杂性包含计算复杂性和通信复杂性,而一般情况下对复杂性的衡量是指对计算复杂度和通信复杂度的综合衡量;正确性是指协议的运行结果是否正确。对于一个安全多方计算协议,我们首先要保证其正确性;安全性是SMC考虑的一个重要因素,它主要衡量协议所泄露的信息量。信息泄露越少安全性越高,反之,信息泄露越多安全性越低。近年来,点积协议已经得到广泛的研究,基于不同程度的安全性和复杂性,目前已经提出了很多不同的点积协议。

目前关于安全多方计算协议的安全性的研究都只是停留在理论分析的基础上,并没有能够应用到实际中的计算方法,对安全多方计算协议的安全性进行直观的表达。并且,这种理论分析强调参与方的输入信息为零泄漏,但是在实际应用中,这种零泄漏的绝对安全往往是无法实现的。

发明内容

有鉴于此,本发明提供一种基于点积协议的协议安全性量化方法及系统,对实际应用中,基于点积协议的安全多方计算协议的协议安全性进行量化,使其实际安全性可以直观表现。其方案具体为:

一种基于点积协议的协议安全性量化方法,包括:

分别获取各个参与方执行协议前后的变量取值范围;

分别计算各个参与方执行协议前后变量取值范围的最大值与最小值的差值;

将所述各个参与方执行协议前的差值相乘,得到执行协议前的安全性参数;

将所述各个参与方执行协议后的差值相乘,得到执行协议后的安全性参数;

参照所述执行协议前后的安全性参数,获取协议安全性取值。

优选的,按照以下步骤,分别获取各个参与方执行协议前后变量取值范围的最大值与最小值的差值:

依据预设函数,转换变量取值范围;

获取所述变量取值范围转换后,各个参与方执行协议前后变量取值范围的最大值与最小值的差值。

优选的,按照以下步骤,参照所述执行协议前后的安全性参数,获取协议安全性取值:

计算所述执行协议前后的安全性参数的绝对差值;

求得所述绝对差值与所述执行协议前的安全性参数的比值;

将所述比值确定为所述协议安全性取值。

优选的,还包括:根据所述协议安全性取值,获取协议安全性等级。

优选的,所述参与方为两方或三方。

一种基于点积协议的协议安全性量化系统,包括:

变量取值范围单元,用于分别获取各个参与方执行协议前后的变量取值范围;

差值计算单元,用于分别计算各个参与方执行协议前后变量取值范围的最大值与最小值的差值;

第一安全性参数获取单元,用于将所述各个参与方执行协议前的差值相乘,得到执行协议前的安全性参数;

第二安全性参数获取单元,用于将所述各个参与方执行协议后的差值相乘,得到执行协议后的安全性参数;

安全性取值获取单元,用于参照所述执行协议前后的安全性参数,获取协议安全性取值。

优选的,所述差值计算单元包括:

变量取值范围转换单元,用于依据预设函数,转换所述变量取值范围;

转换后差值计算单元,用于获取所述变量取值范围转换后,各个参与方执行协议前后变量取值范围的最大值与最小值的差值。

优选的,所述安全性取值获取单元包括:

绝对差值计算单元,用于计算所述执行协议前后的安全性参数的绝对差值;

比值计算单元,用于求得所述绝对差值与所述执行协议前的安全性参数的比值;

确定单元,用于将所述比值确定为所述协议安全性取值。

优选的,还包括:协议安全性等级获取单元,用于根据所述协议安全性取值,获取协议安全性等级。

从上述技术方案可以看出,本发明通过对实际应用中参与方执行协议前和执行协议后的变量取值范围进行操作处理,将处理的结果作为对协议安全性的表征值的方法,实现了将协议的安全性量化的目的。进一步的,这种量化方法可以对不同协议的安全性进行量化,便于根据实际应用情况,选择安全性符合实际要求的协议,提高了安全多方计算协议在实际应用中的使用效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例1公开的基于点积协议的协议安全性量化方法流程图;

图2为本发明实施例2公开的基于点积协议的协议安全性量化方法流程图;

图3为本发明实施例2中公开的两方协议安全性量化方法示意图;

图4为本发明实施例3公开的基于点积协议的协议安全性量化方法流程图;

图5为本发明实施例3公开的三方协议安全性量化方法示意图;

图6为本发明实施例3公开的协议安全级别划分示意图;

图7为本发明公开的基于点积协议的协议安全性量化系统结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

点积协议问题一般可被描述为:Alice有一个私有向量X=(x1,x2,...,xn),Bob有一个私有向量Y=(y1,y2,...,yn),Alice需要得到值u=X*Y+v,这里v是仅被Bob知道的随机数。同时协议执行后要满足:(1)Alice不能从u中得到X*Y的值,也不能从结果中得到任何yi的信息。(2)Bob不能得到u的值,也不能得到任何xi的信息。

近年来,点积协议已经得到广泛的研究,基于不同程度的安全性和复杂性,目前已经提出了很多不同的点积协议。其中包括:基于茫然传输的点积协议和基于同态加密的点积协议,这两个点积协议的信息泄露量几乎为零。还包括一些实用的点积协议,它们在理论上都是绝对安全的,但在实际应用中都在不同程度上泄露了部分输入信息,无法实现绝对安全。

点积协议从参与方数目的角度来分析,可分为两大类,即两方参与的点积协议和有第三方参与的点积协议。

假设Alice的私有数据是X向量,Bob的私有数据是Y向量,协议执行之前Bob对X向量中数据所知的范围是D0=[a0,b0],经过协议执行之后,Bob对X向量中数据所知的范围是D1=[a1,b1],则:

(1)如果D1<D0,说明通过协议,缩小了Bob猜测X向量中数据的取值范围。这必然是泄露了部分信息。

(2)如果D1=D0,说明通过协议后,Bob对X向量中数据所知的范围和协议之前是相同的,则无信息泄露,也就是说,该协议是绝对安全的。

安全多方计算协议的安全性主要是衡量协议泄露的信息量,则协议安全性的量化可用信息泄露量的量化来表示。信息泄露量越小,安全性越高;信息泄露量越大,安全性越低。

根据上述理论基础,本发明提供一种基于点积协议的协议安全性量化方法,对实际应用中安全多方计算协议的安全性进行量化,使其实际协议安全性可以直观表现。其具体实施方式如下所述:

实施例一

本发明实施例1公开的基于点积协议的协议安全性量化方法的流程如图1所示,包括:

步骤S11、分别获取各个参与方执行协议前后的变量取值范围;

步骤S12、分别计算各个参与方执行协议前后变量取值范围的最大值与最小值的差值;

步骤S13、将所述各个参与方执行协议前的差值相乘,得到执行协议前的安全性参数;

步骤S14、将所述各个参与方执行协议后的差值相乘,得到执行协议后的安全性参数;

步骤S15、参照所述执行协议前后的安全性参数,获取协议安全性取值。

本发明中,对执行协议前各个参与方的变量取值范围内的差值进行相乘,得到执行协议前的安全性参数,以此来表征协议执行前的信息量,对执行协议后各个参与方的变量取值范围内的差值进行相乘,得到执行协议后的安全性参数,以此来表征协议执行后的信息量,根据协议执行前后的安全性参数获得安全性取值,以此来表征此协议的安全性。使其实际安全性可以通过数值形式直观表现,便于衡量。

实施例二

本实施例公开了当参与方的数目为两个时,基于点积协议的协议安全性量化方法,其流程如图2所示,包括:

步骤S21、分别获取第一和第二参与方执行协议前后的变量取值范围;

对于只有两个参与方的协议,需要分别获取第一方在协议执行前其变量取值范围X0=[ax0,bx0]以及协议执行后第一方的变量取值范围X1=[ax1,bx1],第二方在协议执行前其变量取值范围Y0=[ay0,by0],以及协议执行后第二方的变量取值范围Y1=[ay1,by1]。

步骤S22、分别计算两个参与方执行协议前后变量取值范围的最大值与最小值的差值;

即,计算bx0-ax0,by0-ay0,bx1-ax1和by1-ay1的值。

步骤S23、将所述两个参与方执行协议前的差值相乘,得到执行协议前的安全性参数;

执行协议前的安全性参数为:(bx0-ax0)*(by0-ay0),借助平面直角坐标系,将上述范围分别在平面直角坐标系中标出,将第一方的数据放在X轴,将第二方的数据放在Y轴,其示意图如图3所示,由图可以看到,执行协议前的安全性参数即图中S0区域的面积,代表协议执行前的信息量。

步骤S24、将所述两个参与方执行协议后的差值相乘,得到执行协议后的安全性参数;

执行协议后的安全性参数为:(bx1-ax1)*(by1-ay1),从图中可以看到,执行协议后的安全性参数即图中S1区域的面积,代表协议执行后的信息量。

步骤S25、计算所述执行协议前后的安全性参数的绝对差值;

将两区域的面积值求绝对差值,|S0-S1|。

步骤S26、求得所述绝对差值与所述执行协议前的安全性参数的比值;

计算该绝对差值所占的S0区域的比值,也就是说,泄露的信息量所占协议执行前的信息量的比重。

步骤S27、将所述比值确定为所述协议安全性取值。

将上述步骤中的比值作为协议安全性取值,也就是代表泄露的信息量占原信息量的比重,若该值较大,则说明,信息泄露量大,安全性低,若该值很小,或为0,则说明信息泄露量很小或泄露量为零,即没有泄露,安全性最高。

除上述步骤S25-S27中获得安全性取值的方式外,还可以只将执行协议前后的安全性参数做差,根据差值的大小判断安全性的高低,但是此种方式只能在参与双方固定的情况下比较不同协议的安全性高低,适用范围较小。

本实施例针对两方参与的协议的安全性量化方法做了详细的描述,通过将两方的变量取值范围相乘建立关联,建立了对协议安全性量化的基础,使其能够全面反映整个协议的安全性,而不仅仅是某一参与方的安全性的量化。

实施例三

对于有第三方参与的点积协议,由于第三方的私有数据也具有隐蔽性,且协议执行前后可能也会有部分信息泄露,因此在对协议的安全性量化时,第三方的安全性也应该考虑。本实施例公开了当参与方的数目为三个时,基于点积协议的协议安全性量化方法,其流程如图4所示,包括:

步骤S41、分别获取第一、第二和第三参与方执行协议前后的变量取值范围;

除需要分别获取第一方在协议执行前其变量取值范围X0=[ax0,bx0]以及协议执行后第一方的变量取值范围X1=[ax1,bx1],第二方在协议执行前其变量取值范围Y0=[ay0,by0],以及协议执行后第二方的变量取值范围Y1=[ay1,by1],还需要获取第三方在协议执行前其变量取值范围Z0=[az0,bz0]以及获取协议执行后第三方的变量取值范围Z1=[az1,bz1]。

步骤S42、依据预设函数,转换所述变量取值范围;

根据预先设定的函数,将变量取值范围转换到[-1,1]之间,为后续的操作做准备。由于取值范围的直接定量和运算比较困难,本实施例通过一个分段函数来实现取值范围的映射,从而来实现取值范围的定量和相关运算。该函数定义如下:

F(x)=ex-1,x<01-e-x,x>=0

此函数满足下面的条件:

(1)F(+∞)、F(-∞)都是有限值,且分别是最大值和最小值。

(2)F(x)函数是严格单调递增的。即对a,b∈D,且a<b时有F(a)<F(b)。

(3)函数F(x)在接近∞时,斜率变小。

(4)F(x)函数满足取值范围本身的对称性,即F(0)=0,-F(a)=F(-a),且F(+∞)=1,F(-∞)=-1。

便于后续的计算。

步骤S43、获取所述变量取值范围转换后,各个参与方执行协议前后变量取值范围的最大值与最小值的差值。

即,计算F(bx0)-F(ax0),F(by0)-F(ay0),F(bx1)-F(ax1),F(by1)-F(ay1),F(bz0)-F(az0)和F(bz1)-F(az1)的值。

步骤S44、将所述各个参与方执行协议前的差值相乘,得到执行协议前的安全性参数;

执行协议前的安全性参数为:(F(bx0)-F(ax0))*(F(by0)-F(ay0))*(F(bz0)-F(az0)),可以借助空间坐标系,将上述范围分别在空间坐标系中标出,将第一方的数据放在X轴,将第二方的数据放在Y轴,将第三方的数据放在Z轴,其示意图如图5所示,由图可以看到,执行协议前的安全性参数即图中V0区域的体积,代表协议执行前的信息量。

步骤S45、将所述各个参与方执行协议后的差值相乘,得到执行协议后的安全性参数;

执行协议后的安全性参数为:(F(bx1)-F(ax1))*(F(by1)-F(ay1))*(F(bz1)-F(az1)),从图中可以看到,执行协议后的安全性参数即图中V1区域的体积,代表协议执行后的信息量。

步骤S46、计算所述执行协议前后的安全性参数的绝对差值;

将两区域的体积值求绝对差值,|V0-V1|。

步骤S47、求得所述绝对差值与所述执行协议前的安全性参数的比值;

计算该绝对差值所占的V0区域的比值,也就是说,泄露的信息量所占协议执行前的信息量的比重。

步骤S48、将所述比值确定为所述协议安全性取值;

步骤S49、根据所述协议安全性取值,获取协议安全性等级。

由于协议安全性取值的范围在[0,1]上,且取值越小安全性越高。根据这个特征,可将协议安全性划分为不同的等级。具体的划分方式可以有多种,例如,由于协议安全性取值的范围为[0,1],则其必然是小数值,可以将安全性取值乘以10后取整,利用得到的数值作为等级值,等级值越小,安全性越高。

也可以假定协议安全级别总共分为n个等级,则协议安全级别sl可以表示为:sl=n-n*s,则sl的取值就被转换到[0,n]上。因此协议安全性取值就被划成了n个级别,sl的值越大其安全级别越高,安全性越好。其示意图如图6所示。

本实施例公开的三方参与的基于点积协议的协议安全性量化方法中,对各个参与方的变量取值范围做了转换,将其转换为预先设定的范围内,以保证后续计算的简便,并将获得的安全性取值转换为衡量安全性高低的等级值,可以更加直观的表示安全性的高低。

这种安全性量化方法也可推广至其他的安全多方计算协议。同时,本发明公开的安全性的量化方法也可以分别用来计算参与协议的各参与方的安全性,只需将其他的参与方变量取值范围设定为0即可。

在实际应用中,可通过这种安全性量化方法来对同一类协议进行安全性量化,从而选出安全性符合实际要求的协议,或根据实际应用中计算出的各参与方的安全性指标相应的泄露部分信息来提高协议效率,进一步提高安全多方计算的安全性。

本发明同时公开了一种基于点积协议的协议安全性量化系统,其结构如图7所示,包括:变量取值范围获取单元71、差值计算单元72、第一安全性参数获取单元73、第二安全性参数获取单元74和安全性取值获取单元75,其中:

变量取值范围获取单元71用于,分别获取各个参与方执行协议前后的变量取值范围;差值计算单元72用于,分别计算各个参与方执行协议前后变量取值范围的最大值与最小值的差值;第一安全性参数获取单元73用于,将所述各个参与方执行协议前的差值相乘,得到执行协议前的安全性参数;第二安全性参数获取单元74用于,将所述各个参与方执行协议后的差值相乘,得到执行协议后的安全性参数;安全性取值获取单元75用于,参照所述执行协议前后的安全性参数,获取协议安全性取值。

其中,差值计算单元72包括:变量取值范围转换单元721,用于依据预设函数,转换所述变量取值范围;转换后差值计算单元722,用于获取所述变量取值范围转换后,各个参与方执行协议前后变量取值范围的最大值与最小值的差值。

安全性取值获取单元75包括:绝对差值计算单元751,用于计算所述执行协议前后的安全性参数的绝对差值;比值计算单元752,用于求得所述绝对差值与所述执行协议前的安全性参数的比值;确定单元753,用于将所述比值确定为所述协议安全性取值。

进一步的,该系统还包括:安全性等级获取单元76,用于根据所述协议安全性取值,获取协议安全性等级。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号