多方计算的密钥管理制造技术

技术编号:28303349 阅读:34 留言:0更新日期:2021-04-30 16:34
公开用于管理内部部署环境和云计算环境中的密码密钥以及执行多方密码术的方法和系统。可由密钥管理计算机从硬件安全模块检取密码密钥。所述密钥管理计算机可从所述密码密钥生成密钥份额,并将所述密钥份额安全地分配给计算机节点或密钥份额数据库。所述计算机节点可使用所述密钥份额,以便执行安全多方密码术。

【技术实现步骤摘要】
【国外来华专利技术】多方计算的密钥管理
技术介绍
密码术用于维护信息安全,信息安全继而用于通过互联网等网络进行的许多通信。在大多数密码系统中,密码密钥或密码密钥对用于加密和解密消息。如果密码密钥没有被盗,则即使存在窃听者,各方也可安全地彼此通信。在计算机系统中,密码术在密码认证、私人消息接发和电子商务等方面起着重要作用。密码密钥可存储在硬件安全模块中,以防止密码密钥被盗。这些硬件安全模块可以是设计成保护密码密钥的物理计算装置,包括安全密码处理芯片。然而,为了执行密码操作,通常需要从硬件安全模块检取密码密钥。通常,每当密码密钥被检取时,密码密钥会被导入到不如硬件安全模块安全的计算环境中,从而增大密码密钥被盗或泄漏给窃听者的风险。具体地说,最近的软件开发趋势引起对第三方云计算系统的广泛采用。组织不在其自身集中式网络上托管或服务,而是越来越多地将其服务托管在第三方云上。这会产生安全问题,对于密码操作或服务来说尤为如此。通常,为了在云平台上执行传统的密码操作,组织必须将其密码密钥交给不受所述组织控制的第三方(即云提供商)。密码密钥驻存在云基础设施中的存储器中,而所述组织无法保证密码密钥不能被窃听者或另一恶意第三方检取。或者,密码密钥可保持在硬件安全模块中,并且可在每一次进行密码操作时由基于云的密码应用程序访问。以此方式,密码密钥不会被传送到云中。然而,每一次从硬件安全模块检取密码密钥都会使密码密钥暴露(无论怎么短暂)。另外,时延和通信开销可极大地增加执行密码操作所需的时间量,从而极大地降低密码服务的效率并增加其实施成本。本专利技术的实施例单独地和共同地解决这些和其它问题。
技术实现思路
本专利技术的实施例涉及用于在内部部署(on-premises)和分布式计算环境(例如云计算网络)两者中管理和分配密码密钥份额和执行安全多方加密的方法和系统。实施例利用了混淆(garbled)电路作为三方姚氏(YAO)协议的部分,以便执行多方密码术。第一计算机节点和第二计算机节点各自向第三计算机节点提供“混淆”密钥份额,所述第三计算机节点使用所述混淆密钥份额以便利用混淆电路来加密初始消息。第一计算机节点和第二计算机节点从未看到属于另一计算机节点的密钥份额,而第三计算机节点仅接收呈混淆形式的密钥份额。在一个实施例中,密钥管理计算机可从硬件安全模块检取密码密钥并基于所述密码密钥生成第一和第二密钥份额。这两个密钥份额可被安全传送到云计算环境中的第一和第二计算机节点,使得每个计算节点仅接收其自身的密钥份额而非另一密钥份额。两个计算节点连同第三计算节点一起可使用所述两个密钥份额共同执行三方姚氏协议以加密和解密从客户端计算机接收的消息。在另一实施例中,密钥管理计算机可从硬件安全模块检取密码密钥并基于所述密码密钥生成第一和第二密钥份额。第一和第二密钥份额可被安全传送到第一密钥份额数据库和第二密钥份额数据库。第一和第二计算节点可各自从相应数据库检取密钥份额。两个计算节点连同第三计算节点一起可使用这两个密钥份额共同执行三方姚氏协议,以加密和解密从客户端计算机接收的消息。本公开的实施例提供关于密码操作的安全、效率和速度的数个优势。例如,本公开的实施例提供了数个安全益处。通过将密码密钥拆分或以其它方式分成密钥份额,以其完整形式存储所述密码密钥的唯一位置是在硬件安全模块上。这使得黑客或其它恶意用户更加难以获取密码密钥,因为黑客需要破解多个计算机节点、从那些计算机节点检取密钥份额并确定如何重组所述密钥份额以生成密钥。此外,在基于云计算的实施例中,整个密钥从未进入云计算环境的范围。因此,在密钥份额预配过程期间,不存在整个密钥被截获的风险。此外,不同于其中密码密钥在被拆分为密钥份额之前由计算机节点接收的常规系统,本公开的实施例生成密钥份额,然后将所述密钥份额预配到每个计算机节点。因此,参与多方计算的每个计算机节点都不会看到属于其它计算机节点的密钥份额,因此密码密钥被黑客截获的风险减少。另外,本公开的实施例通过减少对硬件安全模块的依赖而提高效率。在下文论述的两个实施例中,硬件安全模块仅被访问一次以便将密钥份额预配给参与的计算机节点,从而减少硬件安全模块在密码密钥存储方面的作用。因此,相对于常规远程硬件安全模块加密,密码过程的速度得以提高,因为参与的计算机节点花了较少时间与硬件安全模块通信以及等待以完成密码操作。此外,在一些内部部署相关的实施例中,通过将密钥份额直接预加载到数据库来进一步减少对硬件安全模块的利用。作为另一益处,本公开的实施例可用作在云计算环境中在没有基于云的硬件安全模块的情况下运行的任何应用程序或服务的可扩展密钥管理。并非所有常规云计算环境都提供云托管的硬件安全模块。然而,使用本公开的实施例,可执行密码操作,并且即使在不存在基于云的硬件安全模块的情况下也可管理密码密钥和密钥份额。一个实施例涉及一种方法,包括:由第一计算机节点从密钥管理计算机接收第一密钥份额;由所述第一计算机节点从客户端计算机接收初始消息;由所述第一计算机节点将所述初始消息传送给第二计算机节点;由所述第一计算机节点生成混淆电路、基于所述第一密钥份额和所述混淆电路的第一混淆密钥份额以及基于所述初始消息和所述混淆电路的混淆消息;由所述第一计算机节点将所述混淆电路、所述第一混淆密钥份额和所述混淆消息传送给第三计算机节点,其中所述第三计算机节点还从所述第二计算机节点接收基于存储于所述第二计算机节点处的第二密钥份额和所述混淆电路的第二混淆密钥份额,这使所述第三计算机节点通过将所述第一混淆密钥份额、所述第二混淆密钥份额和所述混淆消息输入到所述混淆电路而生成后续消息并将所述后续消息传送给所述第一计算机节点;以及由所述第一计算机节点将所述后续消息或其衍生内容传送给所述客户端计算机。另一实施例涉及一种第一计算机节点,包括:处理器;以及耦合到所述处理器的非瞬态计算机可读介质,所述非瞬态计算机可读介质包括代码,所述代码可由所述处理器执行以用于实施上述方法。另一实施例涉及一种方法,包括:由第三计算机节点从第一计算机节点接收第一混淆电路、第一混淆密钥份额和第一混淆消息;由第三计算机节点从第二计算机节点接收第二混淆电路、第二混淆密钥份额和第二混淆消息;由所述第三计算机节点通过将所述第一混淆密钥份额、所述第二混淆密钥份额和所述第一或所述第二混淆消息输入到所述第一或所述第二混淆电路来生成后续消息;以及由所述第三计算机节点将所述后续消息传送给所述第一计算机节点。术语“服务器计算机”可包括功能强大的计算机或计算机集群。例如,服务器计算机可以是大型主机、小型计算机群集或像单元一样工作的一组服务器。在一个示例中,服务器计算机可以是耦合到网络服务器的数据库服务器。服务器计算机可包括一个或多个计算设备,并且可使用各种计算结构、布置和编译中的任一种来服务来自一个或多个客户端计算机的请求。“存储器”可以是可以存储电子数据的任何合适的装置或多个装置。合适的存储器可包括非瞬态计算机可读介质,其存储可由处理器执行以实施所要方法的指令。存储器的示例可包括一个或多个存储器芯本文档来自技高网
...

