CN103221957B - 利用基于硬件的安全引擎的安全软件许可和供应 - Google Patents
利用基于硬件的安全引擎的安全软件许可和供应 Download PDFInfo
- Publication number
- CN103221957B CN103221957B CN201180055982.9A CN201180055982A CN103221957B CN 103221957 B CN103221957 B CN 103221957B CN 201180055982 A CN201180055982 A CN 201180055982A CN 103221957 B CN103221957 B CN 103221957B
- Authority
- CN
- China
- Prior art keywords
- license
- server
- key
- fastener components
- computing platform
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 36
- 238000004891 communication Methods 0.000 claims description 13
- 230000004913 activation Effects 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 9
- 230000008878 coupling Effects 0.000 claims description 7
- 238000010168 coupling process Methods 0.000 claims description 7
- 238000005859 coupling reaction Methods 0.000 claims description 7
- 230000003213 activating effect Effects 0.000 claims description 6
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 238000009795 derivation Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 12
- 238000001994 activation Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000000712 assembly Effects 0.000 description 3
- 238000000429 assembly Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- VBMOHECZZWVLFJ-GXTUVTBFSA-N (2s)-2-[[(2s)-6-amino-2-[[(2s)-6-amino-2-[[(2s,3r)-2-[[(2s,3r)-2-[[(2s)-6-amino-2-[[(2s)-2-[[(2s)-6-amino-2-[[(2s)-2-[[(2s)-2-[[(2s)-2,6-diaminohexanoyl]amino]-5-(diaminomethylideneamino)pentanoyl]amino]propanoyl]amino]hexanoyl]amino]propanoyl]amino]hexan Chemical compound NC(N)=NCCC[C@@H](C(O)=O)NC(=O)[C@H](CCCCN)NC(=O)[C@H](CCCCN)NC(=O)[C@H]([C@@H](C)O)NC(=O)[C@H]([C@H](O)C)NC(=O)[C@H](CCCCN)NC(=O)[C@H](C)NC(=O)[C@H](CCCCN)NC(=O)[C@H](C)NC(=O)[C@H](CCCN=C(N)N)NC(=O)[C@@H](N)CCCCN VBMOHECZZWVLFJ-GXTUVTBFSA-N 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 108010068904 lysyl-arginyl-alanyl-lysyl-alanyl-lysyl-threonyl-threonyl-lysyl-lysyl-arginine Proteins 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/105—Arrangements for software license management or administration, e.g. for managing licenses at corporate level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/061—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying further key derivation, e.g. deriving traffic keys from a pair-wise master key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/101—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
将来自第一服务器的许可和应用程序通过网络供应给计算平台。主机应用至少部分地从用户密码导出对称密钥,并且在由对称密钥签署的消息中将许可发送到安全引擎的许可管理固件组件。许可管理固件组件至少部分地从安全引擎的安全存储中存储的用户密码导出对称密钥,利用对称密钥验证消息上的签名,验证许可上的第一服务器的签名,利用与第一公钥对应的许可管理固件组件的第一私钥解密许可以获得第二密钥,以及将第二密钥发送到主机应用,主机应用利用第二密钥解密应用程序。
Description
技术领域
本公开一般涉及计算领域。更具体地,本发明的实施例涉及利用基于硬件的安全引擎对计算平台的安全软件许可。
背景技术
计算装置通过软件由终端用户使用,软件可能需要由软件服务提供商或其它供应商提供的精确许可/版本系统。当前的软件许可机制通常或者基于专有硬件(例如,加密狗(dongle))或者使用经由提供安全特征的操作系统(OS)的安全加密密钥。这些机制依赖OS及其服务来确保用于加密/解密的密钥并且可加强基于具体限定策略的SW许可的租赁期限。OS控制的应用是计算机病毒、黑客以及怀有恶意的那些用户的容易目标。它们可利用复杂工具搜索OS管理的存储中隐藏的密钥,或它们可找到绕过这些策略的方式,例如通过改变计算系统时间来延长租赁时间,或通过以从另一个系统获得的具有不同参数的有效文件来替换文件浏览器用来读取策略的文件。专有硬件方案是昂贵的,将用户限于一个制造商,并且不允许制造商开发快速且创新的方案。因此,需要用于向计算系统许可软件的改进的安全机制。
发明内容
根据本发明的一个方面,提供一种将来自第一服务器的许可和应用程序通过网络供应给计算平台的方法,所述许可由第一服务器利用第一公钥进行加密,并且所述许可包括第二密钥,所述应用程序由第一服务器利用第二密钥进行加密,包括:通过由计算系统的处理器执行的主机应用接收用户密码;通过主机应用至少部分地从用户密码导出对称密钥;在由对称密钥签署的消息中,通过所述主机应用,将所述许可发送到计算机系统的芯片组内的硬件实现的安全引擎的许可管理固件组件;通过许可管理固件组件至少部分地从硬件实现的安全引擎的安全存储中存储的用户密码导出对称密钥,利用对称密钥验证消息上的签名,验证许可上的第一服务器的签名,利用与第一公钥对应的许可管理固件组件的第一私钥解密许可以获得第二密钥;通过所述许可管理固件组件将第二密钥发送到主机应用;以及通过所述主机应用利用所述第二密钥解密所述应用程序。
根据本发明的另一个方面,提供一种计算平台,包括:用于执行主机应用的处理器;用于存储所述主机应用的存储器;以及通过接口耦合到所述处理器的芯片组,所述芯片组包括硬件实现的安全引擎,所述安全引擎包括安全存储和许可管理固件组件;其中所述计算平台被配置成通过网络从第一服务器向所述计算平台供应许可和应用程序,所述许可由所述第一服务器利用第一公钥加密并且包括第二密钥,并且所述应用程序由所述第一服务器利用第二密钥加密;其中所述主机应用在被执行时接收用户密码,至少部分地从所述用户密码导出对称密钥,并且在由所述对称密钥签署的消息中将所述许可发送到许可管理固件组件;其中许可管理固件组件至少部分地从安全存储中存储的用户密码导出对称密钥,利用对称密钥验证消息上的签名,验证许可上的第一服务器的签名,利用与第一公钥对应的许可管理固件组件的第一私钥解密许可以获得第二密钥,以及将第二密钥发送到主机应用;以及其中所述主机应用在被执行时利用第二密钥解密所述应用程序。
根据本发明的又一个方面,提供一种将来自第一服务器的许可和应用程序通过网络供应给计算平台的方法,包括:通过所述计算平台上的处理器执行的主机应用接收来自第一服务器的许可和应用程序,所述许可由所述第一服务器利用硬件实现的安全引擎的许可管理固件组件的公钥加密,所述硬件实现的安全引擎在所述计算平台的芯片组内,所述应用程序由所述第一服务器利用由所述第一服务器生成的许可加密密钥加密,经加密的许可由所述第一服务器的私钥签署,并且将经签署、加密的许可和经加密的应用程序存储在所述计算平台的存储器中;通过主机应用从所述计算平台的用户获得密码;通过主机应用至少部分地从密码导出对称密钥,以及利用所述对称密钥签署包括所述经签署、加密的许可的消息;将所述消息从所述主机应用发送到所述硬件实现的安全引擎的许可管理固件组件;通过所述许可管理固件组件至少部分地从所述密码导出所述对称密钥;通过许可管理固件组件利用对称密钥验证所述消息上的签名;如果所述消息签名验证正确,则利用第一服务器的公钥验证所述经加密的许可的签名;如果许可签名验证正确,则利用所述许可管理固件组件的私钥解密所述经加密的许可;通过所述许可管理固件组件从所述许可提取所述许可加密密钥,并且将所述许可加密密钥发送到主机应用;以及通过主机应用利用许可加密密钥解密经加密的应用程序,并且允许对所述计算平台上的应用程序的访问。
根据本发明的再一个方面,提供一种计算平台,包括:用于执行主机应用的处理器;存储器,用于存储所述主机应用;以及通过接口耦合到所述处理器的芯片组,所述芯片组包括硬件实现的安全引擎,所述安全引擎包括安全存储和许可管理固件组件;其中所述计算平台供应通过网络来自第一服务器的许可和应用程序;其中所述主机应用从第一服务器接收许可和应用程序,所述许可由第一服务器利用所述计算平台的芯片组内的硬件实现的安全引擎的许可管理固件组件的公钥来加密,所述应用程序由第一服务器利用由第一服务器生成的许可加密密钥来加密,经加密的许可由第一服务器的私钥签署,将经签署、加密的许可和经加密的应用程序存储在存储器中,从用户获得密码,至少部分地从所述密码中导出对称密钥,用对称密钥签署包括经签署、加密的许可的消息,以及将消息发送到许可管理固件组件;其中所述许可管理固件组件至少部分地从密码导出对称密钥,利用所述对称密钥验证所述消息上的签名;如果所述消息签名验证正确,则利用第一服务器的公钥验证经加密的许可的签名;如果许可签名验证正确,则利用许可管理固件组件的私钥解密经加密的许可,从所述许可提取许可加密密钥;以及将许可加密密钥发送到主机应用;以及其中所述主机应用利用许可加密密钥解密经加密的应用程序,并且允许对所述计算平台上的应用程序的访问。
附图说明
参照附图提供详细的描述。在不同附图中使用相同的附图标记表示相似或相同的项目。
图1是根据本发明一实施例的系统架构的图;
图2是根据本发明的实施例用于激活安全许可管理服务的过程的图;
图3是根据本发明的实施例用于激活能力许可服务的过程的图;
图4和5是根据本发明的实施例的用于获得许可和授权受限软件的过程的图;以及
图6是根据本发明实施例的计算平台的图。
具体实施方式
本发明的实施例提供利用硬件实现的安全引擎(SE)的软件许可机制。SE可嵌入在计算平台的芯片组中,独立于主机OS,并且可与用于认证的远程服务器安全通信。与纯基于软件的方案相比,利用独立于主机OS的硬件组件来保护解密软件许可和/或受限软件(诸如应用程序)以及增强诸如租赁期限之类的策略所需的加密密钥使得安全方案更安全。与仅有软件的方案相比,攻击SE来获得密钥更加困难,因为SE不会被用户级或OS软件篡改。
在以下描述中,阐述了许多具体细节以提供对诸实施例的透彻理解。然而,在没有这些具体细节的情况下也可实现本发明的各个实施例。在其它实例中,并未对公知的方法、程序、组件以及电路进行详细描述以免淡化本发明的特定实施例。此外,可利用诸如集成半导体电路(“硬件”)、被组织成存储在计算机可读存储介质上的一个或多个程序的计算机可读指令(“软件”)、或硬件和软件的一些组合来执行本发明的实施例的各个方面。出于本公开的目的,对“逻辑”的引用应当意指硬件、软件(包括例如控制处理器的操作的微代码)、固件、或它们的一些组合。
图1是根据本发明实施例的系统架构100的图。为了清楚,图1包括计算平台102的简化图。计算平台可以是具有至少一个处理器和至少一个存储器的任意类型的计算装置。在实施例中,计算平台包括手持和/或移动计算装置,诸如蜂窝电话、智能电话、平板计算机、个人装置助理(PDA)、上网本或类似物。在计算平台是手持和/或移动装置的实施例中,像现有技术系统那样需要硬件加密狗是不实际且有问题的。以下参照图6讨论计算平台的一个实施例的更详细示例。
本发明的实施例使用称为安全引擎(SE)108的嵌入式微控制器来提供安全执行和存储环境用于受限软件的许可、供应以及未授权使用的阻止。在实施例中,安全引擎108可被实现为芯片组106内的公知可管理引擎(ME)硬件组件中的功能。在其它实施例中,安全引擎可被实现为与ME分开的芯片组106中的电路。SE包括固件,该固件在安全执行环境中运行在微控制器上并且提供安全存储区109,该安全存储区109被保护以免受运行在计算平台102中的处理器上的用户级程序、操作系统(OS)或基本输入/输出系统(BIOS)篡改。在实施例中,安全存储可存储加密密钥以及可用于软件许可目的的其它数据。安全存储可包括任意类型的存储器。
在实施例中,SE包括至少两个固件模块。安全许可管理(SLM)服务112包括管理解密许可信息和相关联的策略所需的密钥的存储的固件模块。能力许可服务(CLS)110包括提供SE中的SLM服务的安全供应的固件模块。计算平台102包括耦合至芯片组106的至少一个处理器104。处理器104可执行称为主机应用116的应用程序。主机应用出于获得和授权计算平台上安装的受限软件的使用的目的,管理与计算平台用户的交互。受限软件包括软件供应商期望根据定义策略限制访问并通过许可管理的软件。在实施例中,主机应用116通过安全引擎接口(SEI)114与SE108通信。在各实施例中,SEI可根据已知标准或专有通信接口之一来实现。SE经由公共/私有安全应用程序接口(API)将其能力暴露于OS(图1中未示出)和主机应用。
计算平台102利用已知方法与网络118通信。在实施例中,网络包括因特网。在实施例中,主机应用116可与网络通信,且SE108也可与网络通信,其独立于主机应用116或处理器104执行的任何其它程序(不管是用户级程序还是OS)。因此,除处理器执行的程序以外,SE108为计算平台提供另一个通信信道。许可服务器120可耦合到网络以提供向SE供应许可和通信策略及解密密钥的能力。在实施例中,许可服务器将受限软件提供给用户的计算平台。在实施例中,可以有多个许可服务器。在实施例中,每个许可服务器可由软件供应商(独立的软件供应商(ISV))操作。认证服务器122可耦合到网络以实现CLS,并激活并停用SE内的CLS110和SLM服务112。
在实施例中,在获得并许可软件应用之前,SLM服务112必须被激活。可利用认证服务器122实现激活。在实施例中,SE可提供对认证服务器的加密密钥的公共部分的访问,该加密密钥的公共部分可在计算平台的制造时合并到计算平台芯片组106中。利用认证服务器的公钥,SE可创建与认证服务器的安全通信信道。通过SLM服务所需的一些修改,激活流程遵循CLS激活过程。激活过程将许可服务器的公钥存储在SE中,使得SLM服务器和许可服务器可在其间创建安全通信信道。
图2是根据本发明的实施例用于激活SLM服务的过程200的图。在框202,用户连接到许可服务器120,并下载和运行主机应用,以将许可安装到用户的计算平台102上的期望受限软件。如公知的那样,可利用网络浏览器进行该连接。受限软件可以是计算平台上用户使用的任意程序,其中根据许可机制限制对软件的访问。在框204,主机应用运行并执行CLS激活过程,以安装新的认证并激活SLM服务112。在实施例中,对于计算平台该处理可仅执行一次。在其它实施例中,可在受限软件安装之前执行该过程。
图3是根据本发明的实施例用于激活能力许可服务(CLS)的过程300的图。在框302,许可服务器120经由主机应用116和SEI114将具有许可服务器的公钥的创建允许对象发送到SE108内的CLS110。在框304,CLS利用创建允许对象创建允许,并经由主机应用将该允许发送到许可服务器。在框306,许可服务器将认证产品密钥发送到该允许,并且将组合的许可和允许发送到认证服务器122。在框308,认证服务器验证认证产品密钥,并且如果成功,则利用根允许服务器密钥(rootpermitserverkey(RPSK))的私有部分签署该允许。在制造计算平台102时,RPSK的公共部分存储在SE108中。接下来,在框310,认证服务器经由许可服务器和主机应用将经签署的允许发送到CLS。一旦接收到经签署的允许,在框312,CLS利用RPSK的公共部分验证经签署的允许,并且如果成功,则保存允许数据并激活SLM服务。最后,在框314,CLS经由主机应用和许可服务器将激活确认发送回认证服务器。
在实施例中,认证服务器可被SE的制造商拥有和/或操作。许可服务器可被SLM服务的服务提供商拥有和/或操作(例如,想要通过硬件机制保护其软件使用的ISV)。在实施例中,SE仅最初在运输计算平台时信任认证服务器。随后,认证服务器可用于将该信任关系委托给许可服务器,用于SLM服务的管理。以此方式,在已经购买计算平台之后,可由用户增加SLM服务。这为用户提供了从提供类似服务的多个供应商中选择SLM服务提供商的灵活性。这还提供了将信任关系仅委托给与SE制造商有商业关系的服务提供商的安全方式。
返回到图2,如果CLS激活过程不成功,则可报告错误情况,并且激活处理结束。如果SLM服务的激活成功,则在框206,许可服务器120将其时间与SLM服务同步,在许可下载期间可适当地设置租赁期限。在该时间已经被同步之后,主机应用116提示用户在框208输入密码。
在框210,主机应用接收用户密码(经由公知的计算平台输入技术),利用SLM服务112的公钥(在制造过程中,该公钥存储在SE内的安全存储中)加密用户密码,并且将加密密码发送到认证服务器122。在框212,认证服务器利用认证服务器的私钥签署经加密的密码,并且将得到的消息发送(经签署、加密的用户密码)到SLM服务112。在框214,SLM服务利用认证服务器的公钥(在制造时存储在SE中)验证消息,利用SLM服务的私钥解密经加密的密码,并且如果验证成功将用户密码存储在安全存储109中。
可通过执行CLS停用过程并且用无效认证替换激活认证,来实现SLM服务的停用。
图4和5是根据本发明的实施例用于获得许可和授权受限软件的过程400、500的图。在框402,用户请求许可服务器120下载受限软件以及用于在用户的计算平台102上使用的特定许可。在实施例中,可经由主机应用做出请求。在框404,许可服务器生成许可加密密钥(LEK),并利用LEK加密所请求的受限软件。在实施例中,LEK包括对称密钥。在框406,许可服务器利用LEK创建许可。在实施例中,该许可包括用于所请求的受限软件的独特标识符、关于用户的信息、使用软件的租赁时段以及LEK。许可服务器利用SLM服务的公钥加密该许可。在实施例中,主机应用将SLM服务的公钥发送到许可服务器作为用户请求的一部分。许可服务器利用许可服务器的私钥签署该许可。
在框408,许可服务器将经加密的受限软件和经签署的许可发送到用户的计算平台上的主机应用。在实施例中,主机应用将经加密的受限软件和经签署的许可存储在计算平台上的存储器中。在另一实施例中,经加密的受限软件和/或许可被存储在安全存储109中。在框410,用户请求使用软件。在框412,主机应用提示用户输入用户的密码。在框414,用户输入密码。处理在图5中的框502继续。
在框502,主机应用从用户密码导出对称密码。在实施例中,可根据B.Kaliski的基于密码的加密规范(PKCS#5),版本2.0,2000年9月,RSA实验室,征求意见稿2898实现该过程。在其它实施例中,可使用其它密码生成机制。在框504,主机应用通过SEI114在由对称密钥签署的消息中将经加密的许可发送到SLM服务112。在框506,SLM服务从在框214存储的用户密码导出对称密钥。SLM服务然后验证消息上的数字签名。如果消息签名被正确验证,则SLM服务进一步利用许可服务器的公钥验证经加密的许可上的许可服务器的签名。如果许可签名被验证,则SLM服务利用SLM服务的私钥对经加密的许可进行解密,并且验证租赁期限还未到期。如果租赁期限还未到期,则在框508,SLM服务从许可提取LEK,并且将LEK发送到主机应用。在框510,主机应用利用LEK对经加密的受限软件进行解密,并且允许对计算平台上的软件的访问。
在实施例中,LEK是独特的并且仅为特定的租赁时段生成,并且仅可使用一次。一旦LEK被使用,既使黑客获得对该密钥的访问,它也是无用的。在实施例中,SLM服务可利用LEK对经加密的软件进行解密,并且将得到的经解密软件提供给主机应用。在实施例中,LEK被临时存储在存储器中,但不在硬驱动器上。为了进一步的保护,在实施例中,可根据已知方法使主机应用抗篡改。
在实施例中,可将多个认证安装在计算平台上,所以用户可同时订购来自多个软件供应商的受限软件产品。
在实施例中,可包括已知的用于计算平台的防盗技术,以进一步保护计算平台。在一个实施例中,如果触发盗窃条件,则SLM服务将不会将许可加密密钥(LEK)发送到主机应用,从而保护软件以免用在被盗窃的计算平台上。在另一个实施例中,如果触发盗窃条件,则SLM服务不会对经加密的软件进行解密。
在实施例中,主机应用可包括如上所述的安装功能。在另一个实施例中,主机应用包括安装功能以及受限软件。在实施例中,对于计算平台可仅执行一次安装。在另一个实施例中,可在任何受限软件每次尝试安装之前执行安装。
图6示出根据本发明实施例的计算平台环境的框图。在各个实施例中,系统600的一个或多个组件可设置在能执行本文中参照本发明一些实施例所讨论的一个或多个操作的各种电子器件中。例如,系统600的组件中的一个或多个可被用来通过处理指令、执行子例程等根据本文讨论的操作,执行参照图1-5讨论的操作。另外,本文(例如参照图6)讨论的各种存储设备可用于存储数据、运算结果等。在一个实施例中,通过网络(例如,经由网络接口装置630)接收的或来自本地存储器装置的数据可被存储在处理器602中存在的高速缓存中。这些处理器然后可根据本发明的各实施例应用本文讨论的操作。图6的示例计算系统可嵌入在移动计算装置、手持计算装置或固定计算装置中。
更具体地,计算系统600可包括经由互连网络(或总线)604通信的一个或多个中央处理单元(CPU)602或处理器。因此,在一些实施例中,本文讨论的各实施例可由处理器执行。此外,处理器602可包括通用处理器、网络处理器(处理在计算机网络603上传达的数据),或者其他类型的处理器(包括精简指令集计算机(RISC)处理器或复杂指令集计算机(CISC))。此外,处理器602可具有单核或多核设计。具有多核设计的处理器602可将不同类型的处理器核集成在同一集成电路(IC)管芯上。同样,具有多核设计的处理器602可被实现为对称或不对称多处理器。此外,参照图1-5讨论的操作可由系统600的一个或多个组件执行。在实施例中,处理器(诸如处理器1602-1)可包括安全许可管理服务和/或能力许可服务,作为硬连线逻辑(例如,电路)或微代码。在实施例中,这些组件可被实现为存储在安全引擎中的固件。
芯片组606也可与互连网络604通信。芯片组606可包括图形和存储器控制器中枢(GMCH)608。GMCH608可包括与存储器612通信的存储器控制器610。存储器612可存储数据,例如包括由处理器602或包含在计算系统600中的任何其它设备执行的指令序列。此外,存储器612可存储诸如主机应用116之类的本文讨论的程序或算法(在加载到处理器602以便执行之前)、经加密的许可、经加密的受限软件程序、与可执行文件、映射对应的指令中的一个或多个。该数据(包括指令)中的一些或至少一部分可被存储在盘驱动器628和/或处理器602内的一个或多个高速缓存中。在本发明的一个实施例中,存储器612可包括一个或多个易失性存储(或存储器)设备,诸如随机存取存储器(RAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、或其他类型的存储设备。还可使用诸如硬盘之类的非易失性存储器。诸如多个处理器和/或多个系统存储器之类的附加设备可经由互连网络604来进行通信。
GMCH608还可包括与显示器616通信的图形接口614。在本发明的一个实施例中,图形接口614可经由加速图形端口(AGP)来与显示器616通信。在本发明的实施例中,显示器616可以是通过例如信号转换器与图形接口614通信的平板显示器或触摸屏显示器,该信号转换器将诸如视频存储器或系统存储器之类的存储设备中存储的图像的数字表示转换成由显示器616解读和显示的显示器信号。由接口614产生的显示器信号可经过各种控制设备,然后由显示器616解读并后续在显示器616上显示。
中枢接口618可允许GMCH608与输入/输出(I/O)控制中枢(ICH)620通信。ICH620可向与计算系统600通信的I/O设备提供接口。ICH620可通过诸如外围组件互连(PCI)桥、通用串行总线(USB)控制器或其他类型的外围桥或控制器等外围桥(或控制器)624与总线622通信。桥624可在处理器602和外围设备之间提供数据路径。可使用其它类型的布局。同样,多个总线可例如通过多个桥或控制器来与ICH620通信。另外,在本发明的各实施例中,与ICH620处于通信中的其它外围设备可包括集成的驱动电子(IDE)或小型计算机系统接口(SCSI)硬驱动器、USB端口、键盘、鼠标、并行端口、串行端口、软盘驱动器、数字输出支持(例如,数字视频接口(DVI))、或其他设备。在实施例中ICH可包括安全引擎108。在一个实施例中,安全引擎可被实现为ICH内的固件。
总线622可与音频设备626、一个或多个盘驱动器628以及可与计算机网络603(例如因特网)通信的网络接口设备630通信。在一实施例中,设备630可以是能够进行有线或无线通信的网络接口控制器(NIC)。其他设备可经由总线622通信。同样,在本发明的一些实施例中,各组件(诸如网络接口装置630)可与GMCH608通信。此外,可组合处理器602、GMCH608和/或图形接口514,以形成单个芯片。
在实施例中,安全引擎108独立于处理器602的任何活动通过总线622(经由ICH620)和网络接口装置630与网络603通信。
此外,计算系统600可包括易失性和/或非易失性存储器(或存储)。例如,非易失性存储器可包括以下的一个或多个:只读存储器(ROM)、可编程ROM(PROM)、可擦除PROM(EPROM)、电EPROM(EEPROM)、盘驱动器、软盘、紧致盘ROM(CD-ROM)、数字多功能盘(DVD)、闪存、磁光盘或能够储存电子数据(例如,包括指令)的其它类型的非易失性机器可读介质。
在另一实施例中,系统600的组件可以点对点(PtP)配置来布置。例如,处理器、存储器、和/或输入/输出设备可通过多个点对点接口互连。在实施例中,芯片组606可包括存储器控制器中枢(MCH)以及安全引擎。
在本发明的各个实施例中,例如,参照图1-5,本文所讨论的操作可实现为硬件(例如,逻辑电路)、软件(包括,例如,控制诸如参照图6所讨论的处理器之类的处理器的操作的微代码)、固件、或它们的组合,该组合可被提供为计算机程序产品,例如,包括具有存储在其上的指令(或软件程序)的有形的机器可读或计算机可读介质,这些指令(或软件程序)用于编程计算机(例如,计算设备的处理器或其他逻辑)以执行本文所讨论的操作。机器可读介质可包括诸如那些本文所讨论的存储设备。
在本说明书中对“一个实施例”或“实施例”的引用意味着结合该实施例描述的特定特征、结构或特性可包括在至少一个实现中。在本说明书各处出现的短语“在一个实施例中”可能或可能不均指代同一实施例。
另外,在以下描述和所附权利要求中,可能使用术语“耦合”和“连接”以及它们的派生词。在某些实施例中,“连接”可能用于指示两个或多个元件相互直接物理接触或电接触。“耦合”可能表示两个或多个元件直接物理接触或电接触。然而,“耦合”还可表示两个或多个元件可能相互不直接接触,但仍相互配合或相互作用。
此外,这种计算机可读介质可被下载为计算机程序产品,其中该程序可通过数据信号方式经由通信链路(例如,总线、调制解调器或网络连接)从远程计算机(例如,服务器)传递至请求计算机(例如,客户端)。
因此,虽然用结构特征和/或方法动作专属语言描述了本发明的实施例,但是应当理解所保护的主题可不限于所描述的具体特征或动作。相反,这些具体特征和动作是作为实现所要求保护的主题的样本形式而公开的。
Claims (30)
1.一种将来自第一服务器的许可和应用程序通过网络供应给计算平台的方法,所述许可由第一服务器利用第一公钥进行加密,并且所述许可包括第二密钥,所述应用程序由第一服务器利用第二密钥进行加密,包括:
通过由计算系统的处理器执行的主机应用接收用户密码;
通过主机应用至少部分地从用户密码导出对称密钥;
在由对称密钥签署的消息中,通过所述主机应用,将所述许可发送到计算机系统的芯片组内的硬件实现的安全引擎的许可管理固件组件;
通过许可管理固件组件至少部分地从硬件实现的安全引擎的安全存储中存储的用户密码导出对称密钥,利用对称密钥验证消息上的签名,验证许可上的第一服务器的签名,利用与第一公钥对应的许可管理固件组件的第一私钥解密许可以获得第二密钥;
通过所述许可管理固件组件将第二密钥发送到主机应用;以及
通过所述主机应用利用所述第二密钥解密所述应用程序。
2.如权利要求1所述的方法,其特征在于,还包括通过计算平台连接到第一服务器并且将所述主机应用下载到所述计算平台。
3.如权利要求2所述的方法,其特征在于,还包括在接收所述用户密码之前通过安全引擎的能力许可服务组件激活第一服务器和许可管理固件组件之间的授权通信信道。
4.如权利要求1所述的方法,其特征在于,还包括将所述许可管理固件组件中的时间与第一服务器上的时间同步。
5.如权利要求4所述的方法,其特征在于,还包括在解密所述许可之后,通过所述许可管理固件组件验证所述应用程序的授权使用的租赁期限还未到期。
6.如权利要求1所述的方法,其特征在于,所述许可包括所述应用程序的独特标识符、用户的计算平台对所述应用程序的授权使用的租赁期限以及第二密钥。
7.如权利要求1所述的方法,其特征在于,还包括如果在计算平台上已经触发盗窃条件,则不从许可管理固件组件向所述主机应用发送第二密钥。
8.一种计算平台,包括:
用于执行主机应用的处理器;
用于存储所述主机应用的存储器;以及
通过接口耦合到所述处理器的芯片组,所述芯片组包括硬件实现的安全引擎,所述安全引擎包括安全存储和许可管理固件组件;
其中所述计算平台被配置成通过网络从第一服务器向所述计算平台供应许可和应用程序,所述许可由所述第一服务器利用第一公钥加密并且包括第二密钥,并且所述应用程序由所述第一服务器利用第二密钥加密;
其中所述主机应用在被执行时接收用户密码,至少部分地从所述用户密码导出对称密钥,并且在由所述对称密钥签署的消息中将所述许可发送到许可管理固件组件;
其中许可管理固件组件至少部分地从安全存储中存储的用户密码导出对称密钥,利用对称密钥验证消息上的签名,验证许可上的第一服务器的签名,利用与第一公钥对应的许可管理固件组件的第一私钥解密许可以获得第二密钥,以及将第二密钥发送到主机应用;以及
其中所述主机应用在被执行时利用第二密钥解密所述应用程序。
9.如权利要求8所述的计算平台,其特征在于,所述计算平台连接至所述第一服务器并且下载所述主机应用以便存储在所述存储器中。
10.如权利要求9所述的计算平台,其特征在于,所述硬件实现的安全引擎包括能力许可服务组件,用于在接收所述用户密码之前激活第一服务器和许可管理固件组件之间的授权通信信道。
11.如权利要求8所述的计算平台,其特征在于,所述许可管理固件组件使所述许可管理固件组件中的时间与第一服务器上的时间同步。
12.如权利要求11所述的计算平台,其特征在于,在解密所述许可之后,所述许可管理固件组件验证所述应用程序的授权使用的租赁期限还未到期。
13.如权利要求8所述的计算平台,其特征在于,所述许可包括所述应用程序的独特标识符、用户的计算平台对所述应用程序的授权使用的租赁期限以及第二密钥。
14.如权利要求8所述的计算平台,其特征在于,如果在计算平台上已经触发盗窃条件,则所述许可固件组件不向所述主机应用发送第二密钥。
15.一种将来自第一服务器的许可和应用程序通过网络供应给计算平台的方法,包括:
通过所述计算平台上的处理器执行的主机应用接收来自第一服务器的许可和应用程序,所述许可由所述第一服务器利用硬件实现的安全引擎的许可管理固件组件的公钥加密,所述硬件实现的安全引擎在所述计算平台的芯片组内,所述应用程序由所述第一服务器利用由所述第一服务器生成的许可加密密钥加密,经加密的许可由所述第一服务器的私钥签署,并且将经签署、加密的许可和经加密的应用程序存储在所述计算平台的存储器中;
通过主机应用从所述计算平台的用户获得密码;
通过主机应用至少部分地从密码导出对称密钥,以及利用所述对称密钥签署包括所述经签署、加密的许可的消息;
将所述消息从所述主机应用发送到所述硬件实现的安全引擎的许可管理固件组件;
通过所述许可管理固件组件至少部分地从所述密码导出所述对称密钥;
通过许可管理固件组件利用对称密钥验证所述消息上的签名;如果所述消息签名验证正确,则利用第一服务器的公钥验证所述经加密的许可的签名;如果许可签名验证正确,则利用所述许可管理固件组件的私钥解密所述经加密的许可;
通过所述许可管理固件组件从所述许可提取所述许可加密密钥,并且将所述许可加密密钥发送到主机应用;以及
通过主机应用利用许可加密密钥解密经加密的应用程序,并且允许对所述计算平台上的应用程序的访问。
16.如权利要求15所述的方法,其特征在于,还包括在通过许可管理固件组件导出对称密钥之前的以下步骤:
通过主机应用从所述计算平台的用户接收密码;
通过主机应用,利用所述许可管理固件组件的公钥加密所述密码;
通过主机应用将经加密的密码发送到第二服务器,所述第二服务器通过网络耦合到计算平台;
通过许可管理固件组件接收由第二服务器的私钥签署的经加密的密码;以及
通过许可管理固件组件验证经加密的密码的签名,如果所述签名验证正确,则利用许可管理固件组件的私钥解密所述经加密的密码,以及将密码存储在安全引擎内的安全存储中。
17.如权利要求15所述的方法,其特征在于,还包括通过计算平台连接到第一服务器并且将所述主机应用下载到所述计算平台。
18.如权利要求17所述的方法,其特征在于,还包括在接收所述用户密码之前通过安全引擎的能力许可服务组件激活第一服务器和许可管理固件组件之间的授权通信信道。
19.如权利要求15所述的方法,其特征在于,还包括将所述许可管理固件组件中的时间与第一服务器上的时间同步。
20.如权利要求19所述的方法,其特征在于,还包括在解密所述许可之后,通过所述许可管理固件组件验证所述应用程序的授权使用的租赁期限还未到期。
21.如权利要求15所述的方法,其特征在于,所述许可包括所述应用程序的独特标识符、用户的计算平台对所述应用程序的授权使用的租赁期限以及所述许可加密密钥。
22.如权利要求15所述的方法,其特征在于,还包括如果在计算平台上已经触发盗窃条件,则不从许可管理固件组件向所述主机应用发送许可加密密钥。
23.一种计算平台,包括:
用于执行主机应用的处理器;
存储器,用于存储所述主机应用;以及
通过接口耦合到所述处理器的芯片组,所述芯片组包括硬件实现的安全引擎,所述安全引擎包括安全存储和许可管理固件组件;
其中所述计算平台供应通过网络来自第一服务器的许可和应用程序;
其中所述主机应用从第一服务器接收许可和应用程序,所述许可由第一服务器利用所述计算平台的芯片组内的硬件实现的安全引擎的许可管理固件组件的公钥来加密,所述应用程序由第一服务器利用由第一服务器生成的许可加密密钥来加密,经加密的许可由第一服务器的私钥签署,将经签署、加密的许可和经加密的应用程序存储在存储器中,从用户获得密码,至少部分地从所述密码中导出对称密钥,用对称密钥签署包括经签署、加密的许可的消息,以及将消息发送到许可管理固件组件;
其中所述许可管理固件组件至少部分地从密码导出对称密钥,利用所述对称密钥验证所述消息上的签名;如果所述消息签名验证正确,则利用第一服务器的公钥验证经加密的许可的签名;如果许可签名验证正确,则利用许可管理固件组件的私钥解密经加密的许可,从所述许可提取许可加密密钥;以及将许可加密密钥发送到主机应用;以及
其中所述主机应用利用许可加密密钥解密经加密的应用程序,并且允许对所述计算平台上的应用程序的访问。
24.如权利要求23所述的计算平台,其特征在于,所述许可管理固件组件通过主机应用从计算平台的用户接收密码;并且用所述许可管理固件组件的公钥加密所述密码;
其中所述主机应用将经加密的密码发送到第二服务器,所述第二服务器通过网络耦合到所述计算平台;
其中所述许可管理固件组件接收由第二服务器的私钥签署的经加密的密码,验证经加密的密码的签名,如果签名验证正确,则利用所述许可管理固件组件的私钥解密所述经加密的密码;以及将所述密码存储在安全引擎内的安全存储中。
25.如权利要求23所述的计算平台,其特征在于,所述计算平台连接至所述第一服务器并且下载所述主机应用以便存储在所述存储器中。
26.如权利要求25所述的计算平台,其特征在于,所述硬件实现的安全引擎包括能力许可服务组件,用于在接收所述用户密码之前激活第一服务器和许可管理固件组件之间的授权通信信道。
27.如权利要求23所述的计算平台,其特征在于,所述许可管理固件组件使所述许可管理固件组件中的时间与第一服务器上的时间同步。
28.如权利要求27所述的计算平台,其特征在于,在解密所述许可之后,所述许可管理固件组件验证所述应用程序的授权使用的租赁期限还未到期。
29.如权利要求23所述的计算平台,其特征在于,所述许可包括所述应用程序的独特标识符、用户的计算平台对所述应用程序的授权使用的租赁期限以及第二密钥。
30.如权利要求23所述的计算平台,其特征在于,如果在计算平台上已经触发盗窃条件,则所述许可固件组件不向所述主机应用发送第二密钥。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/951,853 US8332631B2 (en) | 2010-11-22 | 2010-11-22 | Secure software licensing and provisioning using hardware based security engine |
US12/951,853 | 2010-11-22 | ||
PCT/US2011/059692 WO2012071168A2 (en) | 2010-11-22 | 2011-11-08 | Secure software licensing and provisioning using hardware based security engine |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103221957A CN103221957A (zh) | 2013-07-24 |
CN103221957B true CN103221957B (zh) | 2015-12-09 |
Family
ID=46065516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180055982.9A Expired - Fee Related CN103221957B (zh) | 2010-11-22 | 2011-11-08 | 利用基于硬件的安全引擎的安全软件许可和供应 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8332631B2 (zh) |
EP (1) | EP2643788B1 (zh) |
JP (1) | JP5657811B2 (zh) |
KR (1) | KR101377359B1 (zh) |
CN (1) | CN103221957B (zh) |
AU (1) | AU2011332180B2 (zh) |
WO (1) | WO2012071168A2 (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8332631B2 (en) | 2010-11-22 | 2012-12-11 | Intel Corporation | Secure software licensing and provisioning using hardware based security engine |
KR101621791B1 (ko) | 2012-08-14 | 2016-05-31 | 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 | 현재 이용되는 장치 업데이팅 |
US20140115672A1 (en) * | 2012-10-18 | 2014-04-24 | Roger Wood | Storing and Accessing Licensing Information in Operating System-Independent Storage |
US20140143885A1 (en) * | 2012-11-20 | 2014-05-22 | Ati Technologies Ulc | Firmware-implemented software licensing |
CN104462993B (zh) * | 2013-09-18 | 2018-01-09 | 北大方正集团有限公司 | 加密方法、解密方法、加密装置和解密装置 |
US10726162B2 (en) * | 2014-12-19 | 2020-07-28 | Intel Corporation | Security plugin for a system-on-a-chip platform |
US10289814B2 (en) | 2014-12-23 | 2019-05-14 | Intel Corporation | Licensing in the cloud |
EP3043284A1 (en) * | 2015-01-12 | 2016-07-13 | Huawei Technologies Co., Ltd. | Software handling device, server system and methods thereof |
KR101655890B1 (ko) * | 2015-04-08 | 2016-09-08 | (주)세이퍼존 | 배드 유에스비 방지를 위한 보안 유에스비 장치의 펌웨어 설치 방법 |
US10248791B2 (en) * | 2015-07-20 | 2019-04-02 | Intel Corporation | Technologies for secure hardware and software attestation for trusted I/O |
JP6729122B2 (ja) * | 2016-07-19 | 2020-07-22 | 富士通株式会社 | 情報処理装置、プログラムおよび情報処理システム |
US10581620B2 (en) | 2016-11-14 | 2020-03-03 | Integrity Security Services Llc | Scalable certificate management system architectures |
KR102216322B1 (ko) * | 2016-11-14 | 2021-02-17 | 인테그리티 시큐리티 서비시즈 엘엘씨 | 디바이스의 보안 프로비저닝 및 관리 |
US10642987B2 (en) * | 2017-01-19 | 2020-05-05 | Ebay Inc. | Cryptography based fraud tracking |
JP6796861B2 (ja) * | 2017-04-11 | 2020-12-09 | 株式会社アクセル | アプリケーションソフトウェアの提供及び認証方法並びにそのためのシステム |
CN107169344B (zh) * | 2017-05-10 | 2020-04-21 | 威盛电子股份有限公司 | 阻挡非授权应用程序的方法以及使用该方法的装置 |
RU2653247C1 (ru) * | 2017-06-16 | 2018-05-07 | Закрытое акционерное общество "Особое Конструкторское Бюро Систем Автоматизированного Проектирования" (ЗАО "ОКБ САПР") | Способ лицензирования программного обеспечения при помощи аппаратных средств |
CN107688729B (zh) * | 2017-07-27 | 2020-11-27 | 大唐高鸿信安(浙江)信息科技有限公司 | 基于可信主机的应用程序保护系统及方法 |
US20190095593A1 (en) * | 2017-09-25 | 2019-03-28 | Hewlett Packard Enterprise Development Lp | License information based on baseboard management controller |
US11372977B2 (en) | 2018-11-12 | 2022-06-28 | Thirdwayv, Inc. | Secure over-the-air firmware upgrade |
CN109684790B (zh) * | 2018-12-26 | 2021-06-04 | 佛山市瑞德物联科技有限公司 | 软件启动方法、软件授权验证方法、设备和存储介质 |
WO2021159052A1 (en) * | 2020-02-08 | 2021-08-12 | Cameron Laghaeian | Method and apparatus for managing encryption keys and encrypted electronic information on a network server |
US12045375B2 (en) | 2020-08-24 | 2024-07-23 | Analog Devices, Inc. | Techniques of tracking software usage on a remote device |
EP4214910A4 (en) * | 2020-09-21 | 2024-06-26 | Hewlett-Packard Development Company, L.P. | FUNCTION ACTIVATION |
CN115189929B (zh) * | 2022-06-27 | 2024-06-07 | 苏州华兴源创科技股份有限公司 | 授权认证的方法、装置、计算机设备和存储介质 |
US11836255B1 (en) * | 2023-03-28 | 2023-12-05 | Verkada Inc. | Microcontroller unit (MCU) secure boot |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1825329A (zh) * | 2005-02-04 | 2006-08-30 | 微软公司 | 用于许可数字应用程序的柔性许可架构 |
US7814023B1 (en) * | 2005-09-08 | 2010-10-12 | Avaya Inc. | Secure download manager |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2212574C (en) * | 1995-02-13 | 2010-02-02 | Electronic Publishing Resources, Inc. | Systems and methods for secure transaction management and electronic rights protection |
JP3688356B2 (ja) * | 1995-08-31 | 2005-08-24 | 富士通株式会社 | ライセンシー通知システム |
US7171662B1 (en) | 1998-03-18 | 2007-01-30 | Microsoft Corporation | System and method for software licensing |
US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
JP2001211162A (ja) * | 2000-01-26 | 2001-08-03 | Sony Corp | データ処理システム、記録デバイス、およびデータ処理方法、並びにプログラム提供媒体 |
US7062567B2 (en) * | 2000-11-06 | 2006-06-13 | Endeavors Technology, Inc. | Intelligent network streaming and execution system for conventionally coded applications |
JP2002229447A (ja) * | 2001-01-30 | 2002-08-14 | Nippon Telegr & Teleph Corp <Ntt> | デジタルコンテンツ流通における著作権保護システム |
JP2003298565A (ja) * | 2002-03-29 | 2003-10-17 | Matsushita Electric Ind Co Ltd | コンテンツ配信システム |
US7308573B2 (en) * | 2003-02-25 | 2007-12-11 | Microsoft Corporation | Enrolling / sub-enrolling a digital rights management (DRM) server into a DRM architecture |
JPWO2004109972A1 (ja) * | 2003-06-05 | 2006-07-20 | 松下電器産業株式会社 | ライセンス受信用ユーザ端末 |
WO2005093989A1 (en) * | 2004-03-29 | 2005-10-06 | Smart Internet Technology Crc Pty Limited | Digital license sharing system and method |
US8194859B2 (en) * | 2005-09-01 | 2012-06-05 | Qualcomm Incorporated | Efficient key hierarchy for delivery of multimedia content |
US8660964B2 (en) | 2006-06-30 | 2014-02-25 | Hewlett-Packard Development Company, L.P. | Secure device licensing |
US20090327741A1 (en) * | 2008-06-30 | 2009-12-31 | Zimmer Vincent J | System and method to secure boot uefi firmware and uefi-aware operating systems on a mobile internet device (mid) |
US8904191B2 (en) * | 2009-01-21 | 2014-12-02 | Microsoft Corporation | Multiple content protection systems in a file |
US8332631B2 (en) | 2010-11-22 | 2012-12-11 | Intel Corporation | Secure software licensing and provisioning using hardware based security engine |
-
2010
- 2010-11-22 US US12/951,853 patent/US8332631B2/en not_active Expired - Fee Related
-
2011
- 2011-11-08 KR KR1020137013003A patent/KR101377359B1/ko active IP Right Grant
- 2011-11-08 JP JP2013539891A patent/JP5657811B2/ja not_active Expired - Fee Related
- 2011-11-08 CN CN201180055982.9A patent/CN103221957B/zh not_active Expired - Fee Related
- 2011-11-08 EP EP11842495.1A patent/EP2643788B1/en not_active Not-in-force
- 2011-11-08 AU AU2011332180A patent/AU2011332180B2/en not_active Ceased
- 2011-11-08 WO PCT/US2011/059692 patent/WO2012071168A2/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1825329A (zh) * | 2005-02-04 | 2006-08-30 | 微软公司 | 用于许可数字应用程序的柔性许可架构 |
US7814023B1 (en) * | 2005-09-08 | 2010-10-12 | Avaya Inc. | Secure download manager |
Also Published As
Publication number | Publication date |
---|---|
WO2012071168A2 (en) | 2012-05-31 |
KR101377359B1 (ko) | 2014-03-25 |
EP2643788A2 (en) | 2013-10-02 |
AU2011332180A1 (en) | 2013-07-11 |
WO2012071168A3 (en) | 2012-07-19 |
US20120131345A1 (en) | 2012-05-24 |
JP5657811B2 (ja) | 2015-01-21 |
EP2643788B1 (en) | 2018-09-19 |
JP2014501966A (ja) | 2014-01-23 |
EP2643788A4 (en) | 2017-07-05 |
AU2011332180B2 (en) | 2016-05-19 |
CN103221957A (zh) | 2013-07-24 |
KR20130079602A (ko) | 2013-07-10 |
US8332631B2 (en) | 2012-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103221957B (zh) | 利用基于硬件的安全引擎的安全软件许可和供应 | |
JP4615601B2 (ja) | コンピュータセキュリティシステムおよびコンピュータセキュリティ方法 | |
WO2021179449A1 (zh) | 一种基于证书身份认证的拟态防御系统及证书签发方法 | |
KR101712784B1 (ko) | 글로벌 플랫폼 규격을 사용하는 발행자 보안 도메인에 대한 키 관리 시스템 및 방법 | |
WO2021073170A1 (zh) | 数据提供和融合的方法及装置 | |
US9407636B2 (en) | Method and apparatus for securely saving and restoring the state of a computing platform | |
TWI489315B (zh) | 用於電子裝置之暫時安全開機流程之系統與方法 | |
CN102271037B (zh) | 基于在线密钥的密钥保护装置 | |
KR100792287B1 (ko) | 자체 생성한 암호화키를 이용한 보안방법 및 이를 적용한보안장치 | |
KR101530809B1 (ko) | 멀티-테넌트 서비스 제공자에 의한 동적 플랫폼 재구성 | |
CN107464109B (zh) | 可信移动支付装置、系统和方法 | |
US20080130893A1 (en) | Methods and systems for utilizing cryptographic functions of a cryptographic co-processor | |
CN107743067B (zh) | 数字证书的颁发方法、系统、终端以及存储介质 | |
US20150310427A1 (en) | Method, apparatus, and system for generating transaction-signing one-time password | |
US9280687B2 (en) | Pre-boot authentication using a cryptographic processor | |
CN110688660B (zh) | 一种终端安全启动的方法及装置、存储介质 | |
CN102456111B (zh) | 一种Linux操作系统许可控制的方法及系统 | |
CN106936588B (zh) | 一种硬件控制锁的托管方法、装置及系统 | |
CN106027503A (zh) | 一种基于tpm的云存储数据加密方法 | |
AU2020244511A1 (en) | Balancing public and personal security needs | |
JP4616345B2 (ja) | 配布cdを用いて直接証明秘密鍵を装置に配布する方法 | |
JP6476167B2 (ja) | 自己認証デバイス及び自己認証方法 | |
CN114629639A (zh) | 基于可信执行环境的密钥管理方法、装置和电子设备 | |
KR20180087543A (ko) | 키 관리 방법 및 fido 소프트웨어 인증장치 | |
US11455379B2 (en) | Control system and method thereof for secure manufacturing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20151209 Termination date: 20191108 |