向访客系统指派多个硬件安全模块之一的方法和指派系统的制作方法

文档序号:10535291阅读:227来源:国知局
向访客系统指派多个硬件安全模块之一的方法和指派系统的制作方法
【专利摘要】可以提供一种向访客系统指派多个硬件安全模块之一的方法和指派系统。该方法可以包括:使用用于挑战协议的数据模式来用主密钥配置多个硬件安全模块中的至少一个硬件安全模块,该挑战协议适用于证明多个硬件安全模块中的至少一个被配置有主密钥;以及基于所述挑战协议的肯定结果来向所述访客系统指派所述多个硬件安全模块中的包括所述主密钥的至少一个硬件安全模块。
【专利说明】
向访客系统指派多个硬件安全模块之一的方法和指派系统
【背景技术】
[0001]本发明一般地涉及用于向访客系统指派多个硬件安全模块中的至少一个的方法。本发明进一步涉及相关的指派系统和计算机程序产品。
[0002]在当今的计算机系统和信息传输网络中,加密元素是重要的技术组成部分。信息可以以加密安全的形式被存储或传送,以避免对所存储和传送的信息的未授权访问。在一些情况下,可以使用纯基于软件的算法,并且在其他情况下,硬件支持和安全特定的元件可以用于执行这种类型的数据保护。在一些情况下,这些特定元件被称为硬件安全模块(HSM),其可以用作计算机或信息传输系统的一部分。这样的硬件安全模块可以包括特定电路,以便于提供用于数据加密和数据解密的功能。该功能还可以包括生成和存储加密密钥以供访客系统使用。
[0003]存在涉及用于向访客系统指派多个硬件安全模块中的至少一个的方法的若干公开。例如,文献US 8.811,223 B2公开了用于多核系统中的多个加密卡的分布操作的系统和方法。在实施例中,提供加密/解密资源的多个加密卡被指派给多核处理系统上的多个分组处理引擎和操作。
[0004]现有技术的典型限制是,硬件安全模块到功能和程序的映射被假定为是给定的事实。可能需要手动指派过程。
[0005]然而,可能需要克服这样的限制,特别是变得独立于在硬件安全模块和功能之间的手段映射。

【发明内容】

