n取k的不经意传输方法和系统的制作方法

文档序号:9931084阅读:580来源:国知局
n取k的不经意传输方法和系统的制作方法
【技术领域】
[0001] 本发明涉及通信技术领域,特别涉及一种n取k的不经意传输方法和系统。
【背景技术】
[0002] 不经意传输协议是密码学的基本原语,是指协议参与方以一种模糊化的方式传递 信息,从而有效的保护参与方的隐私。其中主要包括两个参与方:信息持有者和信息接收 者。
[0003] 在n取k的不经意传输的过程中,信息持有者持有n个信息。信息接收者想要申请获 得n个信息当中的k个信息,通过双方的交互,能够做到使得信息接收者只获得了其中的k个 提前申请的想要获得的信息。这样不仅保证了不泄露其余的信息,而且还使得信息持有者 不知道信息接收者获得了哪些信息。不经意传输因为具有上述特征而成为重要的密码学原 语,对于安全分布式计算意义重大,而且在隐私信息恢复、公平交易合同签署及不经意安全 计算等领域当中都具有重要的应用。
[0004] 为了加速不经意传输,很多人都提出了各种各样的不经意传输的协议。然而在目 前的n取k的不经意传输协议中,信息接收者申请信息时的计算还较为复杂,计算开销较大, 信息的传输效率还有待提高。

【发明内容】

