基于非交互式密钥协商的可托管公钥加密系统及方法

文档序号:25991460发布日期:2021-07-23 21:03阅读:141来源:国知局
基于非交互式密钥协商的可托管公钥加密系统及方法
本发明属于通信加密
技术领域
,具体涉及一种基于非交互式密钥协商的可托管公钥加密系统及方法。
背景技术
:本部分的陈述仅仅是提供了与本发明相关的
背景技术
信息,不必然构成在先技术。全局密钥可托管是公钥加密系统的一种特殊性质,即权威机构在建立系统时可生成具有简洁表示的超级私钥,该超级私钥能够正确解密任何公钥下加密的密文。该性质在用户私钥备份与机密信息穿透式监管审计等方面有着关键的应用。目前,全局密钥可托管公钥加密方案的相关工作较少,已知的具体构造是boneh-franklin提出的基于双线性映射的escrowelgamal,已知的通用构造是基于naor-yung双重加密范式,该类构造存在以下不足:(1)密文尺寸较大,一般是起点公钥方案密文尺寸的两倍以上;(2)方案依赖非交互式零知识证明,最终所得方案或效率较低,或依赖随机谕言机模型这一强假设。因此,如何在构造标准模型下给出全局可托管公钥加密的通用构造仍是亟待解决的问题。技术实现要素:本发明为了解决上述问题,提出了一种基于非交互式密钥协商的可托管公钥加密系统及方法,本发明建立了非交互式密钥交换与全局可托管公钥加密的联系,从而能够基于非交互式密钥交换协议给出高效的可托管公钥加密方案,所得方案具有计算效率高、密文紧致的优点。根据一些实施例,本发明采用如下技术方案:一种基于非交互式密钥协商的可托管公钥加密方法,包括以下步骤:托管方基于三方非交互式密钥协商协议,生成密钥对,将密钥对的一部分作为超级私钥并秘密持有,并结合另一部分生成公开参数,将公开参数作为密钥通信的隐式输入;密文发送方根据待加密消息和接收方公钥,生成随机密钥对,并计算三方之间的会话密钥,加密消息形成密文;密文接收方利用私钥恢复三方之间的会话密钥,再利用会话密钥进行解密得到消息;托管方利用超级私钥恢复三方之间的会话密钥,再利用会话密钥进行解密得到消息。作为可选择的实施方式,将密钥对的一部分作为超级私钥并秘密持有,并结合另一部分生成公开参数的具体过程包括:托管方利用三方非交互式密钥协商协议中的系统参数生成算法得到pp_nike,利用三方非交互式密钥协商协议中的密钥生成算法得到密钥对epk和esk,输出esk作为超级私钥并秘密持有,输出pp=(pp_nike,epk)作为系统公开参数。作为可选择的实施方式,所述密文发送方和密文接收方的密钥都利用三方非交互式密钥协商协议中的用户密钥生成算法生成。作为可选择的实施方式,所述密文发送方生成随机密钥对(pk_t,sk_t),基于三方非交互式密钥协商协议中的密钥协商算法利用sk_t计算(pk_t,pk,epk)三方之间的会话密钥k,再利用对称加密算法加密消息m得到c,最终的密文为(pk_t,c)。作为可选择的实施方式,所述密文发送方利用对称加密算法加密消息。作为可选择的实施方式,所述密文接收方基于三方非交互式密钥协商协议中的密钥协商算法利用私钥sk恢复(pk_t,pk,epk)三方之间的会话密钥k,再利用k对c进行解密得到消息m。作为可选择的实施方式,所述托管方三方非交互式密钥协商协议中的密钥协商算法利用esk恢复(pk_t,pk,epk)三方之间的会话密钥k,再利用k对c进行解密得到消息m。作为可选择的实施方式,对于基于非对称的双线性映射,令e是g_1×g_2→g_t的双线性映射,其中g_1、g_2和g_t均为阶为素数p的循环群,托管方生成超级私钥和公开参数的过程为:随机选取g_1和g_2的生成元,记作g_1和g_2,选取z_p中的随机元素作为esk,计算epk_1=g_1^esk∈g_1,epk_2=g_2^esk∈g_2,令epk=(epk_1,epk_2)输出超级私钥esk和系统公开参数pp=(g_1,g_2,epk)。作为可选择的实施方式,对于基于非对称的双线性映射,用户密钥的生成过程为:随机选取z_p中的随机元素作为私钥sk,计算pk=g_1^sk∈g_1,输出密钥对(pk,sk)。一种基于非交互式密钥协商的可托管公钥加密系统,包括若干客户终端,具体的:作为托管方的客户终端,被配置为基于三方非交互式密钥协商协议,生成密钥对,将密钥对的一部分作为超级私钥并秘密持有,并结合另一部分生成公开参数,将公开参数作为密钥通信的隐式输入;并利用超级私钥恢复三方之间的会话密钥,再利用会话密钥进行解密得到消息;作为密文发送方的客户终端,被配置为根据待加密消息和接收方公钥,生成随机密钥对,并计算三方之间的会话密钥,加密消息形成密文;作为密文接收方的客户终端,被配置为利用私钥恢复三方之间的会话密钥,再利用会话密钥进行解密得到消息。与现有技术相比,本发明的有益效果为:本发明给出了标准模型下全局可托管公钥加密的通用构造,该构造可基于任意非交互式密钥协商方案,与现有方案相比,既不需要依赖计算效率低下的对称双线性映射,也不需要依赖naor-yung的双重加密范式和复杂的非交互式零知识证明,因此具有计算效率高和密文尺寸紧致的优势。为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。图1是本实施例的通信流程示意图。具体实施方式:下面结合附图与实施例对本发明作进一步说明。应该指出,以下详细说明都是例示性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属
技术领域
的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。一种全局密钥可托管公钥加密系统,可部署于需要全局密钥托管服务的应用场景。如图1所示,该系统的构造方法包括:1.系统参数生成setup托管方运行3-partynike的系统参数生成算法得到pp_nike,运行3-partynike的密钥生成算法得到密钥对(epk和esk),输出esk作为超级私钥并秘密持有,输出pp=(pp_nike,epk)作为系统公开参数。系统公开参数将作为以下所有算法的隐式输入。2.用户密钥生成keygen该算法与3-partynike的用户密钥生成算法相同。3.加密encrypt该算法由密文发送方运行,以待加密消息m和接收方公钥pk为输入,密文发送方生成随机密钥对(pk_t,sk_t),3-partynike的密钥协商算法利用sk_t计算(pk_t,pk,epk)三方之间的会话密钥k,再利用对称加密算法加密消息m得到c,最终的密文为(pk_t,c)。4.解密decrypt该算法由密文接收方运行,以私钥sk和密文(pk_t,c)为输入,首先运行3-partynike的密钥协商算法利用私钥sk恢复(pk_t,pk,epk)三方之间的会话密钥k,再利用k对c进行解密得到消息m。5.全局解密decrypt*该算法由托管方运行,以超级私钥esk和密文(pk_t,c)为输入,首先调用3-partynike的密钥协商算法利用esk恢复(pk_t,pk,epk)三方之间的会话密钥k,再利用k对c进行解密得到消息m。以下以非对称的双线性映射为工具,给出一个具体的全局密钥可托管公钥加密方案设计。以下令e是g_1×g_2→g_t的双线性映射,其中g_1、g_2和g_t均为阶为素数p的循环群。1.系统参数生成setup托管方随机选取g_1和g_2的生成元,记作g_1和g_2,选取z_p中的随机元素作为esk,计算epk_1=g_1^esk∈g_1,epk_2=g_2^esk∈g_2,令epk=(epk_1,epk_2)输出超级私钥esk和系统公开参数pp=(g_1,g_2,epk)。2.用户密钥生成keygen用户随机选取z_p中的随机元素作为私钥sk,计算pk=g_1^sk∈g_1,输出密钥对(pk,sk)。3.加密encrypt密文发送方随机选取z_p中的随机元素r,计算pk_r=g_2^r∈g_2,利用r计算(pk_r,pk,epk)三方之间的会话密钥k=e(pk,epk_2)^r∈g_t,其中pk是接收方的公钥,再利用对称加密算法加密消息m得到c=ske.enc(k,m),最终的密文为(pk_r,c)。4.解密decrypt密文接收方利用私钥sk恢复(pk_r,pk,epk)三方之间的会话密钥k=e(epk_1,pk_r)^sk∈g_t,再利用k对c进行解密得到消息m。5.全局解密decrypt*托管方利用超级私钥esk恢复(pk_r,pk,epk)三方之间的会话密钥k=e(pk,pk_r)^esk∈g_t,再利用k对c进行解密得到消息m。上述方案基于双线性群中的判定性diffie-hellman困难性假设满足不可区分选择明文安全性。利用软件编程实现上述具体方案,在相同的安全级别下(128比特),相比已知的最佳方案boneh-franklinescrowelgamalpke,新方案的计算效率提升约一个数量级,存储开销也进一步降低。性能测试数据及对比表1和表2所示。表1.计算效率比较(单位:毫秒ms)方案系统建立密钥生成加密用户解密全局解密escrowelgamal2.8792.0148.7236.6546.745本实施例0.2430.0580.6800.5790.586表2.存储大小比较(单位:比特bit)方案公开参数超级密钥公钥私钥密文escrowelgamal307225615362563072本实施例22862563812562286本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1