CN104081712A - 使用隐藏的根密钥的可重复的应用特定的加密密钥获得 - Google Patents
使用隐藏的根密钥的可重复的应用特定的加密密钥获得 Download PDFInfo
- Publication number
- CN104081712A CN104081712A CN201280069416.8A CN201280069416A CN104081712A CN 104081712 A CN104081712 A CN 104081712A CN 201280069416 A CN201280069416 A CN 201280069416A CN 104081712 A CN104081712 A CN 104081712A
- Authority
- CN
- China
- Prior art keywords
- key
- processor
- cryptographic
- value
- application
- 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
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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- 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/12—Details relating to cryptographic hardware or logic circuitry
-
- 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/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
公开了用于可重复的应用特定的加密密钥获得的本发明的实施例。在一个实施例中,一种处理器包括:根密钥、加密引擎和执行硬件。加密引擎用于使用根密钥来执行加密操作,其中根密钥仅可以由加密引擎来访问。执行硬件用于执行指令以使用加密算法来确定性地生成应用特定的加密密钥。
Description
背景技术
1.领域
本公开涉及信息处理领域,以及更具体地涉及加密信息领域。
2.相关技术描述
在信息处理系统中,可以通过对秘密信息进行加密来防止该秘密信息被发现。私有密钥加密算法,诸如在来自国家标准与技术研究院的联邦信息处理标准197中定义的高级加密标准(“AES”),使用私有密钥将未加密的信息(“纯文本”)转换成加密信息(“密码文本”),除非随后通过使用私有密钥逆向转换来解密,否则该加密信息一般无含义。
附图说明
在附图中通过示例而非限制来说明本发明。
图1说明了根据本发明的实施例的支持可重复的应用特定的加密密钥获得的处理器。
图2说明了根据本发明的实施例的用于可重复的应用特定的加密密钥获得的方法。
具体实施方式
描述了用于使用隐藏的根密钥的可重复的应用特定的加密密钥获得的本发明的实施例。在本说明书中,阐述了许多特定的细节,诸如组件和系统配置,以便提供本发明的更彻底的理解。然而,本领域的技术人员将了解的是,在没有此类特定细节的情况下,可以实践本发明。另外,没有详细地示出一些众所周知的结构、电路和其它特征,以避免不必要地使本发明难于理解。
如在背景部分中描述的,加密可以用于保护秘密信息。一种类型的秘密信息可以是应用特定的加密密钥。本发明的实施例提供用于使用隐藏的根密钥的可重复的获得应用特定的加密密钥。这些实施例提供用于可重复的获得,以便应用特定的加密密钥不必与用于加密的数据一起存储。这些实施例还提供用于在不包括保护隐藏的根密钥的情况下来执行该获得。
图1说明了根据本发明的实施例的在系统180中的处理器100。处理器100可以是任何类型的处理器,包含通用微处理器,诸如Intel® Core®处理器家族、Intel® Atom®处理器家族中的处理器,或来自Intel®公司的其它处理器家族中的处理器,或来自另一公司的另一处理器,或专用处理器或微控制器。处理器100可以包含任何组合的多线程和多执行核心。处理器100包含:根密钥110、加密引擎120、指令硬件130、执行硬件140和控制逻辑150。处理器100还可以包含未在图1中示出的任何其它的电路、结构或逻辑。
根密钥110可以是任何硬件加密密钥。在一个实施例中,根密钥110是存储在熔丝式实现的只读存储器中的256比特的密钥。该只读存储器不可以由在处理器100上运行的软件来访问。只有加密引擎120可以访问根密钥110。
加密引擎120可以包含任何电路或其它结构以执行一个或多个加密算法。在一个实施例中,加密引擎120包含电路以执行AES加密、安全散列算法(“SHA”)和/或基于散列的消息认证码(“HMAC”)生成。
指令硬件130可以表示任何电路、结构或其它硬件,诸如指令解码器,以用于取回、接收、解码和/或调度指令。在本发明的范围内,可以使用任何指令格式;例如,指令可以包含操作码和一个或多个操作数,其中操作码可以被解码成用于由执行硬件140执行的一个或多个微指令或微操作。
在一个实施例,指令硬件130可以被设计为接收一个或多个指令以安全或隔离的执行模式来支持处理器100的操作,其中对特定系统资源的访问可以由诸如测量的虚拟机监视器的可信软件来控制。在这个实施例中,对加密引擎120的访问可以限制于在安全或隔离的执行模式内进行操作的软件。在其它实施例中,可以使用任何其它方法以隐藏或保护根密钥110。在一个实施例中,根密钥110仅可以由AES 打包(wrap)操作(AES 打包操作完全地由加密引擎120来执行)来访问,以及不会由任何其它硬件或软件可观察到。
执行硬件140可以包含任何电路、结构或其它硬件,诸如算术单元、逻辑单元、浮点单元、移位器等,以用于处理数据和执行指令、微指令和/或微操作。
控制逻辑150可以包含任何电路、逻辑或其它结构,包含微代码、状态机逻辑和可编程逻辑,以控制:处理器100的单元和其它元件的操作以及在处理器100内的数据传递、将数据传递到处理器100中和从处理器100传递数据。控制逻辑150可以使得处理器100执行或参与执行本发明的方法实施例,诸如以下描述的方法实施例,例如通过使得处理器100使用执行硬件140、加密引擎120和/或任何其它资源以执行由指令硬件130接收的执行指令和由指令硬件130接收的指令获得的微指令或微操作。
系统180还可以包含:系统存储器190、网络接口控制器(“NIC”)182以及通过任何数量的总线、点到点、或其它有线或无线连接相互连接、耦合或以其它方式相同通信的任何其它组件任何其它组件或其它元件。系统存储器190可以包含动态随机存取存储器和/或由处理器100可以访问的任何其它类型的介质,以及可以用于存储由处理器100和/或任何其它组件使用或生成的数据和/或指令。例如,如以下描述的,系统存储器190被示出为存储应用程序192,包含应用指令194、应用数据196和应用特定的字符串198。NIC 182可以是用于使得能够在系统190和另一个信息处理系统之间进行通信的任何类型的控制器。
图2说明了根据本发明的实施例的用于可重复的应用特定的加密密钥获得的方法200。尽管本发明的方法实施例不限制于这个方面,但是可以参照图1的元件以帮助描述图2的方法实施例。
在方法200的框210中,唯一的数据字符串(诸如应用特定的字符串196)被分配给运行在处理器100上的应用。可以向运行在处理器100上的每个应用(对于该应用而言,需要或期望应用特定的加密密钥)分配根据任何方法生成的它自己的唯一的数据字符串。在框214,在应用特定的字符串196和盐(salt)上执行串联操作。在一个实施例中,盐可以是平台特定的字符串,诸如NIC 182的MAC。
在框220,在来自框214的串联操作的结果上执行SHA。在一个实施例中,SHA-256算法用于向框224提供256比特的输入。在框224,由加密引擎130在来自框220的SHA输出上执行AES 打包。AES 打包函数使用根密钥210执行AES操作。
在框230,在来自框224的AES 打包的输出上执行SHA。在一个实施例中,HMAC-SHA-256算法用于提供256比特的应用特定的密钥。任何的HMAC密钥可以用于这个操作。
框230的SHA操作的输出是密钥,对应用192而言该密钥是唯一的。因为框214、220、224和框230的操作是确定性的,因此应用可以使用方法200反复地生成同样的应用特定的密钥。因此,不需要存储应用特定的密钥。
在框240,应用特定的密钥可以用于对数据进行加密。在框244,例如可以在应用数据区域196中存储加密的数据。
在本发明的范围内,可以以不同的顺序、省略说明的框、增加附加的框或利用重新排序的、省略的或增加的框的组合来执行方法200。
如上所述,本发明的实施例的或实施例的部分可以被存储在任何形式的机器可读介质中。例如,方法200的全部或一部分可以被具体化在软件或固件指令中,该软件或固件指令被存储在处理器100可以读取的介质上,当由处理器100执行软件或固件指令时,软件或固件指令使得处理器100执行本发明的实施例。
因此,已经描述了用于可重复的应用特定的加密密钥获得的本发明的实施例。尽管已经描述了以及在附图中示出了某些实施例,但是将理解的是,此类实施例仅是说明了而不是限制了本广阔的发明,以及本发明不限制于示出和描述的特定构造和布置,因为在学习了本公开后,本领域的普通技术人员可以想到各种其它修改。在诸如本公开的技术领域中,发展是快速的以及进一步的进步不容易预测,在不背离本公开的原理或所附权利要求书的范围的情况下,如由通过启用技术进步所促进的,可以容易地在布置和细节中对本公开的实施例进行修改。
Claims (20)
1. 一种处理器,包括:
根密钥;
加密引擎,其使用所述根密钥来执行加密算法,其中所述根密钥仅可以由所述加密引擎来访问;以及
执行硬件,其执行指令以使用所述加密算法来确定性地生成应用特定的加密密钥。
2. 根据权利要求1所述的处理器,其中所述根密钥被存储在只读熔丝式存储器中。
3. 根据权利要求1所述的处理器,其中所述加密算法是高级加密标准(AES)算法。
4. 一种方法,包括:
从应用唯一的字符串获得第一值;以及
由硬件加密引擎使用根密钥来执行加密操作以向应用提供唯一的密钥,所述根密钥仅可以由所述硬件加密引擎来访问。
5. 根据权利要求4所述的方法,其中所述加密操作是高级加密标准(AES)操作。
6. 根据权利要求4所述的方法,还包括在获得所述第一值之前向所述应用分配所述应用唯一的字符串。
7. 根据权利要求4所述的方法,其中获得所述第一值包含使用平台特定的字符串作为盐。
8. 根据权利要求7所述的方法,其中获得所述第一值包含串联操作。
9. 根据权利要求8所述的方法,其中获得所述第一值包含在所述串联操作的结果上执行安全散列算法。
10. 根据权利要求4所述的方法,其中执行所述加密操作以提供所述唯一的密钥包含在所述加密操作的结果上执行安全散列算法。
11. 根据权利要求10所述的方法,其中在所述加密操作的所述结果上执行所述安全散列算法包含使用基于散列的消息认证码。
12. 根据权利要求4所述的方法,还包括由所述应用使用所述唯一的密钥来对数据进行加密以及在没有所述唯一的密钥的情况下存储所述数据。
13. 一种包含指令的机器可读介质,当执行所述指令时,所述指令使得处理器:
从应用唯一的字符串获得第一值;以及
由所述处理器中的硬件加密引擎使用根密钥来执行加密操作以向在所述处理器上运行的应用提供唯一的密钥,所述根密钥仅可以由所述硬件加密引擎来访问。
14. 根据权利要求13所述的机器可读介质,其中所述加密操作是高级加密标准(AES)操作。
15. 根据权利要求13所述的机器可读介质,还包含指令,所述指令使得所述处理器在获得所述第一值之前向所述应用分配所述应用唯一的字符串。
16. 根据权利要求13所述的机器可读介质,其中获得所述第一值包含使用平台特定的字符串作为盐。
17. 根据权利要求16所述的机器可读介质,其中获得所述第一值包含串联操作。
18. 根据权利要求17所述的机器可读介质,其中获得所述第一值包含在所述串联操作的结果上执行安全散列算法。
19. 根据权利要求13所述的机器可读介质,其中执行所述加密操作以提供所述唯一的密钥包含在所述加密操作的结果上执行安全散列算法。
20. 根据权利要求19所述的机器可读介质,其中在所述加密操作的所述结果上执行所述安全散列算法包含使用基于散列的消息认证码。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2012/024527 WO2013119238A1 (en) | 2012-02-09 | 2012-02-09 | Repeatable application-specific encryption key derivation using a hidden root key |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104081712A true CN104081712A (zh) | 2014-10-01 |
Family
ID=48947868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280069416.8A Pending CN104081712A (zh) | 2012-02-09 | 2012-02-09 | 使用隐藏的根密钥的可重复的应用特定的加密密钥获得 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20150030153A1 (zh) |
EP (1) | EP2813028A4 (zh) |
CN (1) | CN104081712A (zh) |
WO (1) | WO2013119238A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106301774A (zh) * | 2015-05-29 | 2017-01-04 | 联芯科技有限公司 | 安全芯片、其加密秘钥生成方法和加密方法 |
CN110932853A (zh) * | 2019-12-06 | 2020-03-27 | 深圳市纽创信安科技开发有限公司 | 一种基于可信模块的密钥管理装置和密钥管理方法 |
CN113821821A (zh) * | 2021-11-24 | 2021-12-21 | 飞腾信息技术有限公司 | 安全架构系统、安全架构系统的密码运算方法和计算设备 |
WO2023133862A1 (zh) * | 2022-01-14 | 2023-07-20 | 华为技术有限公司 | 数据处理方法及系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11582036B1 (en) * | 2019-10-18 | 2023-02-14 | Splunk Inc. | Scaled authentication of endpoint devices |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101681657A (zh) * | 2007-06-12 | 2010-03-24 | Nxp股份有限公司 | 安全存储器 |
US20110087898A1 (en) * | 2009-10-09 | 2011-04-14 | Lsi Corporation | Saving encryption keys in one-time programmable memory |
WO2011130211A1 (en) * | 2010-04-12 | 2011-10-20 | Interdigital Patent Holdings, Inc. | Staged control release in boot process |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU1425197A (en) * | 1995-12-29 | 1997-07-28 | Mci Communications Corporation | Multiple cryptographic key distribution |
US7672459B2 (en) * | 2005-02-18 | 2010-03-02 | Cisco Technology, Inc. | Key distribution and caching mechanism to facilitate client handoffs in wireless network systems |
CN100571125C (zh) * | 2005-12-30 | 2009-12-16 | 上海贝尔阿尔卡特股份有限公司 | 一种用于用户设备与内部网络间安全通信的方法及装置 |
WO2009155205A1 (en) * | 2008-06-19 | 2009-12-23 | Realnetworks, Inc. | Systems and methods for content playback and recording |
WO2011089143A1 (en) * | 2010-01-20 | 2011-07-28 | Intrinsic Id B.V. | Device and method for obtaining a cryptographic key |
US8971535B2 (en) * | 2010-05-27 | 2015-03-03 | Bladelogic, Inc. | Multi-level key management |
-
2012
- 2012-02-09 EP EP12868220.0A patent/EP2813028A4/en not_active Withdrawn
- 2012-02-09 US US13/995,296 patent/US20150030153A1/en not_active Abandoned
- 2012-02-09 CN CN201280069416.8A patent/CN104081712A/zh active Pending
- 2012-02-09 WO PCT/US2012/024527 patent/WO2013119238A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101681657A (zh) * | 2007-06-12 | 2010-03-24 | Nxp股份有限公司 | 安全存储器 |
US20110087898A1 (en) * | 2009-10-09 | 2011-04-14 | Lsi Corporation | Saving encryption keys in one-time programmable memory |
WO2011130211A1 (en) * | 2010-04-12 | 2011-10-20 | Interdigital Patent Holdings, Inc. | Staged control release in boot process |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106301774A (zh) * | 2015-05-29 | 2017-01-04 | 联芯科技有限公司 | 安全芯片、其加密秘钥生成方法和加密方法 |
CN106301774B (zh) * | 2015-05-29 | 2019-08-06 | 辰芯科技有限公司 | 安全芯片、其加密密钥生成方法和加密方法 |
CN110932853A (zh) * | 2019-12-06 | 2020-03-27 | 深圳市纽创信安科技开发有限公司 | 一种基于可信模块的密钥管理装置和密钥管理方法 |
CN110932853B (zh) * | 2019-12-06 | 2022-12-06 | 深圳市纽创信安科技开发有限公司 | 一种基于可信模块的密钥管理装置和密钥管理方法 |
CN113821821A (zh) * | 2021-11-24 | 2021-12-21 | 飞腾信息技术有限公司 | 安全架构系统、安全架构系统的密码运算方法和计算设备 |
CN113821821B (zh) * | 2021-11-24 | 2022-02-15 | 飞腾信息技术有限公司 | 安全架构系统、安全架构系统的密码运算方法和计算设备 |
WO2023133862A1 (zh) * | 2022-01-14 | 2023-07-20 | 华为技术有限公司 | 数据处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP2813028A4 (en) | 2015-10-07 |
WO2013119238A1 (en) | 2013-08-15 |
US20150030153A1 (en) | 2015-01-29 |
EP2813028A1 (en) | 2014-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11615411B2 (en) | POS system with white box encryption key sharing | |
CN109583189A (zh) | 固件安全加载方法、装置、计算机设备及存储介质 | |
US9143317B2 (en) | Protecting against white box attacks using column rotation | |
CN103345609B (zh) | 一种文本加解密方法和加解密设备 | |
CN105450620A (zh) | 一种信息处理方法及装置 | |
US9405919B2 (en) | Dynamic encryption keys for use with XTS encryption systems employing reduced-round ciphers | |
US20150324302A1 (en) | White box encryption system and method | |
CN103701829A (zh) | 一种离线解析dpapi加密数据的方法 | |
CN105357218A (zh) | 一种具备硬件加解密功能的路由器及其加解密方法 | |
CN104081712A (zh) | 使用隐藏的根密钥的可重复的应用特定的加密密钥获得 | |
CN102567688A (zh) | 一种安卓操作系统上的文件保密系统及其保密方法 | |
CN104866784A (zh) | 一种基于bios加密的安全硬盘、数据加密及解密方法 | |
CN103914662A (zh) | 一种基于分区的文件加密系统的访问控制方法和装置 | |
KR101966088B1 (ko) | Iot 응용에 최적화된 인증 암호 장치 및 방법 | |
CN102332077A (zh) | 手持设备数据加解密方法及其手持设备外设 | |
US8774402B2 (en) | Encryption/decryption apparatus and method using AES rijndael algorithm | |
CN103336920A (zh) | 用于无线传感网络soc芯片的安全系统 | |
CN104392153A (zh) | 一种软件保护方法及系统 | |
CN103605927A (zh) | 一种基于嵌入式Linux系统实现加密和解密方法 | |
CN106161000A (zh) | 对数据文件进行加密和解密的方法和系统 | |
CN103491384A (zh) | 一种视频的加密方法和装置及解密方法和装置 | |
US11595201B2 (en) | System and method for generation of a disposable software module for cryptographic material protection | |
CN104462993B (zh) | 加密方法、解密方法、加密装置和解密装置 | |
JP6001422B2 (ja) | 暗号化ライブラリ生成装置及びプログラム | |
KR20230092747A (ko) | 전자 장치 및 암호화 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141001 |
|
RJ01 | Rejection of invention patent application after publication |