CN103403729A - 唯一代码签名密钥的安全管理和个性化 - Google Patents
唯一代码签名密钥的安全管理和个性化 Download PDFInfo
- Publication number
- CN103403729A CN103403729A CN2012800095320A CN201280009532A CN103403729A CN 103403729 A CN103403729 A CN 103403729A CN 2012800095320 A CN2012800095320 A CN 2012800095320A CN 201280009532 A CN201280009532 A CN 201280009532A CN 103403729 A CN103403729 A CN 103403729A
- Authority
- CN
- China
- Prior art keywords
- key
- encryption
- code
- calculation element
- keys
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
- Lock And Its Accessories (AREA)
Abstract
一种方法和***生成和分发唯一密码装置密钥。该方法包括:至少生成第一装置密钥,并且利用第一加密密钥来加密该第一装置密钥,以产生该装置密钥的第一加密副本。该方法也包括:利用第二加密密钥来加密该第一装置密钥,以产生该装置密钥的第二加密副本。该第二加密密钥与该第一加密密钥不同。该装置密钥的该第一和第二加密副本与用于标识正被制造的计算装置的装置ID相关联。该装置密钥的该第二加密副本被加载到该计算装置上。在该计算装置已经被部署到客户之后,该装置密钥的该第一加密副本和其所相关联的装置ID被存储到至少一个服务器上以用于随后的使用。
Description
相关申请的交叉引用
本申请要求在2011年2月18日提交的美国临时申请No.61/444,167的优先权,其通过引用被整体并入在此。
背景技术
在计算装置中,实现了多种机制和***以防范恶意软件和未经授权已经被修改的软件。最常见的方法之一是提供代码或数据的数字签名,在执行或访问该代码或数据之前检查该数字签名。用于对代码和数据进行数字化签名的方法被广泛用于与对于多种不同的计算装置编写的软件,该多种不同的计算装置诸如是移动通信装置(例如,个人数字助理(PDA)、移动电话、膝上型计算机、寻呼机、无线电子邮件装置)、PC、路由器、媒体播放器和机顶盒等。例如,代码签名经常用于诸如蜂窝电话的移动通信装置,因为需要保护由制造商拥有的资产、保护运营商商业模型和防范某些恶意软件威胁。
通过数字签名保护完整性的代码或数据在它被销售或以其他方式分发之前被证明机构“签名”。被签名的代码或数据包括确认代码或数据自从被签名起未被窜改的数字签名。图1是图示示例代码签名协议的图,总体被示出为100,其中,代码签名机构向软件应用开发者提供代码签名服务。
软件应用开发者102创建用于计算装置100的软件应用104。将明白,软件应用包括可以最终在移动装置或其他计算装置上执行的软件代码。因此,可以在此可互换地使用术语“代码签名”和“应用签名”。
为了防范对于在计算装置上的敏感数据的未经授权的访问,要求软件应用开发者102从移动装置制造商或从代表制造商行动的代码签名机构106获得一个或多个数字签名,并且对于软件应用104分发该一个或多个签名,如下进一步详细所述的。在一些情况下,可以向签名的数据或代码附加签名。在其他情况下,以单独的文件或封装来分发签名。
在图1中所示的示例中,当软件应用开发者102要求将软件应用104签名时,从软件应用开发者102向代码签名机构106发送软件应用104。代码签名机构106可以表示计算装置制造商或可能能够批准在装置上运行的软件的其他方。虽然在图1中未明确示出,但是在特定的情况下,将明白,可以向不止一个代码签名机构递交软件应用。
数字签名通常是使用由代码签名机构106独自地拥有的私有签名密钥110生成的密码值。例如,根据一种签名方案,代码签名机构106可以使用诸如安全散列算法SHA1的散列算法来生成软件应用104的散列,然后利用私有签名密钥310来将该散列编码以创建数字签名。虽然在这个示例中私有签名密钥110用于编码诸如可以从软件应用104导出的要签名的信息的散列,但是可以以其他方式来使用私有签名密钥110以从要签名的信息或信息的变换版本生成数字签名。代替或补充数字签名,在一些情况下,可以使用另外的对称或公共代码加密密钥来加密软件应用104。注意,公共密钥通常用于间接地加密随机对称密钥,然后该随机对称密钥继而加密软件应用104。
被签名的软件应用108可以然后例如通过网络200被发送到计算装置100,或者以其他方式被加载到计算装置100上。为了在计算装置100上执行签名和/或加密的应用108,计算装置100需要使用公共验证密钥112来验证签名和/或加密的应用108的数字签名。
涉及软件代码签名方案的安全协议通常依赖于公共和私有加密密钥。根据已知的公共密钥密码技术,可以仅使用私有密钥/公共密钥对中的对应的公共密钥来解密使用这一对中的私有密钥所加密的数据,并且反之亦然。以这种方式执行的代码签名可以被称为非对称代码签名。
因为在非对称代码签名中公共/私有密钥对的公共部分被存储在计算装置100上,所以可以在特定装置模型的所有单元上使用相同的公共验证密钥。给定装置模型的每一个单元因此在制造时被提供有相同的公共代码验证密钥(其对应于签名密钥),由此简化了制造处理和密钥管理处理。
然而,在一些情况下,计算装置制造商可能希望对于每一个制造的装置使用唯一的对称签名密钥。可能由于装置中的硬件限制和性能准则而要求对称密钥。并且,在对称代码签名密钥的情况下,优选的是,每一个装置具有唯一的密钥。以这种方式,如果单个装置被破解并且提取对称的签名/验证密钥,则该危害不影响其他装置的安全性。
另外,装置可能需要唯一的不对称密钥对来用于代码验证之外的其他用途——例如,用于仅对于那个装置唯一地加密的代码的解密。
为了代码加密的目的,可能有利的是,利用非对称密钥对,其中,将加密和解密密钥两者看作机密值。保持加密密钥机密会防止未经授权方加密并且将代码图像传递到每一个装置。并且,解密密钥被保持为机密,使得代码在目标装置之外仍然为保密。通常将加密密钥称为公共的,并且将解密密钥称为私有的,虽然在本文中,将公共加密密钥看作要求防范未经授权方的机密保密值。
有利的是,当将(来自非对称密钥对的)代码加密和解密密钥都保持为机密时,不必数字签名代码。因为仅授权方知道加密密钥——如果装置能够成功地解密代码,所以那已经足以证明代码来自授权来源。
发明内容
根据本发明,提供了一种用于生成和分发唯一密码装置密钥的方法和***。所述方法包括:至少生成第一装置密钥,并且利用第一加密密钥来加密所述第一装置密钥,以产生所述装置密钥的第一加密副本。所述方法还包括:利用第二加密密钥来加密所述第一装置密钥,以产生所述装置密钥的第二加密副本。所述第二加密密钥与所述第一加密密钥不同。所述装置密钥的所述第一和第二加密副本与用于标识正被制造的计算装置的装置ID相关联。所述装置密钥的所述第二加密副本被加载到所述计算装置上。在所述计算装置已经被部署到客户之后,所述装置密钥的第一加密副本和其所相关联的装置ID被存储到至少一个服务器上以用于随后的使用。
根据本发明的另一个方面,提供了一种提供代码签名服务的***。所述***包括密钥存储器,用于存储多个加密的装置密钥对,所述多个加密的装置密钥对的每一个包括装置密钥的第一和第二加密副本。所述装置密钥的第一加密副本的每一个利用第一加密密钥来加密第一装置密钥,并且所述装置密钥的第二加密副本的每一个利用第二加密密钥来加密所述第一装置密钥,使得所述装置密钥的第二加密副本与所述装置密钥的第一加密副本不同。所述***也包括与所述密钥存储器进行通信的一个或多个服务器。所述一个或多个服务器被配置为:(i)将所述加密装置密钥对的每一个与要被提供签名和/或加密的软件代码的相应的计算装置的相应的装置ID相联系;(ii)向代码签名服务器传递与所述装置ID的第一个装置ID相联系的第一装置密钥对中的所述装置密钥的第一加密副本;(iii)向由所述第一装置ID标识的所述计算装置传递所述装置密钥的第二加密副本;以及(iv)从所述第一装置密钥对中的所述装置密钥的第一加密副本解密所述第一装置密钥,并且利用所述第一装置密钥来加密所述软件代码;以及(v)向由所述第一装置ID标识的所述计算装置传递所述签名和/或加密的软件代码。
根据本发明的又一个方面,提供了一种用于使用唯一密码装置密钥来传递代码签名服务的方法。所述方法包括:接收装置密钥的第一加密副本,所述装置密钥的第一加密副本利用第一加密密钥来加密第一装置密钥。也接收所述装置密钥的第二加密副本。所述第二加密副本利用第二加密密钥来加密所述第一装置密钥,使得所述装置密钥的第二加密副本与所述装置密钥的第一加密副本不同。所述装置密钥的所述第一和第二加密副本与要被提供签名和/或加密的软件代码的计算装置的装置ID相联系。与所述装置ID的所述装置密钥相联系的所述第一加密副本被传递到第一代码签名服务器,所述第一代码签名服务器提供要在所述计算装置中提供的所述签名和/或加密的软件代码。利用所述第一装置密钥来签名所述签名和/或加密的软件代码。所述装置密钥的第二加密副本和所述签名和/或加密的软件代码被传递到所述计算装置。
附图说明
图1是图示其中代码签名机构向软件应用开发者提供代码签名服务的示例代码签名协议的图。
图2示出在唯一装置密钥和其两个加密副本之间的关系。
图3示出其中可以实现在此描述的用于向计算装置提供唯一签名密钥的处理的操作环境的一个示例。
图4示出其中可以实现在此描述的用于向计算装置提供唯一签名密钥的处理的操作环境的另一个示例。
图5是图示用于使用在此描述的技术来提供代码签名服务的方法的一个示例的流程图。
图6示出可以被用作在图3和4中所示的***的各种服务器和站等的任何一个的硬件平台的计算机***。
具体实施方式
因为多种原因,可能有时期望应用代码签名机制,该代码签名机制采用对称唯一代码签名密钥而不是共享的代码签名密钥。在一种情况下,利用低成本部件的产品可能仅支持对称密钥的使用,而不支持一般使用的非对称密钥的使用。唯一的装置私有密钥也可能由于代码签名之外的原因而是期望的。例如,唯一的装置私有密钥可以用于解密对于那个装置唯一地加密的代码或数据,其中,对应的公共密钥也需要被保持为机密。向计算装置的每一个单元内提供唯一装置密钥呈现了有关唯一密钥的生成和管理而需要解决的多个问题。例如,可能在某个未来时间需要维修或更新已经部署并且被提供到客户的具有唯一签名密钥的装置。维修或更新中心将经常需要访问唯一签名或加密密钥以执行维修或更新。因此,需要用于在唯一签名密钥的使用期限中安全地分发、管理和检索唯一签名密钥的***。
下面描述用于提供代码签名服务的***,该***可以用于在唯一签名密钥的使用期限中安全地分发、管理和检索唯一签名或加密密钥。为了例示的目的,将在下面的情形的上下文中描述该***:在装置制造时在工厂中的密钥提供、在工程开发期间的唯一签名或加密密钥的使用和维修设施对于唯一签名或加密密钥的使用。当然,该***也可以用于分发唯一装置密钥以用于其他目的。其上要提供签名或加密的代码的装置可以是任何计算装置,该任何计算装置不作为限制地包括通信装置、移动通信装置(例如,个人数字助理(PDA)、移动电话、膝上型计算机、寻呼机、无线电子邮件装置)、PC、路由器、媒体播放器和机顶盒等。
当向计算装置提供唯一装置密钥时,密钥的保护总是最重要的。重要的是,每当不使用密钥时将密钥加密以防止密钥值的未经授权的公开。通常在远处的不信任的第三方设施处制造计算装置,并且通过计算网络来传送敏感数据。诸如唯一装置密钥的敏感值需要从它们在装置制造商处的诞生起直到它们被存储在目的地计算装置中为止被保护。对于代码签名或代码加密密钥,在制造后,密钥需要用于签名和/或加密代码更新。因为要存储的可能大量的唯一密钥,在制造后保护唯一代码签名和加密密钥实质上更困难。
为了实现该***,创建在计算装置中提供的每一个唯一装置密钥的两个加密版本。制造商使用一个加密版本来向目标装置分发,并且使另一个版本可用于可能需要在某个以后的时间访问唯一装置密钥的实体,该某个以后的时间诸如是在计算装置已经被部署之后以及需要被维修或更新或当计算装置需要被分析以用于工程部署目的时。装置制造商可以是使用第二加密版本的实体之一。
在加载唯一装置密钥之前,在制造时向计算装置提供被称为DKPK(装置密钥保护密钥)的非对称密钥值。在模型的所有装置之间共享DKPK。从唯一签名密钥在装置制造处诞生起直到唯一签名密钥被安全地存储在目标计算装置中为止,DKPK用于保护该唯一签名密钥。虽然将DKPK描述为非对称密钥,但是它也可以是对称密钥。而且,DKPK可以是在特定模型的所有装置中的共享值,或者它也可以是唯一值。
在图2中图示了在唯一装置密钥和其两个加密版本或副本之间的关系。在这个示例中,在每一个计算装置中提供的、在框210处示出的唯一装置密钥被称为唯一装置密钥(UDK)。如在框220处所示,利用DKPK来加密UDK。从UDK首先被密钥生成***产生起直到在工厂250中被提供在计算装置中为止,DKPK用于保护UDK。计算装置使用DKPK来解密UDK,DKPK被预先提供和存储在计算装置中。通过利用DKPK加密UDK而形成的加密密钥被称为用于装置密钥保护密钥的加密装置密钥(EDKPK)。EDKPK是将在工厂中提供在计算装置中的UDK的加密版本。EDKPK是从装置制造商向制造中心传送的值。
如在框230处所示,也利用被称为装置密钥检索密钥(DKRK)的非对称密钥来单独地加密UDK。虽然将DKRK描述为非对称密钥,但是它也可以是对称密钥。通过利用DKRK的公共部分加密UDK而形成的加密密钥被称为通过检索密钥加密的装置密钥(EDKRK)。DKRK是将被提供到将对代码进行签名的各个实体的UDK的加密版本,两者都用于在工厂内和工厂外(例如,维修设施)的使用。DKRK的私有部分将被存储在各种代码签名服务器中,使得它们可以解密UDK以执行代码签名或加密。EDKRK是从装置制造商向签名实体传送的值。
总之,图2描述了UDK的两种加密版本EDKPK和EDKRK的形成。EDKPK和EDKRK被配对在一起(框240)以传递到工厂250。EDKPK和EDKRK被一起从装置制造商传送到工厂,因为直到装置制造之前它们未被绑定到装置。EDKRK不用于代码签名,除非已知哪个装置被加载有与EDKRK相关联的UDK。工厂记录来自被制造的装置的序列号(或其他唯一值),并且将其与EDKRK配对以用于以后的检索。因此,需要对用于装置的代码进行签名的任何实体将能够通过搜索与该序列号相关联的EDKRK来检索正确的EDKRK(和UDK,在解密后)。
应当注意,在在此提供的示例中,装置密钥UDK是对称密钥。然而,更具体地,装置密钥可以是对称或非对称密钥。如果装置密钥是非对称的,则其公共部分(一般用于加密)将被称为唯一装置公共密钥(UDPK)。虽然其名称如此,但是UDPK可能需要被保持为机密(除了将私有密钥保持为机密之外)。这实现了对于哪些实体被允许对以特定装置为目标的代码或其他信息进行加密的授权控制。当然,如果装置密钥是对称的,则UDK有效地用作UDPK。
下面将提供用于安全地分发、管理和检索唯一签名密钥的机制的两个示例。在第一示例中,UDK被密钥产生设施离线生成和加密,并且被传递到工厂,使得它们可以被提供在计算装置中。在第二示例中,在工厂内生成和加密UDK,工厂将它们提供在计算装置中。在任何一种情况下,在UDK被提供在计算装置中之前或在它被代码签名服务器使用之前,都不能获得明码UDK。
图3示出其中可以实现用于向计算装置提供唯一签名密钥的在此所述的处理的操作环境的一个示例。为了说明的目的,假定装置密钥是对称的。然而,如前所述,装置密钥替代地可以是非对称的,在该情况下,如图所示,EDKPK仅包括向计算装置传递的装置密钥的加密私有部分。另一方面,EDKRK仅包括装置密钥(UDPK)的加密公共部分。装置需要私有密钥来对例如被代码签名服务器利用UDPK加密传递的代码或其他信息进行解密。可以明白,代码签名服务器可以对以装置为目标的代码或其他消息执行签名以及对以装置为目标的代码或其他数字信息执行加密。
在图3中示出工厂域300,它代表用于其中要提供装置密钥的计算装置的制造设施。应当明白,以高度简化的方式示出该域,其中,单个实体(例如,服务器、站等)可以表示更复杂的布置和***。
也在图3中示出可以被第三方或在一些情况下被制造者本身操作的其他实体。具体地说,示出离线密钥生成***410,它可以包括或访问可以用于保护一些或全部密钥的硬件安全模块(HSM)。也示出签名服务器430和440,它们可以用于对在所部署的计算装置(例如,计算装置450和460)中使用的代码或其他数字信息进行签名或加密以分别用于工程和维修目的。
通过图3中所示的各个组件的处理流程如下。首先,在步骤1,离线密钥生成***410生成一系列UDK。每一个UDK如上所述被加密以产生EDKPK和EKKRK对,它们被传递到在工厂域300内的密钥个性化服务器310。以这种方式,在密钥离开离线密钥生成***410后,在密钥在它们相应的目的地计算装置(例如,计算装置320)中被存储和解密之前,密钥从不被明码地保持。
工厂域300包括装置接口站330,装置接口站330用作在制造中的目的地计算装置320和密钥个性化服务器310之间的物理管道。如果USB端口在计算装置320上可用,则计算装置320可以通过诸如USB电缆的任何适当手段物理连接到装置接口站。装置接口站330从计算装置320检索唯一装置ID,并且在步骤2中,将其与对于装置密钥的请求一起发送到密钥个性化服务器310。
在步骤3中,密钥个性化服务器310从装置接口站330接收请求,并且从其数据库检索下一个可用的加密EDKPK和EDKRK对。服务器330然后去除当从离线密钥生成***410向密钥个性化服务器310发送加密密钥对时可能已经使用的任何服务器特定保护层。EDKPK要被加载到计算装置320内,并且EDKRK意欲保护由在工厂外部的实体进行的存储,以用于代码签名/加密目的。EDKRK也可以在工厂内的装置个性化处理期间用于签名/加密由装置接口站330加载到计算装置320上的初始软件代码。在另一种情况下,计算装置320可以其本身来签名/加密初始软件代码。
在步骤4a中,EDKPK和EDKRK对被发送到装置接口站330。可以使用加密协议来加密这一对以在递送期间保护它。装置接口站330在步骤4b中去除在递送期间已经保护这一对的任何另外的加密,并且向在制造中的计算装置320发送EDKPK。计算装置320利用DKPK来解密EDKPK,以检索UDK(在不对称密钥的情况下,它仅是UDK的私有部分)。在一些情况下,装置可以使用其本身的对称UDK来本身对在工厂期间加载的初始代码进行签名。
密钥个性化服务器420需要存储EDKRK和其与装置ID的联系以在装置个性化处理之后使用。因此,在步骤5a中,密钥个性化服务器310存储装置ID和EDKRK对,然后将这些值复制到中央存储器420。如前所述,需要在工程开发期间和在维修设施处的装置维修期间利用每一个装置的UDK来签名和/或加密用于装置的代码更新。因此,在步骤5b中,中央存储器420向中央代码签名服务器430发送EDKRK和装置ID对,在中央代码签名服务器430处,这一对可以用于与工程计算装置450相关的工程目的。另外,中央存储器420还在步骤5c中向维修中心440发送EDKRK和装置ID对,在维修中心440中,当客户带来计算装置460以维修或升级时可以使用这一对。当然,在其他示例中,可以使得EDKRK和装置ID对对于在特定情况下适当的其他签名服务器或实体可用。
如图3所示,代码签名服务器430和维修中心440先前已经被提供DKRK,DKRK被存储在硬件安全模块或其他安装存储器中,DKRK用于解密EDKRK以获得UDK。然后,代码签名服务器430和维修中心440可以使用UDK来签名/加密要被加载到计算装置上的任何可信软件代码。在非对称装置密钥的情况下,代码签名服务器440解密EDKRK以仅获得用于要被传递到特定装置的代码或其他数字信息的加密的UDK的公共部分(UDPK)。
维修中心440将通常具有其自己的代码签名服务器。该代码签名服务器可以基于对于特定装置ID的请求而检索适当的EDKRK。然后,该代码签名服务器将使用优选地安全地存储在硬件安全模块或其他类似机构中的DKRK来解密EDKRK。然后,可以使用UDK来签名/加密由可信的第三方提供的软件代码,并且可以继而将签名/加密的代码加载到正在被维修或更新的计算装置上。
返回到工厂域330,先前已经在步骤4b中被提供有EDKPK的计算装置320进行装置个性化处理的剩余部分。该处理的下一个部分包含:使用工厂代码签名服务器340将签名的代码加载到计算装置上,该代码包含要被加载到计算装置320上的必要的软件代码。该处理要求使用向计算装置320唯一地指配的UDK来签名和/或加密代码。为了执行该处理,工厂代码签名服务器340需要接收对应的EDKRK和装置ID对。在图3中所示的示例中,可以以两种方式之一来完成这一点。首先,在步骤6选项1中,EDKRK和装置ID对可以被装置接口站330发送到工厂代码签名服务器340。替代地,在步骤6选项2中,密钥个性化服务器310可以向工厂代码签名服务器340发送EDKRK和装置ID对。工厂代码签名服务器340利用预先被提供的DKRK来解密EDKRK,以获得UDK。工厂代码签名服务器340使用UDK来签名和/或加密软件代码。
在步骤7a中,工厂代码签名服务器340向装置接口站330发送所需的软件代码。已经利用用于特定的计算装置320的UDK来签名和/或加密该软件代码。装置接口站330继而在步骤7b中将签名和/或加密的软件代码加载到计算装置320上。已经在步骤4b中先前接收和解密EDKPK以获得UDK的计算装置320使用UDK在步骤8中验证和***代码,将其加载到易失性存储器中并且然后执行该代码。替代地,计算装置在非易失性存储器中存储未加密的软件代码,并且在后来加载和执行它。
步骤9图示了工程计算装置450需要在工程设施处被提供更新的代码的情况。为了完成这一点,可信的雇员在步骤9a中访问可信服务器,并且将来自工程计算装置450的装置ID向中央代码签名服务器430发送。签名服务器430检索与那个装置ID相联系的EDKRK,并且使用优选地在其硬件安全模块中存储的DKRK来解密EDKRK。中央代码签名服务器430使用UDK来签名和/或加密代码,并且在步骤9b中向该可信的雇员返回签名和/或加密的代码,该雇员将该签名/加密的代码加载到工程计算装置450上。
类似于步骤9,步骤10图示需要在维修中心440处维修先前部署的计算装置460的情况。为了完成这一点,能够访问维修中心440的可信服务器访问来自计算装置460的装置ID。该可信服务器检索与那个装置ID相联系的EDKRK,并且使用优选地在其硬件安全模块中存储的DKRK来解密EDKRK。该可信服务器使用UDK来签名和/或加密执行维修所需的代码,并且将签名和/或加密的代码加载到需要维修或更新的计算装置460上。
图4示出其中可以实现用于向计算装置提供唯一装置密钥的在此所述的处理的操作环境的另一个示例。在图3和4中,相似的元件用相似的附图标号表示。虽然在图3的示例中离线生成和加密UDK,但是在图4的示例中,通过密钥个性化服务器310在装置个性化时生成和加密UDK。在这个示例中,当密钥个性化服务器从装置接口站330接收到唯一装置ID以及向装置ID指配EDKPK/EDKRK对的请求时,处理在步骤1处开始。在步骤3中,密钥个性化服务器310生成用于计算装置的新的UDK,并且然后利用DKPK来加密UDK以创建EDKPK。同样,密钥个性化服务器310也利用DKRK来加密UDK,以获得EDKRK。然后,密钥个性化服务器310去除UDK的任何本地副本,并且仅存储ID与EDKPK和EDKRK的配对。
通过图4的***的处理流程的剩余部分如在图3中那样进行。即,在图4中的步骤3对应于在图3中的步骤4,在图4的中的步骤4对应于在图3中的步骤5,等等。
更具体地,在图4的步骤3a中,向装置接口站330发送EDKPK和EDKRK对。可以使用加密的协议来加密这一对,以在递送期间保护它。装置接口站330在步骤3b中去除已经在递送期间保护这一对的任何另外的加密,并且向在制造中的计算装置320发送EDKPK。计算装置320利用DKPK来解密EDKPK,以检索UDK(在非对称密钥的情况下,其将仅是UDK的私有部分)。在一些情况下,装置可以使用其自己的对称UDK来本身对在工厂期间加载的初始代码进行签名。
密钥个性化服务器420需要存储EDKRK和其到装置ID的联系以在装置个性化处理后使用。因此,在步骤4a中,密钥个性化服务器310存储装置ID和EDKRK对,然后将这些值复制到中央存储器420。如前所述,需要在工程开发期间和在维修设施处的装置维修期间利用每一个装置的UDK来签名和/或加密用于装置的代码更新。因此,在步骤4b中,中央存储器420向中央代码签名服务器430发送EDKRK和装置ID对,在中央代码签名服务器430处,这一对可以用于与工程计算装置450相关的工程目的。另外,中央存储器420还在步骤4c中向维修中心440发送EDKRK和装置ID对,在维修中心440中,当客户带来计算装置460以维修或升级时可以使用这一对。当然,在其他示例中,可以使得EDKRK和装置ID对对于在特定情况下适当的其他签名服务器或实体可用。
如图3所示,代码签名服务器430和维修中心440先前已经被提供有DKRK,DKRK被存储在硬件安全模块或其他安装存储器中,DKRK用于解密EDKRK以获得UDK。然后,代码签名服务器430和维修中心440可以使用UDK来签名/加密要被加载到计算装置上的任何可信软件代码。在非对称装置密钥的情况下,代码签名服务器440解密EDKRK以仅获得用于要被传递到特定装置的代码或其他数字信息的加密的UDK的公共部分(UDPK)。
维修中心440将通常具有其自己的代码签名服务器。该代码签名服务器可以基于对于特定装置ID的请求而检索适当的EDKRK。然后,该代码签名服务器将使用优选地安全地存储在硬件安装模块或其他类似机构中的DKRK来解密EDKRK。然后,可以使用UDK来签名/加密由可信的第三方提供的软件代码,并且可以继而将签名/加密的代码加载到正在被维修或更新的计算装置上。
返回到工厂域330,先前已经在步骤3b中被提供有EDKPK的计算装置320进行装置个性化处理的剩余部分。该处理的下一个部分包含:使用工厂代码签名服务器340将签名的代码加载到计算装置上,该代码包含要被加载到计算装置320上的必要的软件代码。该处理要求使用向计算装置320唯一地指配的UDK来签名和/或加密代码。为了执行该处理,工厂代码签名服务器340需要接收对应的EDKRK和装置ID对。在图3中所示的示例中,可以以两种方式之一来完成这一点。首先,在步骤5选项1中,EDKRK和装置ID对可以被装置接口站330发送到工厂代码签名服务器340。替代地,在步骤5选项2中,密钥个性化服务器310可以向工厂代码签名服务器340发送EDKRK和装置ID对。工厂代码签名服务器340使用已经预先被提供的DKRK来解密EDKRK,以获得UDK。工厂代码签名服务器340使用UDK来签名和/或加密软件代码。
在步骤6a中,工厂代码签名服务器340向装置接口站330发送所需的软件代码。已经利用用于特定的计算装置320的UDK来签名和/或加密该软件代码。装置接口站330继而在步骤6b中将签名和/或加密的软件代码加载到计算装置320上。已经在步骤3b中先前接收和解密EDKPK以获得UDK的计算装置320使用UDK在步骤7中验证和***代码,将其加载到易失性存储器中并且然后执行该代码。替代地,计算装置在非易失性存储器中存储未加密的软件代码,并且后来加载和执行它。
步骤8图示了工程计算装置450需要在工程设施处被提供更新的代码的情况。为了完成这一点,可信的雇员在步骤9a中访问可信服务器,并且将来自工程计算装置450的装置ID向中央代码签名服务器430发送。签名服务器430检索与那个装置ID相联系的EDKRK,并且使用优选地在其硬件安全模块中存储的DKRK来解密EDKRK。中央代码签名服务器430使用UDK来签名和/或加密代码,并且在步骤9b中向该可信的雇员返回签名和/或加密的代码,该雇员将该签名/加密的代码加载到工程计算装置450上。
类似于步骤8,步骤9图示了需要在维修中心440处维修先前部署的计算装置460的情况。为了完成这一点,能够访问维修中心440的可信服务器访问来自计算装置460的装置ID。该可信服务器检索与那个装置ID联系的EDKRK,并且使用优选地在硬件安全模块中存储的DKRK来解密EDKRK。该可信服务器使用UDK来签名和/或加密执行维修所需的代码,并且将签名和/或加密的代码加载到需要维修或更新的计算装置460上。
图5是图示用于使用在此所述的技术来生成和分发唯一密码装置密钥的方法的一个示例的流程图。密码密钥可以被提供来用于多种目的,包括但是不限于代码签名和/或加密服务。当在这个特定示例中接收到在计算装置中提供工厂安装的软件代码的请求时,该方法在步骤505中开始。该请求包括计算装置的装置ID。如果采用在图3中所示的特定***,则可以由密钥个性化服务器310从装置接口站330接收该请求。响应于该请求,在步骤510,从多个预先生成的加密装置密钥对当中检索装置密钥对的一对加密副本(例如,EDKPK/EDKRK)。在步骤515中,所检索到的一对加密副本与要被提供有例如签名和/或加密的代码的计算装置的装置ID相联系。在步骤520中,在已经向客户部署该计算装置后,向服务器传递检索到的一对中的第一加密副本以随后使用。在一种实现方式中,服务器是代码签名服务器,用于提供要在计算装置中提供的签名和/或加密的软件代码。服务器在步骤525中解密所检索到的一对中的第一加密副本,以获得第一装置密钥。在步骤530中,服务器然后使用第一装置密钥来签名和/或加密软件代码。在步骤535中向计算装置传递所检索到的一对的装置密钥中的第二加密副本和签名和/或加密的软件代码。另外,在步骤540中,向一个或多个另外的服务器发送与装置ID相联系的检索到的装置密钥对中的第一加密副本,使得当例如已经被递送到客户的计算装置被带到维修中心以维修和/或升级时装置密钥可用。
可以将在此所述的一个或多个步骤和功能与一个或多个***的组件实现为包括在诸如存储器或另一种类型的存储装置的计算机可读存储装置上存储的计算机可读指令的计算机代码。诸如专用集成电路(ASIC)的处理器或其他类型的电路在诸如下述的计算机***400的计算机***上执行该计算机代码。该代码可以作为由以源代码、目标代码、可执行代码或其他格式的程序指令构成的软件程序而存在。
图6示出可以被用作在图3和4中所示的***的各种服务器和站等的任何一个的硬件平台的计算机***600。计算机***600可以被用作用于执行在此所述的步骤、方法和功能的一个或多个的平台,该步骤、方法和功能可以被体现为在作为硬件存储装置的一个或多个计算机可读存储装置上存储的软件。
计算机***600包括处理器601或处理电路,其可以实现或执行用于执行在此所述的一些或全部方法、功能和其他步骤的软件指令。通过通信总线603来传送来自处理器601的命令和数据。计算机***600也包括计算机可读存储装置602,诸如随机存取存储器(RAM),其中,用于处理器601的软件和数据可以在运行时间期间驻留。存储装置602也可以包括非易失性数据存储器。计算机***600可以包括用于连接到网络的网络接口604。对于本领域内的普通技术人员显然,可以在计算机***600中添加或替换其他已知的电子组件。
如在本申请中使用的,术语“组件”、“模块”、“***”、“设备”或“接口”等一般意欲指示计算机相关实体,为硬件、硬件和软件的组合、软件或在执行中的软件的形式。例如,组件可以是但是不限于是在处理器上运行的进程、处理器、对象、可执行部分、执行线程、程序和/或计算机。通过例示,在控制器上运行的应用和控制器都可以是组件。一个或多个组件可以驻留在执行的进程和/或线程中,并且组件可以位于一个计算机上和/或分布在两个或更多的计算机之间。
而且,可以使用标准编程和/或工程技术将所要求保护的主题实现为方法、设备或制品,该标准编程和/或工程技术用于产生软件、固件、硬件或其任何组合以控制计算机实现所公开的主题。如在此使用的术语“制品”意欲涵盖从任何计算机可读装置、载体或介质可访问的计算机程序。例如,计算机可读存储介质可以包括但是不限于磁存储装置(例如,硬盘、软盘、磁带…)、光盘(例如,致密盘(CD)、数字通用盘(DVD)…)、智能卡和快闪存储器装置(例如,卡、棒、键驱动…)。当然,本领域内的技术人员将认识到,在不偏离所要求保护的主题的范围或精神的情况下,可以对于该配置进行许多修改。
Claims (20)
1.一种用于生成和分发唯一密码装置密钥的方法,包括:
至少生成第一装置密钥;
利用第一加密密钥来加密所述第一装置密钥,以产生所述装置密钥的第一加密副本;
利用第二加密密钥来加密所述第一装置密钥,以产生所述装置密钥的第二加密副本,所述第二加密密钥与所述第一加密密钥不同;
将所述装置密钥的所述第一加密副本和第二加密副本与用于标识正被制造的计算装置的装置ID相关联;
将所述装置密钥的所述第二加密副本加载到所述计算装置上;
在所述计算装置已经被部署到客户之后,将所述装置密钥的所述第一加密副本和其所相关联的装置ID存储到至少一个服务器上以用于随后的使用。
2.根据权利要求1所述的方法,其中,所述第一装置密钥被离线生成和加密,并且所述方法进一步包括:
将所加密的装置密钥的所述第一副本和第二副本加载到密钥个性化服务器上,而不将所述第一装置密钥的未加密版本加载到所述密钥个性化服务器上;以及
使用所述密钥个性化服务器来将所述装置ID与所述加密的装置密钥的所述第一副本和第二副本相关联。
3.根据权利要求1所述的方法,其中,所述第一装置密钥是第一签名密钥,并且所述方法进一步包括:利用所述第一签名密钥来签名和/或加密用于装置个性化的软件代码,并且将签名和/或加密的软件代码加载到正被制造的所述计算装置上。
4.根据权利要求3所述的方法,进一步包括:通过解密第一加密的签名密钥来获得用于签名/加密所述软件代码的所述第一签名密钥。
5.根据权利要求1所述的方法,其中,所述第一装置密钥是对称密钥。
6.根据权利要求1所述的方法,其中,所述第一装置密钥是非对称密钥对的公共部分。
7.根据权利要求5所述的方法,其中,所述第一装置密钥对于与其相关联的所述计算装置是唯一的,使得多个计算装置的每个被加载有将所述第一装置密钥加密的第二加密的装置密钥,所述第二加密的装置密钥与被加载到任何其他计算装置上的加密的第一装置密钥不同。
8.利用指令编码的至少一个计算机可读介质,所述指令当被处理器执行时执行一种方法,所述方法包括:
接收利用第一加密密钥加密第一装置密钥的装置密钥的第一加密副本;
接收利用第二加密密钥加密所述第一装置密钥的装置密钥的第二加密副本,使得所述装置密钥的第二加密副本与所述装置密钥的第一加密副本不同;
将所述装置密钥的第一加密副本和所述第二加密副本与要被提供签名和/或加密的软件代码的计算装置的装置ID相联系;
向第一代码签名服务器传递与所述装置ID相联系的所述装置密钥的所述第一加密副本,所述第一代码签名服务器提供要在所述计算装置中提供的所述签名和/或加密的软件代码,其中,利用所述第一装置密钥来签名所述签名和/或加密的软件代码;以及
向所述计算装置传递所述装置密钥的所述第二加密副本和所述签名和/或加密的软件代码。
9.根据权利要求8所述的计算机可读介质,进一步包括:向一个或多个另外的代码签名服务器传递与所述装置ID相联系的第一加密的装置密钥。
10.根据权利要求8所述的计算机可读介质,其中,所述第一代码签名服务器是工厂代码签名服务器,并且由所述第一代码签名服务器提供的所述签名的代码是工厂安装的代码,并且所述另外的代码签名服务器的至少一个在计算装置已经被部署到客户之后与服务于计算装置的设施相关联。
11.根据权利要求8所述的计算机可读介质,进一步包括:接收对于软件代码的请求,所述请求包括其中要提供所述代码的所述计算装置的装置ID;以及,响应于所述请求而生成和加密所述第一装置密钥。
12.根据权利要求8所述的计算机可读介质,进一步包括:接收对于软件代码的请求,所述请求包括其中要提供所述代码的所述计算装置的装置ID;并且响应于所述请求而从多个预先生成的加密的装置密钥对当中检索加密的装置密钥对。
13.根据权利要求8所述的计算机可读介质,进一步包括:将对唯一的第一装置密钥进行加密的不同的第一和第二加密装置密钥对与不同的装置ID相联系。
14.一种用于提供代码签名服务的***,包括:
密钥存储器,用于存储多个加密的装置密钥对,所述多个加密的装置密钥对的每一个对包括装置密钥的第一加密副本和第二加密副本,所述装置密钥的第一加密副本的每一个利用第一加密密钥来加密第一装置密钥,并且所述装置密钥的第二加密副本的每一个利用第二加密密钥来加密所述第一装置密钥,使得所述装置密钥的第二加密副本与所述装置密钥的第一加密副本不同;以及
与所述密钥存储器进行通信的一个或多个服务器,所述一个或多个服务器被配置为:(i)将所述加密装置密钥对的每一个与要被提供签名和/或加密的软件代码的相应的计算装置的相应的装置ID相联系;(ii)向代码签名服务器传递在与所述装置ID中的第一个装置ID相联系的第一装置密钥对中的所述装置密钥的第一加密副本;(iii)向由所述第一个装置ID标识的所述计算装置传递所述装置密钥的第二加密副本;以及(iv)从在所述第一装置密钥对中的所述装置密钥的第一加密副本解密所述第一装置密钥,并且利用所述第一装置密钥来加密所述软件代码;以及(v)向由所述第一个装置ID标识的所述计算装置传递所述签名和/或加密的软件代码。
15.根据权利要求14所述的***,其中,所述一个或多个服务器进一步被配置为向一个或多个另外的代码签名服务器传递与所述装置ID中的相应的装置ID相联系的所述多个加密的装置密钥对中的所述第一加密的装置密钥。
16.根据权利要求14所述的***,进一步包括装置接口站,所述装置接口站被配置为建立与由所述第一个装置ID标识的计算装置的通信,向所述一个或多个服务器发送所述计算装置的第一装置ID,并且从所述一个或多个服务器请求将加密的装置密钥对与由所述第一个ID标识的计算装置相联系。
17.根据权利要求14所述的***,其中,所述一个或多个服务器进一步包括密钥个性化服务器,所述密钥个性化服务器被配置为从离线密钥生成设施接收所述多个加密的装置密钥对。
18.根据权利要求14所述的***,其中,所述一个或多个服务器包括工厂代码签名服务器,所述工厂代码签名服务器被配置为:(i)接收所述多个加密的装置密钥对中的所述第二加密的装置密钥和分别与所述第二加密的装置密钥相联系的装置ID;并且(ii)使与所述计算装置的所述第一个装置ID相联系的所述签名和/或加密的软件代码提供在所述计算装置中。
19.根据权利要求17所述的***,进一步包括装置接口站,所述装置接口站被配置为:(i)与所述计算装置建立通信,并且向所述密钥个性化服务器发送所述计算装置的装置ID;(ii)从所述密钥个性化服务器请求将加密的装置密钥对与所述计算装置的装置ID相联系;并且(iii)向所述计算装置发送所述第二加密的装置密钥。
20.根据权利要求19所述的***,其中,所述工厂代码签名服务器进一步被配置为向所述装置接口站发送所述签名和/或加密的软件代码。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161444167P | 2011-02-18 | 2011-02-18 | |
US61/444,167 | 2011-02-18 | ||
US13/150,636 | 2011-06-01 | ||
US13/150,636 US20120213370A1 (en) | 2011-02-18 | 2011-06-01 | Secure management and personalization of unique code signing keys |
PCT/US2012/022725 WO2012112273A1 (en) | 2011-02-18 | 2012-01-26 | Secure management and personalization of unique code signing keys |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103403729A true CN103403729A (zh) | 2013-11-20 |
Family
ID=46652751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012800095320A Pending CN103403729A (zh) | 2011-02-18 | 2012-01-26 | 唯一代码签名密钥的安全管理和个性化 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20120213370A1 (zh) |
EP (1) | EP2676218A1 (zh) |
KR (2) | KR20150052346A (zh) |
CN (1) | CN103403729A (zh) |
BR (1) | BR112013021704A2 (zh) |
WO (1) | WO2012112273A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9774571B2 (en) * | 2015-03-10 | 2017-09-26 | Microsoft Technology Licensing, Llc | Automatic provisioning of meeting room device |
US20160269409A1 (en) | 2015-03-13 | 2016-09-15 | Microsoft Technology Licensing, Llc | Meeting Join for Meeting Device |
US10284376B2 (en) | 2015-06-10 | 2019-05-07 | Arris Enterprises Llc | Code signing system with machine to machine interaction |
EP3116187B1 (en) * | 2015-07-09 | 2019-12-04 | Nxp B.V. | Methods for facilitating secure communication |
US10805087B1 (en) * | 2018-09-28 | 2020-10-13 | Amazon Technologies, Inc. | Code signing method and system |
EP3672142B1 (de) * | 2018-12-20 | 2021-04-21 | Siemens Healthcare GmbH | Verfahren und system zur sicheren übertragung eines datensatzes |
US20220191693A1 (en) * | 2020-12-11 | 2022-06-16 | International Business Machines Corporation | Remote management of hardware security modules |
US12019778B1 (en) * | 2023-11-22 | 2024-06-25 | Verkada Inc. | Systems and methods to perform end to end encryption |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6005942A (en) * | 1997-03-24 | 1999-12-21 | Visa International Service Association | System and method for a multi-application smart card which can facilitate a post-issuance download of an application onto the smart card |
US20020199110A1 (en) * | 2001-06-13 | 2002-12-26 | Algotronix Ltd. | Method of protecting intellectual property cores on field programmable gate array |
US6904527B1 (en) * | 2000-03-14 | 2005-06-07 | Xilinx, Inc. | Intellectual property protection in a programmable logic device |
EP2056230A2 (en) * | 2007-11-01 | 2009-05-06 | Infineon Technologies AG | Method and system for transferring information to a device |
CN101479984A (zh) * | 2006-04-25 | 2009-07-08 | 斯蒂芬·L.·博伦 | 用于身份管理、验证服务器、数据安全和防止中间人攻击的动态分发密钥***和方法 |
CN101650765A (zh) * | 2008-08-11 | 2010-02-17 | 巴比禄股份有限公司 | 加密密钥管理***、外部设备以及加密密钥管理程序 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1418750A1 (en) * | 2002-11-11 | 2004-05-12 | STMicroelectronics Limited | Security integrated circuit |
JP4099039B2 (ja) * | 2002-11-15 | 2008-06-11 | 松下電器産業株式会社 | プログラム更新方法 |
EP1865656A1 (en) * | 2006-06-08 | 2007-12-12 | BRITISH TELECOMMUNICATIONS public limited company | Provision of secure communications connection using third party authentication |
US8621540B2 (en) * | 2007-01-24 | 2013-12-31 | Time Warner Cable Enterprises Llc | Apparatus and methods for provisioning in a download-enabled system |
US20080219449A1 (en) * | 2007-03-09 | 2008-09-11 | Ball Matthew V | Cryptographic key management for stored data |
US8189793B2 (en) * | 2007-08-28 | 2012-05-29 | Panasonic Corporation | Key terminal apparatus, crypto-processing LSI, unique key generation method, and content system |
-
2011
- 2011-06-01 US US13/150,636 patent/US20120213370A1/en not_active Abandoned
-
2012
- 2012-01-26 KR KR1020157010466A patent/KR20150052346A/ko not_active Application Discontinuation
- 2012-01-26 KR KR1020137021685A patent/KR20130118951A/ko active IP Right Grant
- 2012-01-26 EP EP12704476.6A patent/EP2676218A1/en not_active Withdrawn
- 2012-01-26 BR BR112013021704A patent/BR112013021704A2/pt not_active IP Right Cessation
- 2012-01-26 WO PCT/US2012/022725 patent/WO2012112273A1/en active Application Filing
- 2012-01-26 CN CN2012800095320A patent/CN103403729A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6005942A (en) * | 1997-03-24 | 1999-12-21 | Visa International Service Association | System and method for a multi-application smart card which can facilitate a post-issuance download of an application onto the smart card |
US6904527B1 (en) * | 2000-03-14 | 2005-06-07 | Xilinx, Inc. | Intellectual property protection in a programmable logic device |
US20020199110A1 (en) * | 2001-06-13 | 2002-12-26 | Algotronix Ltd. | Method of protecting intellectual property cores on field programmable gate array |
CN101479984A (zh) * | 2006-04-25 | 2009-07-08 | 斯蒂芬·L.·博伦 | 用于身份管理、验证服务器、数据安全和防止中间人攻击的动态分发密钥***和方法 |
EP2056230A2 (en) * | 2007-11-01 | 2009-05-06 | Infineon Technologies AG | Method and system for transferring information to a device |
CN101650765A (zh) * | 2008-08-11 | 2010-02-17 | 巴比禄股份有限公司 | 加密密钥管理***、外部设备以及加密密钥管理程序 |
Also Published As
Publication number | Publication date |
---|---|
KR20150052346A (ko) | 2015-05-13 |
EP2676218A1 (en) | 2013-12-25 |
WO2012112273A1 (en) | 2012-08-23 |
BR112013021704A2 (pt) | 2016-11-01 |
US20120213370A1 (en) | 2012-08-23 |
KR20130118951A (ko) | 2013-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103403729A (zh) | 唯一代码签名密钥的安全管理和个性化 | |
CN1985466B (zh) | 使用分发cd按签署组向设备传递直接证据私钥的方法 | |
CN103460195B (zh) | 用于安全软件更新的***和方法 | |
CN102426640B (zh) | 用于产品验证和激活的安全软件产品标识符 | |
JP4668619B2 (ja) | 装置鍵 | |
CN101689237B (zh) | 激活***体系结构 | |
CN101019368B (zh) | 使用分发cd将直接证明私钥传递给设备的方法 | |
CN102419804B (zh) | 具有冗余安全性的可靠的软件产品验证和激活 | |
CN106936588B (zh) | 一种硬件控制锁的托管方法、装置及*** | |
US20040255119A1 (en) | Memory device and passcode generator | |
CN103946858A (zh) | 应用数据的解密和加密 | |
CN104756127A (zh) | 通过虚拟机进行安全数据处理 | |
CN104639506B (zh) | 对应用程序安装进行管控的方法、***与终端 | |
CN111971929B (zh) | 安全分布式密钥管理*** | |
CN102859929A (zh) | 向在线安全设备供应更新离线身份数据生成和离线设备绑定 | |
US10027639B2 (en) | IC chip performing access control based on encrypted ID | |
CN111611593A (zh) | 安全数据处理设备 | |
CN111104691A (zh) | 敏感信息的处理方法、装置、存储介质及设备 | |
CN111814132B (zh) | 安全认证方法及装置、安全认证芯片、存储介质 | |
CN1478223A (zh) | 验证方法和数据传输*** | |
JP4833745B2 (ja) | センサノードのデータ保護方法、センサノードを配布するための計算機システム及びセンサノード | |
CN104868998A (zh) | 一种向电子设备供应加密数据的***、设备和方法 | |
JP2012065123A (ja) | Icカードシステム、その通信端末、携帯端末 | |
CN112507296A (zh) | 一种基于区块链的用户登录验证方法及*** | |
EP3292654A1 (en) | A security approach for storing credentials for offline use and copy-protected vault content in devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20131120 |