一种集合成员关系判定的密码学构造方法及系统的制作方法

文档序号:8301396阅读:322来源:国知局
一种集合成员关系判定的密码学构造方法及系统的制作方法
【技术领域】
[0001] 本发明涉及信息技术领域,特别是指一种集合成员关系判定的密码学构造方法及 系统。
【背景技术】
[0002] 元素与集合之间的"属于"和"不属于"是最常见的二元关系,给定集合U= Ie1,…, en},对任意子集.Xgi/,属于关系通常用e表示,如e e S,表示元素 e存在于子集S中;同 样的,不属于关系通常用g表示,如e茫表示元素 e不存在于子集S中。当集合S只有一 个元素时,退化为元素"相等"和"不相等"关系;如对其扩展,还能得到子集"包含"和"非 包含"关系,以及集合"相等"与"不相等"关系等。
[0003] 在密码学中常用"属于"与"不属于"关系实现元素与集合间关系的判定,S卩,表示 对给定元素 e是否存在于(或不存在于)S中的一个判定。如果要求这种判定是密码学安 全的,则当e e S(或egX)时,任何人不能向他人宣称错误关系e运$ (或e e S),或者 说任何人不能伪造判定e ? S (或e e S)。
[0004] 密码学集合操作在安全协议设计与安全计算领域中具有重要的理论价值与应用 价值,可实现基于集合的广播加密、具有属于和非逻辑的基于属性加密、集合关系的谓词加 密、基于集合的隐私保护关键字检索等方案。密码学"属于"关系与"不属于"关系本质上 是密码学的安全计算技术,是保证网络及计算机系统下信息安全的基本技术,可广泛在电 子商务、电子政务、网上交易、甚至军用网络中进行应用。
[0005] 例如,在面向群组的广播加密中,数据发送者可能希望指定某些用户进行解密信 息,那么他只需要将这些指定用户生成集合S ;依靠密码学属于关系实现算法,可对任意用 户e是否属于该集合S进行密码学判定:如果e e S,那么可以进行解密;否则,即使用户具 有以往的授权也是无法实现解密。
[0006] 再如,基于属性的加密中,某一属性由不同属性值构成集合,例如,城市={北京、 上海、深圳、伦敦、纽约、……},消息发送者可以从该集合中选择一些属性值构成"授权"解 密的属性值子集或"非授权"解密的属性值子集,并用此子集对消息进行加密得到密文。同 时,该密码系统内的每名成员具有一组属性值及对应的属性值密钥来标识自己的身份,依 靠本专利中密码学属于关系实现算法,当一个接收者试图解密时,他将自己的属性值与属 性值密钥与密文中的加密子集进行比对,如果满足子集中"属于"或"不属于"的要求,那么 他能够正确解密出消息。目前,密码学研究中尚无法对集合成员关系进行密码学表示。

【发明内容】