【技术保护点】
1.一种方法,包括:/n由第一计算机节点从密钥管理计算机接收第一密钥份额;/n由所述第一计算机节点从客户端计算机接收初始消息;/n由所述第一计算机节点将所述初始消息传送给第二计算机节点;/n由所述第一计算机节点生成混淆电路、基于所述第一密钥份额和所述混淆电路的第一混淆密钥份额以及基于所述初始消息和所述混淆电路的混淆消息;/n由所述第一计算机节点将所述混淆电路、所述第一混淆密钥份额和所述混淆消息传送给第三计算机节点,其中所述第三计算机节点还从所述第二计算机节点接收基于存储于所述第二计算机节点处的第二密钥份额和所述混淆电路的第二混淆密钥份额,/n这使所述第三计算机节点通过将所述第一混淆密钥份额、所述第二混淆密钥份额和所述混淆消息输入到所述混淆电路而生成后续消息并将所述后续消息传送给所述第一计算机节点;以及/n由所述第一计算机节点将所述后续消息或其衍生内容传送给所述客户端计算机。/n

【技术特征摘要】
【国外来华专利技术】1.一种方法,包括:
由第一计算机节点从密钥管理计算机接收第一密钥份额;
由所述第一计算机节点从客户端计算机接收初始消息;
由所述第一计算机节点将所述初始消息传送给第二计算机节点;
由所述第一计算机节点生成混淆电路、基于所述第一密钥份额和所述混淆电路的第一混淆密钥份额以及基于所述初始消息和所述混淆电路的混淆消息;
由所述第一计算机节点将所述混淆电路、所述第一混淆密钥份额和所述混淆消息传送给第三计算机节点,其中所述第三计算机节点还从所述第二计算机节点接收基于存储于所述第二计算机节点处的第二密钥份额和所述混淆电路的第二混淆密钥份额,
这使所述第三计算机节点通过将所述第一混淆密钥份额、所述第二混淆密钥份额和所述混淆消息输入到所述混淆电路而生成后续消息并将所述后续消息传送给所述第一计算机节点;以及
由所述第一计算机节点将所述后续消息或其衍生内容传送给所述客户端计算机。