[0005] 本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的 一个目的在于提出一种n取k的不经意传输方法,能够降低信息接收者申请信息时的计算开 销,提高计算速率,从而能够提高信息的传输效率。
[0006] 本发明的第二个目的在于提出一种n取k的不经意传输系统。
[0007] 根据本发明第一方面实施例的n取k的不经意传输方法,包括以下步骤:根据输入 的安全参数,输出乘法循环群G,并随机选择所述乘法循环群G中的两个生成元g和h;从所述 乘法循环群G中选择k个与信息接收者将要获取的k个信息一一对应的第一随机数,所述信 息接收者根据所述两个生成元和k个所述第一随机数,利用改进的批处理指数运算乘积算 法计算请求数据,并将所述请求数据发送给信息持有者;从所述乘法循环群G中选择与信息 持有者所持有的n个信息分别对应的第二随机数,所述信息持有者根据所述请求数据和所 述第二随机数对所述n个信息进行加密,得到密文,并将与所述信息接收者将要获取的k个 信息对应的密文发送给所述信息接收者;所述信息接收者根据所述第一随机数对与所述将 要获取的k个信息对应的密文进行解密,获取所述k个信息。
[0008] 根据本发明实施例的n取k的不经意传输方法,信息接收者通过改进的批处理指数 运算乘积算法计算请求数据,信息持有者根据请求数据对信息进行加密后,发送给信息接 收者,信息接收者进行相关的解密过程以得到信息。由此,通过利用改进的批处理指数运算 乘积算法,能够降低信息接收者申请信息时的计算开销,提高了计算速率,从而提高了信息 的传输效率。
[0009] 另外,根据本发明上述实施例的n取k的不经意传输方法还可以具有如下附加的技 术特征:
[0010] 根据本发明的一个实施例,所述将要获取的k个信息假设为al、a2、…、ak,与所述 将要获取的k个信息一一对应的k个所述第一随机数为rl、r2、…、rk,利用以下公式计算所 述请求数据:
[0012]其中,71表示将要获取的k个信息中第1个信息的请求数据。
[0013]根据本发明的一个实施例,所述n个信息为mi、m2、…、mn,其中,第i个信息 mi对应的 第二随机数为Sl,i,其中,1 < i <n,l < 1 < k,所述密文为:
[0014]气I = (gV/,所,(乃以'广,')'
[0015] 其中,Cl>1表示n个信息中第i个信息的密文。
[0016] 根据本发明的一个实施例,所述信息接收者将要获取的k个信息中第1个信息对应 的密文为〇1,1= (a,b),根据所述第一随机数对所述将要获取的k个信息对应的密文进行解 密,获取的信息为maFb/a^l < 1 <k。
[0017] 根据本发明第二方面实施例的n取k的不经意传输系统,包括:初始化模块,用于根 据输入的安全参数,输出乘法循环群G,并随机选择所述乘法循环群G中的两个生成元g和h; 请求批计算模块,用于从所述乘法循环群G中选择k个与信息接收者将要获取的k个信息一 一对应的第一随机数,并根据所述两个生成元和k个所述第一随机数,利用改进的批处理指 数运算乘积算法计算请求数据;数据加密模块,用于从所述乘法循环群G中选择与信息持有 者所持有的n个信息分别对应的第二随机数,并根据所述请求数据和所述第二随机数对所 述n个信息进行加密,得到密文;数据解密模块,用于根据所述第一随机数对与所述将要获 取的k个信息对应的密文进行解密,获取所述k个信息。
[0018]根据本发明实施例的n取k的不经意传输系统,可通过改进的批处理指数运算乘积 算法计算请求数据,并可根据请求数据对信息进行加密,在进行相关的解密过程后可得到 信息。由此,通过利用改进的批处理指数运算乘积算法,能够降低信息接收者申请信息时的 计算开销,提高了计算速率,从而提高了信息的传输效率。
[0019] 另外,根据本发明上述实施例的n取k的不经意传输系统还可以具有如下附加的技 术特征:
[0020] 根据本发明的一个实施例,所述将要获取的k个信息假设为al、a2、…、ak,与所述 将要获取的k个信息一一对应的k个所述第一随机数为rl、r2、…、rk,利用以下公式计算所 述请求数据:
[0022] 其中,71表示将要获取的k个信息中第1个信息的请求数据。
[0023] 根据本发明的一个实施例,所述n个信息为ml、m2、…、mn,其中,第i个信息mi对应 的第二随机数为si,i,其中,1 < i <n,l < 1 < k,所述密文为:
[0024] CjJ =(g'Vi>/
[0025] 其中,Cl>1表示n个信息中第i个信息的密文。
[0026] 根据本发明的一个实施例,所述信息接收者将要获取的k个信息中第1个信息对应 的密文为cai,i=(a,b),所述数据解密模块获取的信息为maizb/a'l < 1 <k。
【附图说明】
[0027] 图1为根据本发明一个实施例的n取k的不经意传输方法的流程图;
[0028] 图2为根据本发明一个实施例的n取k的不经意传输中各实体的结构示意图;
[0029] 图3为根据本发明一个实施例的n取k的不经意传输系统的结构框图。
【具体实施方式】
[0030] 下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终 相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附 图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
[0031] 下面结合附图描述本发明实施例的n取k的不经意传输方法和系统。
[0032] 图1为根据本发明一个实施例的n取k的不经意传输方法的流程图。
[0033] 如图1所示,本发明实施例的n取k的不经意传输方法,包括以下步骤:
[0034] S101,根据输入的安全参数,输出乘法循环群G,并随机选择乘法循环群G中的两个 生成元g和h。
[0035] 具体地,可输入安全参数A,选择与安全参数A对应的椭圆曲线,由椭圆曲线上的点 构成阶数为素数P的乘法循环群G。一般地,安全参数A的值越大,构成乘法循环群G的椭圆曲 线上的点越多,乘法循环群G的阶数p越大。在本发明的实施例中,可从Pairing-Based Cryptosystems函数包中调用随机数生成函数,以生成乘法循环群G中的两个生成元g和h。 [0036]需要说明的是,本发明实施例的方法中,可包括可信任权威机构、信息持有者和信 息接收者三个实体,该三个实体的连接关系如图2所示。在本发明的实施例中,步骤S101可 由可信任权威机构执行。
[0037] S102,从乘法循环群G中选择k个与信息接收者将要获取的k个信息一一对应的第 一随机数,信息接收者根据两个生成元和k个第一随机数,利用改进的批处理指数运算乘积 算法计算请求数据,并将请求数据发送给信息持有者。
[0038] 在本发明的一个实施例中,可为每个信息在ZP中选择其对应的第一随机数,其中, 4表示集合{1,2,…,p-1}。选择第一随机数的具体过程仍可通过从上述函数包中调用随机 数生成函数来实现。在本发明的实施例中,将要获取的k个信息可假设为al、a2、…、ak,与将 要获取的k个信息一一对应的k个第一随机数可为rl、r2、…、rk,可利用以下公式计算所述 请求数据:
[0040] 其中,yi可表示将要获取第1个信息的请求数据。
[0041] 本发明实施例的改进的批处理指数运算乘积算法,利用了计算过程中底数相同的 特点,可重复使用经过平方运算得到的数据,并且便于比较某一列指数的相同位置的两位, 与相关技术中每次仅可比较指数的一位相比,无疑大大较少了乘法运算的次数。
[0042] S103,从乘法循环群G中选择与信息持有者所持有的n个信息分别对应的第二随机 数,信息持有者根据请求数据和第二随机数对n个信息进行加密,得到密文,并将与信息接 收者将要获取的k个信息对应的密文发送给信息接收者。
[0043] 在本发明的一个实施例中,第二随机数仍可在ZP中选取,具体的选取方式可参照 第一随机数的获取过程,在此不再赘述。若n个信息为nu、m 2、…、mn,其中,第i个信息nu对应 的第二随机数为su,其中,1 < i <n,l < 1 < k,则密文可为:
[0044] cij = (sSiJ?mi(yi / h1 TJ)
[0045] 其中,Cl>1表示n个信息中第i个信息的密文。
[0046] S104,信息接收者根据第一随机数对与将要获取的k个信息对应的密文进行解密, 以获取k个彳目息。
[0047] 具体地,若信息接收者将要获取的k个信息中第1个信息对应的密文为ccajiU, b),根据第一随机数对将要获取的k个信息对应的密文进行解密,获取的信息为mcaib/a1^, 1 < 1 <k〇
[0048]根据本发明实施例的n取k的不经意传输方法,信息接收者通过改进的批处理指数 运算乘积算法计算请求数据,信息持有者根据请求数据对信息进行加密后,发送给信息接 收者,信息接收者进行相关的解密过程以得到信息。由此,通过利用改进的批处理指数运算 乘积算法,能够降低信息接收者申请信息时的计算开销,提高了计算速率,从而提高了信息 的
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1