[0007] 本发明要解决的技术问题是提供一种集合成员关系判定的密码学构造方法及系 统,以解决现有技术所存在的无法对集合成员关系进行密码学表示的问题。
[0008] 为解决上述技术问题,本发明实施例提供一种集合成员关系判定的密码学构造方 法,包括:
[0009] 获取给定任意集合Ule1,…,en},将集合U中的每个元素 ei转化为密码学空间内 的随机点vi;
[0010] 获取给定集合S= ^1V.根据所述随机点\确定集合S中的每个元素 e/对应的随机点Vi',并根据所述随机点Vi'构造函数&〇〇 ;
[0011] 引入一个随机秘密Y,根据所述函数fs(x)确定fs(Y),并根据所述随机秘密Y 确定公开参数mpk ;
[0012] 通过密码学方法,以所述公开参数mpk作为输入对fs ( Y )进行处理生成所述集合 S的密码学表不。
[0013] 可选地,所述随机点包括:随机数或随机向量;
[0014] 所述根据所述随机点V i构造函数包括:
[0015] 将集合S中每个元素e/对应的随机点Vi'作为H(X)的零点构造零点多项式函数 f s(x);或者
[0016] 将集合S中每个元素W i对应的随机点V i作为H(X)的极点构造极点多项式 函数fs(x);
[0017] 其中,H(x) = P (X)/Q(X)是一个有理多项式,表示两个多项式P(x)和Q(x)相除, 对于一个变量z,当P(z) =0时,P(X)的根z称为H(X)的零点,当Q(z) =0时,Q(X)的根 z被称为H(X)的极点;
[0018] 所述构造函数还包括:由所述随机点ν' i构造的拉格朗日插值多项式、牛顿插值 多项式、埃尔米特插值多项式、伯恩斯坦多项式、斐波那契多项式、二项式型多项式或相应 代数曲线。
[0019] 可选地,所述通过密码学方法,以所述公开参数mpk作为输入对fs ( Y )进行处理 生成所述集合S的密码学表示包括:
[0020] 通过密码学方法,以所述公开参数mpk作为输入对fs ( Y )进行处理生成所述集合 S的聚合函数Aggregate (mpk, S),当所述函数fs (X)为零点多项式时,该聚合函数称为零点 聚合函数ZerosAggr (mpk,S),当所述函数fs (X)为极点多项式时,该聚合函数称为极点聚合 函数 PolesAggr (mpk,S);
[0021] 通过所述聚合函数将所述集合S压缩成确定长度的随机数或随机向量Rs,R s是所 述聚合函数Aggregate (mpk, S)的输出聚合值,且Rs的长度与所述集合S中元素个数无关。
[0022] 可选地,所述通过所述聚合函数将所述集合S压缩成确定长度的聚合值Rs之后包 括:
[0023] 通过所述聚合函数构造密码学判定算法对元素与元素之间等于和不等于关系进 行判定;和/或
[0024] 通过所述聚合函数构造密码学判定算法对元素与集合之间属于和不属于关系进 行判定;和/或
[0025] 通过所述聚合函数构造密码学判定算法对集合与集合之间包含和不包含关系进 行判定。
[0026] 可选地,所述通过所述聚合函数构造密码学判定算法对元素与集合之间属于关系 进行判定包括:
[0027] 获取元素61,当eie S时,令S_= S\{eJ,则聚合值Rs_由零点聚合函数 ZerosAggr (mpk,S)确定;
[0028] 当S时,令S_= S\ IeiK则聚合值Rs_不能由任何多项式时间算法确定,所述多 项式时间算法包括:ZerosAggr (mpk,S);
[0029] 所述通过所述聚合函数构造密码学判定算法对元素与集合之间不属于关系进行 判定包括:
[0030] 获取元素 ei,当e,.多5*时,令S+= S U {e J,则聚合值兄+由极点聚合函数 PolesAggr (mpk,S+)确定;
[0031] 当e# S时,令S+= S U {e J,则聚合值A不能由任何多项式时间算法确定,所 述多项式时间算法包括:PolesAggr (mpk,S+)。
[0032] 可选地,所述通过所述聚合函数构造密码学判定算法对元素与集合之间属于关系 进行判定包括:
[0033] 根据集合S的极点聚合函数PolesAggr (mpk,S)输出的聚合值馬构造对所述聚合 值Rs的承诺;
[0034] 对于所述元素 ep当eiG S时,根据确定的所述零点聚合函数ZerosAggr (mpk,S) 输出的聚合值IV验证所述承诺;
[0035] 当A ¢3,则不存在任何多项式时间算法验证所述承诺;
[0036] 所述通过所述聚合函数构造密码学判定算法对元素与集合之间不属于关系进行 判定包括:
[0037] 根据集合S的零点聚合函数ZerosAggr (mpk,S)输出的聚合值馬构造对所述聚合 值Rs的承诺;
[0038] 对于所述元素 ep当e, ¢5时,根据确定的极点聚合函数P〇lesAggr(mpk,S)输出的 聚合值Rs+验证所述承诺;
[0039] 当eie S时,则不存在任何多项式时间算法验证所述承诺。
[0040] 另一方面,本发明还提供一种集合成员关系判定的密码学构造系统,包括:
[0041
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1