2.根据权利要求1所述的方法,其中所述混淆电路是第一混淆电路,其中所述混淆消息是第一混淆消息,并且其中所述第三计算机节点还从所述第二计算机节点接收第二混淆电路以及基于所述初始消息和所述第二混淆电路的第二混淆消息。


3.根据权利要求2所述的方法,其中所述第三计算机节点确定所述第一混淆电路与所述第二混淆电路匹配以及所述第一混淆消息与第二混淆消息匹配。


4.根据权利要求1所述的方法,还包括:
由所述第一计算机节点基于所述后续消息和所述混淆电路生成解除混淆的后续消息。


5.根据权利要求1所述的方法,其中所述初始消息是明文,并且所述后续消息或其衍生内容是密文。


6.根据权利要求1所述的方法,其中所述密钥管理计算机从存储在硬件安全模块中的密钥生成所述第一密钥份额。


7.根据权利要求1所述的方法,其中所述密钥管理计算机形成所述第一密钥份额和所述第二密钥份额。


8.根据权利要求1所述的方法,其中所述第一计算机节点、所述第二计算机节点和所述第三计算机节点全都处于同一内部部署处。


9.根据权利要求1所述的方法,其中所述第一计算机节点、第二计算机节点和第三计算机节点是分布式计算网络的部分。


10.一种第一计算机节点,包括:
处理器;以及
耦合到所述处理器的非瞬态计算机可读介质,所述非瞬态计算机可读介质包括能由所述处理器执行以实施方法的代码,所述方法包括:
从密钥管理计算机接收第一密钥份额;
从客户端计算机接收初始消息;
将所述初始消息传送给第二计算机节点;
生成混淆电路、基于所述第一密钥份额和所述混淆电路的第一混淆密...

【专利技术属性】
技术研发人员:O·格里博S·纳加桑达拉姆
申请(专利权)人:维萨国际服务协会
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1