[0006]该需要可以通过根据独立权利要求的用于向访客系统指派多个硬件安全模块中的至少一个的方法、用于向访客系统指派多个硬件安全模块中的至少一个的指派系统和计算机程序产品来解决。
[0007]根据一个实施例,可以提供一种用于向访客系统指派多个硬件安全模块中的至少一个的方法。该方法可以包括:使用用于挑战协议的数据模式来用主密钥配置多个硬件安全模块中的至少一个硬件安全模块,该挑战协议可以被适配用于证明多个硬件安全模块中的至少一个硬件安全模块被配置有主密钥;以及基于挑战协议的肯定结果来向访客系统指派多个硬件安全模块中的包括主密钥的至少一个硬件安全模块。
[0008]根据另一实施例,可以提供一种用于向访客系统指派多个硬件安全模块中的至少一个的指派系统。该指派系统可以包括多个硬件安全模块中的至少一个硬件安全模块,其包括适用于存储主密钥的存储器。指派系统还可以包括确定单元作为访客系统的一部分。确定单元可以被适配用于基于用于挑战协议的数据模式来生成结果,该挑战协议适用于证明多个硬件安全模块中的至少一个包括主密钥。指派系统可以进一步包括指派单元,该指派单元适用于基于挑战协议的肯定结果来向访客系统指派多个硬件安全模块中的包括主密钥的至少一个。
[0009]可以指出,硬件安全模块(S卩HSM)可以是例如加密卡。访客系统可以例如是运行或执行访客操作系统的虚拟机,即VM。配置HSM可以包括将主密钥存储在HSM的存储器中。
[0010]所提出的用于向访客系统指派多个硬件安全模块中的至少一个的方法可以提供几个优点:
[0011]如果若干硬件安全模块可用于管理程序,则可以确保HSM/硬件卡/域可以被指派给特定访客,例如虚拟机。这可以以下述方式来进行:独立的主密钥可以仅在一个或多个硬件安全模块上可用。主密钥可以不需要被传输到访客系统。实际上,主密钥可能永远不会离开HSM。此外,对于包括要被指派给访客系统的特定加密密钥的特定硬件安全模块,不需要具有位置信息(例如硬件插槽号)的简档/建立描述文件,反之亦然。传统的系统可能需要这样的建立描述,该建立描述包括特定插槽位置以便于对特定硬件安全模块指派访客系统。在这样的情况下,成功的指派可以取决于非常仔细插入的硬件安全模块/卡。将一个或多个硬件安全模块插入特定并且可能预定的插槽中的错误可能导致大影响的错误情况,即访客系统对错误密钥材料的访问或所需要的安全密钥的丢失。本文提出的方法和相关指派系统可以被设计为避免这样的错误,因为在管理程序上执行的访客操作系统可以自主地发现“其正确的硬件安全模块”,并且同时确保主密钥不会离开硬件安全模块。这可以确保指派过程的高可靠性以及高安全标准。硬件安全模块上的主密钥不会在任何传输期间被损害。
[0012]此外,可以不需要手动指派处理。如果(在传统系统中)不使得访客系统能够启用自动指派过程,则可能需要手动指派过程。在高频VM生成和终止环境中,这可能是不可能通过人类操作员来管理的任务。本文提出的方法和相关的指派系统通过与管理程序、访客系统以及HSM相关的发送和接收单元以及专用加密和解密单元以及确定单元的相互关联的功能的技术手段来克服这样的传统限制。
[0013]根据该方法的另一实施例,访客密钥可以用主密钥来加密。这可以在硬件安全模块中作为初始化步骤的一部分来执行。可以注意到,也在该初始化步骤期间,主密钥可以在访客密钥的加密期间不离开安全模块。访客密钥可能已经被发送到硬件安全模块并且以加密的方式通过访客系统或相关管理程序被接收回来。
[0014]该方法的一个实施例还可以包括用访客密钥来加密数据模式。这样,数据模式可以在访客系统中以未加密的原始形式以及以加密的形式来提供。
[0015]该方法的另一实施例还可以包括通过至少一个硬件安全模块来对加密的访客密钥进行解密。该过程可能是有利的,如果一在所述初始化过程之后的定期操作期间,加密的访客密钥和加密的数据模式可以被发送到硬件安全模块。现在,可以使得硬件安全模块能够用在硬件安全模块内可用的主密钥来对加密的访客密钥进行解密,并且在下一步骤中,用解密的访客密钥来解密加密的数据模块,产生了加密的数据模式。
[0016]该方法的高级实施例还可以包括由至少一个硬件安全模块使用解密的访客密钥来对加密的数据模式进行解密,使得数据模式可在HSM内以及访客系统侧可用。该未加密的数据模式可以在下一步骤中被发送到访客系统。
[0017]根据本方法的一个有利实施例,挑战协议可以包括,如果访客系统确定了由至少一个硬件安全模块解密的数据模式与访客系统加密的数据模式相同,则生成肯定结果。这可能需要解密的数据模式可以在硬件安全模块内的解密之后已被发送到访客系统。而且,该过程可以确保主密钥将不离开硬件安全模块。另一方面,可以在访客系统侧确定访客系统和硬件安全密钥模块内的特定密钥需要被彼此指派。
[0018]根据本方法的一个许可实施例,该方法还可以包括由至少一个硬件安全模块使用解密的访客密钥来加密数据模式,产生在HSM内的加密的数据模式。该实施例改变了用于上述挑战协议的基础,因为加密的数据模块必须在下一步骤中被比较。
[0019]根据该方法的一个替代实施例,挑战协议可以包括,如果访客系统确定了由至少一个硬件安全模块加密的加密数据模式与之前已经由访客系统加密的加密数据模式相同,则生成肯定结果。
[0020]根据该方法的优选实施例,至少一个硬件安全模块的配置、使用用于挑战协议的数据模式、以及向访客系统指派多个硬件安全模块中的至少一个由受信固件来执行。这可以是在与管理程序协作进行工作的相关硬件服务器或受信组件(硬件或软件)上运行的管理程序的组件。
[0021]根据该方法的一个有利实施例,可以具体地通过访客系统或管理程序来随机地选择或确定数据模式。替代地,可以根据与特定访客系统相关的规则来预定义数据模式。因此,所提出的方法允许在独立于HSM来选择数据模式中的完全自由度。
[0022]可以指出,所讨论的实施例和与本发明的方法相关的优点还可以(以相关形式,并且使用有利的硬件组件,例如HSM加密单元、HSM解密单元和发送和接收模块)适用于指派系统。
[0023]此外,实施例可以采取计算机程序产品的形式,可从提供用于由计算机或任何指令执行系统或结合其使用的程序代码的计算机可使用或计算机可读介质访问。出于该描述的目的,计算机可使用或计算机可读介质可以是可以包含用于存储、通信、传播或传输用于由指令执行系统、装置或设备或结合其使用的程序的任何装置。
[0024]该介质可以是用于传播介质的电子、磁、光、电磁、红外线或半导体系统。计算机可读介质的示例可以包括半导体或固态存储器、磁带、可移除计算机盘、随机存取存储器(RAM)、只读存储器(R0M)、刚性盘和光盘。光盘的当前示例包括压缩盘-只读存储器(CD-R0M)、压缩盘-读/写(CD-R/W)、DVD和蓝光盘。
【附图说明】
[0025]还应当注意,已经参考不同的主题描述了本发明的实施例。具体地,一些实施例已经参考方法类权利要求被描述,而其他实施例已经参考装置类权利要求被描述。然而,本领域技术人员将从上述以及下述描述中认识到,除非另外指示,除了属于一种类型的主题的特征的任何组合之外,与不同主题相关的特征之间的任何组合,具体地,方法类权利要求的特征和装置类权利要求的特征之间的任何组合,也被视作在本文献内被公开。
[0026]根据下文中要描述的实施例的示例,本发明的上述方面和其他方面是显而易见的,并且参考实施例的示例来解释,但是本发明不限于此。
[0027]将仅通过示例的方式并且参考以下附图来描述本发明的优选实施例:
[0028]图1示出了用于向访客系统指派多个硬件安全模块中的至少一个的本发明方法的实施例的框图。
[0029]图2示出了用于经由管理程序向硬件安全模块指派由用户使用的访客系统的一般建立的框图。
[0030]图3示出了用于向访客系统指派多个硬件安全模块中的至少一个的方法的一个替代的实施例的框图。
[0031]图4示出了用于向访客系统指派多个硬件安全模块中的至少一个的方法的另一替代的实施例的实施例。
[0032]图5示出了硬件安全模块的安全密钥可以如何被指派给访客系统的流程图。
[0033]图6示出了支持图1的方法的数据结构的实施例。
[0034]图7示出了相关的指派系统。
[0035]图8示出了用于与图7的指派系统一起使用的计算机系统的实施例。
【具体实施方式】
[0036]在本说明书的上下文中,可以使用以下约定、术语和/或表达:
[0037]术语“硬件安全模块”或HSM可以表示对计算机系统的可插入组件或独立连接组件。HSM可以使用主密钥或例如访客密钥的另一提供的密钥来执行加密和解密操作。加密和/或解密可以以硬件和软件或二者的任何组合来在硬件安全模块上执行。数据可以由硬件安全模块以未加密的方式被接收,并且可以在HSM上被加密,反之亦然。
[0038]术语“访客系统”可以表示例如在管理程序上在虚拟机VN中执行的操作系统。用户可以被指派给访客系统。可能有利的是,特定密码密钥可以被指派给访客系统。上述管理程序可以是执行这样的指派中的工具。特定密码密钥可以被存储在HSM上。
[0039]术语“内容”可以表示任何基于字符的串。该串可以包括可读文本或任何其他二进制数据。
[0040]术语“数据模式”基本上可以是用于内容的另一表达。数据模式可以表示可读字符串,或者可以包括二进制数据。在该文档的上下文中,没有对数据模式的额外要求。其还可以被预先定义、随机选择或以其他方式确定。
[0041]术语“主密钥”可以表示存储在HSM上的加密/解密密钥。在本文档的上下文中,可以假定该主密钥可能永远不会从其所存储的硬件安全模块向外传输。
[0042]术语“挑战协议”可以指例如访客系统和HSM的两个实体之间的协议,其可以确保特定访客系统被指派给“其正确的HSM”。可以将对挑战的响应与预期的结果作比较。在两个模式彼此匹配的情况下,该结果可以被视作是肯定的或成功的。挑战协议可以确保存储在HSM上的主密钥在挑战协议期间不会离开HSM。
[0043]术语“访客加密单元”可以表示适用于在访客系统内、或作为访客系统的一部分或作为由访客系统使用的服务执行加密和/或解密操作的模块。
[0044]术语“硬件安全模块加密单元”可以表示HSM内适用于使用主密钥或例如访客密钥的另一提供的密钥来加密任何数据模式的模块。因此,“硬件安全模块解密单元”可以是用于使用主密钥来解密例如访客密钥的任何数据模式或者使用例如访客密钥的另一提供的密钥来解密另一数据模式的工具。
[0045]在下文中,将给出附图的具体描述。附图中的所有指令都是示意性的。首先,给出了用于向访客系统指派多个硬件安全模块中的至少一个的本发明方法的实施例的框图。此后,将描述其他实施例和用于向访客系统指派多个硬件安全模块中的至少一个的指派系统的实施例。
[0046]图1示出了用于向访客系统指派例如加密卡的多个硬件安全模块(S卩HSM)中的至少一个的方法的实施例的框图。这可以使用受信管理程序、独立组件或者由访客系统自身来执行。该指派可以基于内容,即数据模式。
[0047]该方法包括用主密钥来配置102多个硬件安全模块中的至少一个硬件安全模块。即,主密钥可以被存储在使用数据模式的HSM内。具体地,数据模式可以是随机选择的内容,例如,串“hello word”或任何其他人类可读或非可读数据串被使用104以用于挑战协议,该挑战协议适用于证明多个硬件安全模块中的至少一个被配置有主密钥。
[0048]此外,该方法包括基于挑战协议的肯定结果,特别是确认,来向访客系统指派106多个硬件安全模块中的包括主密钥的至少一个。
[0049]图2示出了经由管理程序206向硬件安全模块216、218、220指派由用户210、212或214使用的访客系统208的一般建立的框图200。更具体地,用户214或用户系统214可以通过由云224表示的传统或云计算技术来访问访客系统208或访客操作系统208。例如VM的访客系统208可以在管理程序206上执行。管理程序206可以由硬件服务器202来执行。管理程序206可以访问例如在盘或另一存储系统222上所存储的信息,包括用于例如用户3、214的特定访客系统的硬件安全模块的配置信息。其他用户系统210、212可以使用不同的HSM216、218来在管理程序206上运行不同的访客系统(未示出)。可以对用户3、214指派多于一个的例如HSM3220。每个HSM 216、218、220可以存储多于一个的密码密钥。
[0050]图3示出了用于向访客系统208指派多个硬件安全模块216、218、220中的至少一个的方法100的一个替代的实施例的框图300。初始地,可以用HSM 220的主密钥304来加密访客密钥306。为此,未加密的访客密钥306可能已经被发送到HSM 220,通过该HSM 220其已经使用主密钥304被加密。而且,作为初始化步骤的一部分,加密的访客密钥可能已经被发送回访客系统208。相应的发送和接收单元或模块可以是用于在访客系统208和HSM 220之间的这样的数据交换的工具。
[0051 ]现在可以以下述方式来执行可能的挑战协议:在第一步骤中,在访客系统208上,可以使用访客密钥306来加密所选择的模式308。可以注意,在该过程步骤期间,可以不通过主密钥304来加密访客密钥306。结果,未加密的访客密钥306(未示出)、加密的访客密钥307、数据模式308和加密的数据模式310在访客系统208内可用。
[0052]现在,可以将加密的访客密钥307(由主密钥304加密)和加密的数据模式310(由访客密钥306加密)从访客系统308发送312到HSM 220。这里,可以使用主密钥304,可能使用HSM解密单元来解密加密的访客密钥307,产生未加密的访客密钥306。使用该访客密钥306,HSM 220可以解密加密的数据模式310,得到未加密的数据模式308。该未加密的数据模式308可以被发送314回访客系统208。现在,可以将接收到的数据模式308与原始数据模式308作比较。在两个数据模式匹配的情况下,挑战协议可以产生肯定结果。挑战协议产生了成功。
[0053]图4示出了用于向访客系统208指派多个硬件安全模块220中的至少一个的方法100的替代实施例400。而且,在该情况下,可以执行挑战协议。与图3的上下文中讨论的示例的主要区别在于,加密的访客密钥307与未加密的数据模式308—起从访客系统208被发送312到HSM 220。再次,相应的发送和接收单元或模块可以是用于在访客系统208和HSM 220之间的这样的数据交换的工具。
[0054]使用HSM 220,可以使用主密钥304来解密加密的访客密钥307,产生HSM 220中的未加密的访客密钥306。该未加密的访客密钥306可以用于加密数据模式308,产生加密的数据模式310。
[0055]接下来,该新加密的数据模式310可以被发送314回到访客系统208。访客系统208可以将该接收到的加密的数据模式310与在访客系统208中可用的加密的数据模式310作比较。如果两个加密的数据模式彼此匹配,则挑战协议具有肯定结果,即确认已经产生并且访客系统208可以被指派给“其正确的HSM” 220。
[0056]图5示出了硬件安全模块216、218、220的安全密钥可以如何被指派给访客系统的流程图500。该过程开始于502。该过程可以迭代地执行一系列步骤和测试。首先,可以访问506下一个卡,即硬件安全模块216、218、220。如果没有卡、S卩HSM可以是可访问的508,则该过程可以终止于510。
[0057]如果可以发现卡、S卩HSM 216、218、220,则可以访问512所选择的卡的下一元件。如果不存在下一元件514,则该过程可以终止,导致坏出口 516。在测试514的肯定结果的情况下,可以访问518所选择的卡的所需要的密钥的下一元素。如果没有下一密钥是可用的520,则该过程可以返回到步骤506 ο如果存在下一元素,则可以执行上述挑战协议522。在挑战已经被解决的情况下,这意味着可能已经生成了肯定结果524,访客系统208可以被配置526为被指派给所选择的卡、即所选择的HSM 516、518、220的特定密钥。在测试524期间“否”的情况下,该过程可以返回到步骤512,并且访问所选择的卡上的下一元件。这样,可以对访客系统207指派若干密钥。
[0058]可以注意,图3和图4与图5的挑战/请求框522相关。
[0059]图6示出了支持图1的方法的数据结构600的实施例。开始点可以是(a)所需要的卡,S卩HSM 216、218、220。对于每个所需要的卡/把1,可以提供具有编号[0],[1],[2],[3],
[4],...的数据结构602。数据结构602的每个元素可以包括针对具有编号数[O],[I],[2],
[3],[4],...的访客系统208的所需要的密钥的指针。所需要的密钥的每个元素可以包括针对挑战/响应过程所需要的数据的指针:普通数据模式308、访客密钥306和加密的数据模式310。数据结构可以由管理程序206或访客系统208或者二者的组合来控制。
[0060]图7示出了相关的指派系统700。用于基于例如数据模式308的内容来向访客系统208指派多个硬件安全模块216、218、220中的至少一个220的指派系统700可以包括包含适用于存储主密钥304的存储器(这里没有明确示出)的多个硬件安全模块216、218、220中的至少一个硬件安全模块220。
[0061]指派系统700可以包括确定单元702作为访客系统208的一部分。确定单元可以被适配用于基于用于挑战协议522的数据模式308来生成肯定结果,挑战协议被适配用于证明多个硬件安全模块216、218、220中的至少一个220包括主密钥。
[0062]指派系统700还可以包括指派单元704,该指派单元704被适配用于基于挑战协议522的肯定结果来向访客系统208指派多个硬件安全模块216、218、220中的包括主密钥304的至少一个220。此外,可以使用发送和接收单元。
[0063]此外,加密单元706或硬件安全模块加密单元706和解密单元708或硬件安全模块解密单元708可以存在于指派系统中。加密单元706和解密单元708可以存在于HSM 216、218、220中的任何一个内。
[0064]图8示出了包括图7的指派系统700的计算机系统800的实施例。
[0065]可以注意,可以在由计算机系统800表示的服务器202上执行对特定HSM 220指派访客系统208,服务器202可以由用户214或用户系统214使用云技术来访问。
[0066]术语“云技术”可以在基于云服务的云计算的上下文中使用。这样的云服务通常可以属于云计算,这是用于使得能够对可配置计算资源(例如,网络、服务器、应用和服务)(在具体存储或联网存储中)的共享池进行便利按需网络访问,其可以以最小的管理努力或服务提供商交互来被快速提供和释放。该云模式提高了可用性,并且由五个基本特征、三个服务模型和四个布置模型组成。共享的联网存储可以被布置在云环境中。
[0067]云计算的基本特征包括:
[0068](i)按需自服务。消费者可以在不需要与每个服务提供商的人类交互的情况下,按需要自动地单方面地提供计算能力,诸如服务器时间和网络存储。
[0069](ii)广泛的网络访问。能力可以在网络上提供,并且通过标准机制来访问,该标准机制通过异构薄或厚客户端平台(例如,移动电话、膝上型计算机和PDA)来促进使用。
[0070](iii)资源池。提供商的计算资源被集中以使用根据客户需求动态指派和重新指派的具有不同的物理和虚拟资源的多租户模型来服务多个消费者。在位置独立性的意义上,消费者通常不具有对所提供的资源的确切位置的控制或知识,但是可能能够以较高的抽象水平(例如,国家、州或数据中心)来指定位置。资源的示例包括存储、处理、存储器、网络带宽和虚拟机。
[0071](iv)快速弹性。在一些情况下,能够自动地快速并且弹性地提供用于快速扩展并且迅速地释放以快速收缩的能力。对于消费者,可用于提供的能力似乎是不受限制的,并且可以在任何时间以任何量被购买。
[0072](V)测量的服务。云系统通过在适用于服务类型(例如,存储、处理、带宽和活动用户帐户)的某个抽象水平上利用计量能力来自动地控制和优化资源使用。可以监视、控制和报告资源使用,以对所利用的服务的提供商和消费者二者提供透明度。
[0073]用于所使用的云计算的服务模型包括:
[0074](i)云软件作为服务(SaaS)。提供给消费者的能力是使用在云基础设施上运行的提供商的应用。这些应用可从各种客户端设备通过诸如web浏览器的瘦客户端接口(例如,基于web的电子邮件)来访问。消费者不管理或控制底层云基础设施,包括网络、服务器、操作系统、存储或甚至独立应用能力,可能排除了有限的用户特定的应用配置设置。
[0075](ii)云平台作为服务(PaaS)。提供给消费者的能力是要布置到使用由提供商支持的编程语言和工具创建的云基础设施消费者创建或获取的应用上。消费者不管理或控制底层云基础设施,包括网络、服务器、操作系统或存储,但是具有对布置的应用以及可能地对托管环境配置的应用的控制。
[0076](iii)云基础设施作为服务(IaaS)。提供给消费者的能力是提供处理、存储、网络和其他基础计算资源,其中消费者能够布置和运行可以包括操作系统和应用的任意软件。消费者不管理或控制底层云基础设施,而且具有对操作系统、存储、布置的应用的控制,以及可能地,对所选择的联网组建(例如,主机防火墙)的有限控制。
[0077]用于云计算的布置模型包括
[0078]( i)私有云。云基础设施仅由组织来操作。其可以由组织或第三方来管理,并且可以存在于内部或外部。
[0079](ii)社区云。云基础设施是由若干组织共享的,并且支持具有共享考虑的特定社区(例如,任务、安全要求、策略和遵守考虑)。其可以由组织或第三方来管理,并且可以存在于内部或外部。
[0080](iii)公共云。云基础设施可用于一般公共或大型产业集团,并且由销售云服务的组织所拥有。
[0081](iv)混合云。云基础设施是两个或多个云(私有、社区或公共)的组合,其保持独特的实体但是通过支持数据和应用便携性的标准化或专有技术来绑定在一起(例如,用于云之间的负载平衡的云突发)。
[0082]本发明的实施例可以与几乎任何类型的计算机一起实现,而不论平台是否适用于存储和/或执行程序代码。例如,如图8所示,例如云节点的计算系统800可以包括:一个或多个处理器802(每个处理器具有一个或多个核)、关联的存储器元件804、内部存储设备806(例如,硬盘、光驱动器,诸如压缩盘驱动器或数字视频盘(DVD)驱动器、闪速存储器棒、固态盘等)以及许多其他元件和功能,典型的是当今的计算机(未示出)。存储器元件804可以包括在程序代码的实际执行期间采用的主存储器(例如,随机存取存储器(RAM))以及可以提供至少一些程序代码和/或数据的临时存储的高速缓存存储器,以便于减少必须从长期存储介质或外部大容量存储816检索以用于执行的代码或数据的次数。计算机800内的元件可以通过总线系统818与相应的适配器链接在一起。此外,如上所述的指派系统700可以被附连到总线系统818。
[0083]计算系统800还可以包括诸如键盘808的输入装置、诸如鼠标810的指示设备或麦克风(未示出)。替代地,该计算系统可以配备有触敏屏幕作为主输入设备。此外,计算机800可以包括输出装置,诸如监视器或屏幕812[例如,液晶显示器(LCD)、等离子显示器、发光二极管显示器(LED)或阴极射线管(CRT)监视器]。计算机系统800可以经由网络接口连接814被连接到网络[例如,局域网(LAN)、广域网(WAN)],诸如因特网或任何其他类似类型的网络,包括无线网络。这可以允许耦合到其他计算机系统或存储网络或磁带驱动器。本领域技术人员将理解,许多不同类型的计算机系统存在,并且前述输入和输出装置可以采取其他形式。一般而言,计算机系统800可以至少包括实践本发明的实施例所需要的最小处理、输入和/或输出装置。
[0084]虽然已经关于有限数目的实施例描述了本发明,但是受益于本公开的本领域技术人员将理解,可以设计不脱离如本文所公开的本发明的范围的其他实施例。因此,本发明的范围应当仅由所附权利要求来限定。而且,可以组合与不同实施例相关地描述的元件。还应当注意,权利要求中的附图标记不应被理解为限制因素。
[0085]如本领域技术人员可以理解的,本公开的各方面可以被实现为系统、方法或计算机程序产品。因此,本公开的各方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或组合软件和硬件方面的实施例的形式,其在本文中通常可以统称为“电路”、“模块”或“系统”。此外,本公开的各方面可以采取在具实现有计算机可读程序代码的一个或多个计算机可读介质中实现的计算机程序产品的形式。
[0086]可以利用一个或多个计算机可读介质的任何组合。该计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于电、磁、光、电磁、红外或半导体系统、装置或设备或者上述的任何适当的组合。计算机可读存储介质的更具体示例(非穷举列表)可以包括下述:具有一个或多个导线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪速存储器)、光纤、便携式光盘只读存储器(CD-ROM)、光存储设备、磁存储设备或者前述的任何适当组合。在本文档的上下文中,计算机可读存储介质可以是可包含或存储用于由指令执行系统、装置或设备使用或与之结合使用的程序的任何有形介质。
[0087]计算机可读信号介质可以包括具有例如在基带中或作为载波的一部分传播的数据信号,该传播的数据信号中实现有计算机可读程序代码。这样的传播信号可以采取各种形式中的任何一个,包括但不限于电磁、光或其任何适当的组合。计算机可读信号介质可以是不是计算机可读存储介质并且可以通信、传播或传输用于由指令执行系统、装置或设备或与之结合使用的程序的任何计算机可读介质。
[0088]在计算机可读介质上实现的程序代码可以使用任何适当的介质来传送,包括但不限于无线、有线、光纤电缆、RF等或上述的任何适当组合。
[0089]用于执行用于本发明的各方面的操作的计算机程序代码可以以一个或多个编程语言的任何组合来编写,包括诸如Java、Smalltalk、C++等的面向对象的编程语言以及诸如“C”编程语言或类似的编程语言的传统过程编程语言。该程序代码可以在用户的计算机上被完全执行、在用户的计算机上部分地执行、作为独立的软件包执行、部分地在用户的计算机上并且部分地在远程计算机上或完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络被连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可以(例如,通过使用因特网服务提供商的因特网)连接到外部计算机。
[0090]参考根据本公开的实施例的方法、装置和计算机程序产品的流程图图示和/或框图来描述本公开的各方面。应当理解,流程图和/或框图中的每个框以及流程图图示和/或框图中的框的组合可以通过计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机、专用计算机的处理器或者其他可编程数据处理设备以产生机器,使得经由计算机的处理器或其他可编程数据处理装置执行的指令产生用于实现在流程图和/或框图的框中指定的功能/动作的装置。
[0091]这些计算机程序指令还可以被存储在计算机可读介质中,该计算机可读介质可以使计算机、其他可编程数据处理装置或其他设备以特定方式起作用,使得存储在计算机可读介质中的指令产生包括指令的制造物品,该指令实现在流程图和/或框图的框中指定的功能/动作。
[0092]计算机程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得要在计算机、其他可编程装置或其他设备上执行的一系列操作步骤产生计算机实现的过程,使得在计算机或其他可编程装置上执行的指令提供用于实现在流程图和/或框图的框中指定的功能/动作的过程。
[0093]附图中的框图图示了根据本公开的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这方面,框图中的每个框可以表示模块、分段或代码部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。还应当注意,在一些替代实现中,上述讨论的功能可以以不同于所公开的顺序发生。例如,连续的两个功能实际上可以基本上同时执行,或者功能有时可以根据所涉及的功能以相反的顺序被执行。还应当注意,框图中的每个框和框图中框的组合可以由基于专用硬件的系统或专用硬件和计算机指令的组合来实现,该基于专用硬件的系统执行专用功能或动作。
[0094]本文中使用的术语出于仅描述具体实施例的目的,并且不意在限制本发明。如本文中使用的,单数形式“一”和“该”也意在包括复数形式,除非上下文另外明确指示。将进一步理解,术语“包括”和/或“包含”在本说明书中使用时指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但不排除一个或多个其他特征、整数、步骤、操作、元件、组件和/或其组的存在。
[0095]在以下权利要求中的所有装置或步骤加上功能元素的相应结构、材料、动作和等同物意在包括结合其他要求保护的元素执行功能的任何结构、材料或动作,如具体要求保护的。本发明的描述出于说明和描述的目的被提出,但并不意在是详尽的或将本发明限制于所公开的形式。在不脱离本发明的范围和精神的情况下,许多修改和变化对本领域普通技术人员来说是显而易见的。实施例被选择和描述,以最好地解释本发明的原理和实际应用,并且使得本领域的其他技术人员能够关于具有适用于预期的具体使用的各种修改的各种实施例来理解本发明。
【主权项】
1.一种用于基于内容向访客系统(208)指派多个硬件安全模块(216、218、220)中的至少一个硬件安全模块(220)的方法(100),所述方法(100)包括: -用主密钥(304)来配置(102)所述多个硬件安全模块(216、218、220)中的所述至少一个硬件安全模块(220), -使用用于挑战协议(522)的数据模式(308),所述挑战协议(522)适用于证明所述多个硬件安全模块(216、218、220)中的至少一个硬件安全模块(220)被配置有所述主密钥(304);以及 -基于所述挑战协议(522)的肯定结果来向所述访客系统(208)指派所述多个硬件安全模块(216、218、220)中的包括所述主密钥(304)的所述至少一个硬件安全模块(220)。2.根据权利要求1所述的方法(100),还包括: -用所述主密钥(304)来加密访客密钥(306)。3.根据权利要求1所述的方法(100),还包括: -用所述访客密钥(306)来加密所述数据模式(308)。4.根据权利要求3所述的方法(100),还包括: -通过所述至少一个硬件安全模块(220)来解密所述加密的访客密钥(307)。5.根据权利要求4所述的方法(100),还包括: -由所述至少一个硬件安全模块(220)使用所述解密的访客密钥(306)来解密所述加密的数据模式(310),产生所述数据模式(308)。6.根据权利要求5所述的方法(100),其中所述挑战协议(522)包括: -如果由所述访客系统(208)确定通过所述至少一个硬件安全模块(216、218、220)得到的所述解密的数据模式(308)与其被所述访客系统(208)加密之前的所述数据模式(308)相同,则生成所述肯定结果。7.根据权利要求4所述的方法(100),还包括: -由所述至少一个硬件安全模块(220)使用所述解密的访客密钥(306)来加密所述数据模式(308),产生加密的数据模式(310)。8.根据权利要求7所述的方法(100),其中所述挑战协议(522)包括: -如果由所述访客系统(208)确定通过所述至少一个硬件安全模块(220)得到的所述加密的数据模式(310)与由所述访客系统(208)使用所述访客密钥(306)加密的所述加密的数据模式(310)相同,则生成所述肯定结果。9.根据权利要求1所述的方法(100),其中所述配置(102)所述至少一个硬件安全模块(216、218、220)、使用(104)用于所述挑战协议(522)的所述数据模式(308)、以及所述向所述访客系统(208)指派(106)多个硬件安全模块(216、218、220)中的所述至少一个硬件安全模块由受信固件来执行。10.根据权利要求1所述的方法,其中所述数据模式(308)被随机地选择。11.一种用于基于内容向访客系统(208)指派多个硬件安全模块(216、218、220)中的至少一个硬件安全模块的指派系统(700),所述指派系统(700)包括: -包括适用于存储主密钥(304)的存储器的、所述多个硬件安全模块(216、218、220)中的至少一个硬件安全模块(220), -作为所述访客系统(208)的一部分的确定单元(702),所述确定单元(702)被适配用于基于用于挑战协议(522)的数据模式(308)来生成肯定结果,所述挑战协议(522)适用于证明所述多个硬件安全模块(216、218、220)中的所述至少一个硬件安全模块(220)包括所述主密钥(304);以及 -指派单元(704),所述指派单元(704)被适配用于基于所述挑战协议(522)的肯定结果来向所述访客系统(208)指派所述多个硬件安全模块(216、218、220)中的包括所述主密钥(304)的所述至少一个硬件安全模块(220)。12.根据权利要求10所述的指派系统(700),包括:硬件安全模块加密单元(706),被适配用于 -用所述主密钥(304)来加密访客密钥(306)。13.根据权利要求11所述的指派系统(700),还包括: -访客加密单元,被适配用于用所述访客密钥(306)来加密所述数据模式(308)。14.根据权利要求11所述的指派系统(700),其中所述硬件安全模块(216、218、220)包括硬件安全模块解密单元(708),所述硬件安全模块解密单元(708)被适配用于 -解密所述加密的访客密钥(306)。15.根据权利要求14所述的指派系统(700),其中所述硬件安全模块解密单元(708)被适配用于 -使用所述解密的访客密钥(306)来解密所述加密的数据模式(310),得到所述数据模式(308)。16.根据权利要求15所述的指派系统(700),其中所述确定单元(704)被适配用于 -如果由所述确定单元(702)确定通过所述硬件安全模块解密单元得到的所述加密的数据模式(310)与之前已经被所述访客加密单元加密的所述加密的数据模式(310)相同,则生成所述挑战协议(522)的所述肯定结果。17.根据权利要求14所述的指派系统(700),其中所述硬件安全模块解密单元(708)被适配用于 -使用所述解密的访客密钥(306)来加密所述数据模式(308),得到所述加密的数据模式(310)。18.根据权利要求17所述的指派系统(700),其中所述确定单元被适配用于 -如果由所述确定单元确定由所述硬件安全模块加密的所述加密的数据模式与由所述访客系统使用所述访客密钥加密的所述加密的数据模式相同,则生成所述挑战协议的所述肯定结果。19.根据权利要求1所述的指派系统(700),其中所述数据模式(308)被随机地选择。
【文档编号】G06F21/35GK105893853SQ201610082697
【公开日】2016年8月24日
【申请日】2016年2月5日
【发明人】V·M·M·伯尼施, R·比尔德根, F·盖泽特, J·C·朗, M·拉特曼, A·N·门西亚斯
【申请人】国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1