JP2008123513A - 仮想化されたレジスタを有するトラステッド・デバイス - Google Patents
仮想化されたレジスタを有するトラステッド・デバイス Download PDFInfo
- Publication number
- JP2008123513A JP2008123513A JP2007279797A JP2007279797A JP2008123513A JP 2008123513 A JP2008123513 A JP 2008123513A JP 2007279797 A JP2007279797 A JP 2007279797A JP 2007279797 A JP2007279797 A JP 2007279797A JP 2008123513 A JP2008123513 A JP 2008123513A
- Authority
- JP
- Japan
- Prior art keywords
- register
- value
- request
- trusted device
- buffer
- 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.)
- Granted
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/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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【解決手段】トラステッド・デバイスは1つのバッファを含み、そのバッファに対するレジスタが、秘密デバイス鍵DPKを使用してそのレジスタの値を暗号化することによって、外部記憶装置に及び外部記憶装置から仮想化される。レジスタは、プラットフォーム制御レジスタ(PCR)またはそのトラステッド・デバイスにおける別の記憶装置であってもよい。それはトラステッド・プラットフォーム・モジュール(TPM)であってもよい。レジスタはレジスタ番号に従ってアクセスされる。外部に格納された値が検索されるとき、それらは暗号化解除され、バッファに置かれる。
【選択図】図2
Description
Claims (20)
- 安全保護された処理システムにおけるトラステッド・デバイス集積回路内の記憶装置を仮想化する方法であって、
レジスタ番号に関連した第1の値を求める要求を受取るステップと、
前記レジスタ番号を使用して前記トラステッド・デバイス集積回路の外部にある記憶装置から前記第1の値の暗号化バージョンを検索するステップと、
前記第1の値を得るために秘密デバイス鍵を使って前記第1の値の検索された暗号化バージョンを暗号化解除するステップであって、該暗号化解除することによって、前記第1の値が前記トラステッド・デバイス集積回路におけるバッファに格納される、前記暗号化解除するステップと、
前記バッファから前記第1の値を供給することによって前記要求に応答するステップと、
を含む、方法。 - 前記バッファに格納された第2の値を暗号化するステップと、
前記トラステッド・デバイス集積回路の外部にある前記暗号化の結果を、前記レジスタ番号に従ってアクセスし得る前記記憶装置に格納するステップであって、該格納することによって、その後、前記暗号化の結果を前記レジスタ番号に従って検索し得るようにする、前記格納するステップと、
を更に含む、請求項1に記載の方法。 - 前記受取るステップ、前記検索するステップ、前記応答するステップ、および前記格納するステップは、前記安全保護された処理システムにおいて実行されるデバイス・ドライバによって遂行され、前記暗号化解除するステップおよび前記暗号化するステップは、前記トラステッド・デバイスへの前記デバイス・ドライバによる要求に応答して前記トラステッド・デバイスによって遂行される、請求項2に記載の方法。
- 前記レジスタ番号に従ってアクセスし得るシャドー・レジスタに前記暗号化の結果を格納するステップであって、該格納することによって、前記暗号化の格納された結果が、前記シャドー・レジスタに格納されていたシャドー値との比較によりその後のブート・プロセス中に検証され得る、ステップを更に含む、請求項2に記載の方法。
- 前記暗号化するステップおよび前記格納するステップは、前記受取るステップに応答して遂行され、該遂行されることによって、前記第2の値が前記外部にある記憶装置へフラッシュされて、前記第1の値の格納のために前記バッファを使用可能にする、請求項2に記載の方法。
- 前記バッファが複数の格納ロケーションを含み、
キャッシュ・アルゴリズムに従って前記格納ロケーションの1つを選択するステップを更に含み、
前記暗号化するステップおよび前記格納するステップは、前記選択するステップで選択された格納ロケーションにおいて遂行され、前記暗号化解除するステップは、前記第1の値の前記検索された暗号化バージョンを前記選択された格納ロケーションへ暗号化解除する、請求項5に記載の方法。 - 前記要求は、前記トラステッド・デバイス内の多数の物理的レジスタよりも少なくとも一桁大きい大きさの一連の仮想レジスタから前記レジスタ番号を指定する、請求項1に記載の方法。
- 前記バッファにおける各ロケーションは、前記値を格納するための値レジスタおよび前記レジスタ番号を格納するためのタグ・レジスタを含み、前記暗号化解除するステップは、前記第1の値の前記検索された暗号化バージョンを前記値レジスタへ暗号化解除し、
前記方法は前記レジスタ番号を前記タグ・レジスタに書込むステップを更に含む、請求項1に記載の方法。 - 前記受取るステップ、前記検索するステップ、および前記応答するステップは、前記安全保護された処理システム内で実行されるデバイス・ドライバによって遂行され、前期暗号化解除するステップは、前記トラステッド・デバイスへの前記デバイス・ドライバによる要求に応答して前記トラステッド・デバイスによって遂行される、請求項1に記載の方法。
- トラステッド・デバイス集積回路であって、
前記トラステッド・デバイス集積回路のレジスタの値を格納するためのバッファと、
前記レジスタの値を対称的に暗号化および暗号化解除するための暗号処理回路と、
レジスタ番号に従ってレジスタをアクセスする要求を受取るための制御ロジックと、
を含み、
前記制御ロジックは、前記要求に応答して、前記暗号処理回路および前記バッファに関連して外部にある記憶装置に格納された暗号化されたレジスタの値をアクセスするために、前記トラステッド・デバイス集積回路の前記外部記憶装置へのアクセスを生じさせ、従って、前記暗号化されたレジスタの値が前記バッファにおける暗号化されてないレジスタの値にマップされる、トラステッド・デバイス集積回路。 - 前記制御ロジックは、前記レジスタ番号に従って前記レジスタの値に関連した読取り要求を受取り、前記制御ロジックは、前記外部記憶装置から前記暗号化されたレジスタの値を検索し、前記暗号化されたレジスタの値を前記バッファにおけるロケーションへ暗号化プロセッサに暗号化解除させる、請求項10に記載のトラステッド・デバイス集積回路。
- 前記制御ロジックは、前記レジスタ番号に従って、供給された値を書込むための書込み要求を受取り、前記制御ロジックは、前記暗号化されたレジスタの値を提供するためにおよび前記暗号化されたレジスタの値を前記外部にある記憶装置に格納するために、前記供給された値を前記暗号処理回路に暗号化させる、請求項10に記載のトラステッド・デバイス集積回路。
- 前記バッファは複数の格納レジスタを含み、前記格納レジスタの各々はタグ値およびプラットフォーム制御レジスタにおける前記値の対応する1つを格納し、前記制御ロジックは、前記タグ値を使用して前記レジスタ番号に対応する特定のレジスタのロケーションを識別する、請求項10に記載のトラステッド・デバイス集積回路。
- 前記格納レジスタの各々は前記格納レジスタの各々へのアクセスの頻度の表示を更に格納する、請求項13に記載のトラステッド・デバイス集積回路。
- 前記制御ロジックは、読取り要求に応答して、前記バッファに自由ロケーションが存在するかどうかを決定し、自由ロケーションが存在しない場合、前記制御ロジックは前記バッファに格納された前記値の1つを前記外部にある記憶装置へ書込ませる、請求項10に記載のトラステッド・デバイス集積回路。
- 前記制御ロジックは、更に、前記レジスタに応答して行われる前記レジスタの修正に基づいて修正される仮想シャドー・レジスタのセットを前記外部にある記憶装置に維持する、請求項10に記載のトラステッド・デバイス集積回路。
- コンピュータ・システム内のプロセッサによる実行のための符号化されたプログラム命令を含み、前記プログラム命令が前記コンピュータ・システム内のトラステッド・デバイスに対するソフトウェア・インターフェースを提供するためのデバイス・ドライバのプログラム命令を含む、コンピュータ・プログラムであって、
前記トラステッド・デバイスの外部にある記憶装置への、仮想化された前記トラステッド装置のレジスタに関連した要求を、前記レジスタの値の暗号化バージョンで受取るためのプログラム命令と、
前記要求を満たすために前記値の前記暗号化バージョンを暗号法的に処理するように前記トラステッド・デバイスに要求するためのプログラム命令と、
を含む、コンピュータ・プログラム。 - 前記要求が前記トラステッド・デバイスにおける物理的レジスタに対応するかどうかを決定するためのプログラム命令を更に含み、前記要求するためのプログラム命令は、前記要求が前記トラステッド・デバイスにおける前記物理的レジスタに対応しないという決定にのみ応答して遂行される、請求項17に記載のコンピュータ・プログラム。
- 前記要求がレジスタ読取り要求であるかどうかを決定するためのプログラム命令と、
前記要求がレジスタ読取り要求であるという決定に応答して、前記レジスタの前記値の前記暗号化バージョンを前記外部にある記憶装置から検索するためのプログラム命令と、
前記検索するためのプログラム命令の完了に応答して、前記トラステッド・デバイスが前記レジスタの前記値の前記検索された暗号化バージョンを暗号化解除することを要求するために前記要求するためのプログラム命令を遂行するためのプログラム命令と、
を更に含む、請求項17に記載のコンピュータ・プログラム。 - 前記要求がレジスタ書込み要求であるかどうかを決定するためのプログラム命令と、
前記要求がレジスタ書込み要求であるという決定に応答して、前記レジスタ書込み要求を供給された前記レジスタに対する値を前記トラステッド・デバイスが暗号化することを要求するために、前記要求するためのプログラム命令を遂行するためのプログラム命令と、
前記暗号化の完了に応答して、前記暗号化の結果を、前記レジスタの前記値の前記暗号化バージョンとして、前記外部にある記憶装置に格納するためのプログラム命令と、
を更に含む、請求項17に記載のコンピュータ・プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/558,024 US9171161B2 (en) | 2006-11-09 | 2006-11-09 | Trusted device having virtualized registers |
US11/558,024 | 2006-11-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008123513A true JP2008123513A (ja) | 2008-05-29 |
JP4876053B2 JP4876053B2 (ja) | 2012-02-15 |
Family
ID=39370568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007279797A Active JP4876053B2 (ja) | 2006-11-09 | 2007-10-29 | トラステッド・デバイス集積回路 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9171161B2 (ja) |
JP (1) | JP4876053B2 (ja) |
CN (1) | CN101178759B (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010113266A1 (ja) * | 2009-03-31 | 2010-10-07 | 富士通株式会社 | 情報処理装置,情報処理装置の起動制御方法及び起動プログラム |
JP2018537785A (ja) * | 2015-12-07 | 2018-12-20 | アマゾン・テクノロジーズ、インコーポレイテッド | チェーン接続セキュリティシステム |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7840801B2 (en) * | 2007-01-19 | 2010-11-23 | International Business Machines Corporation | Architecture for supporting attestation of a virtual machine in a single step |
US9020146B1 (en) * | 2007-09-18 | 2015-04-28 | Rockwell Collins, Inc. | Algorithm agile programmable cryptographic processor |
DE102007045743A1 (de) * | 2007-09-25 | 2009-04-02 | Siemens Ag | Verfahren und System zum Schutz gegen einen Zugriff auf einen Maschinencode eines Gerätes |
CN101488176B (zh) * | 2009-02-20 | 2010-06-02 | 北京交通大学 | 一种针对tpm可信计算的toctou攻击响应方法 |
US9015078B2 (en) * | 2010-03-28 | 2015-04-21 | Lenovo (Singapore) Pte. Ltd. | Audit trails for electronic financial transactions |
EP3467671B1 (en) * | 2011-04-12 | 2020-07-15 | Amadeus S.A.S. | Cache memory structure and method |
EP2710509A4 (en) | 2011-05-18 | 2015-02-25 | Nokia Corp | SECURE PRIMER WITH TRUSTED COMPUTER GROUP PLATFORM REGISTERS |
WO2014072579A1 (en) * | 2012-11-08 | 2014-05-15 | Nokia Corporation | Partially virtualizing pcr banks in mobile tpm |
CN104539622B (zh) * | 2014-12-31 | 2018-01-23 | 华为技术有限公司 | 虚拟机的深度证明方法、计算设备和计算机系统 |
CN106648544B (zh) * | 2015-11-02 | 2019-03-26 | 龙芯中科技术有限公司 | 寄存器的分配方法和装置 |
US10721067B2 (en) * | 2016-08-10 | 2020-07-21 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Secure processor for multi-tenant cloud workloads |
US10417433B2 (en) | 2017-01-24 | 2019-09-17 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Encryption and decryption of data owned by a guest operating system |
CN107943715B (zh) * | 2017-10-12 | 2021-10-01 | 记忆科技(深圳)有限公司 | 一种提升NVMe固态硬盘读缓存命中的方法 |
CN109997140B (zh) * | 2018-09-10 | 2023-03-24 | 深圳市汇顶科技股份有限公司 | 使用一次写入寄存器从设备的睡眠状态加速安全启动的低功耗嵌入式设备 |
CN113420299A (zh) * | 2021-04-15 | 2021-09-21 | 麒麟软件有限公司 | 一种基于国密算法sm3的计算机系统安全启动引导方法 |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2173225C (en) * | 1993-10-12 | 2006-07-18 | Stephen W. Olson | Virtual address translation hardware assist circuit and method |
US5619711A (en) * | 1994-06-29 | 1997-04-08 | Motorola, Inc. | Method and data processing system for arbitrary precision on numbers |
US5825878A (en) * | 1996-09-20 | 1998-10-20 | Vlsi Technology, Inc. | Secure memory management unit for microprocessor |
US6233599B1 (en) * | 1997-07-10 | 2001-05-15 | International Business Machines Corporation | Apparatus and method for retrofitting multi-threaded operations on a computer by partitioning and overlapping registers |
US6798884B1 (en) | 1998-09-16 | 2004-09-28 | Murata Kikai Kabushiki Kaisha | Encryption method, decryption method, encryption/decryption method, cryptographic communications system, and computer usable medium |
US6735310B1 (en) | 1999-09-17 | 2004-05-11 | International Business Machines Corporation | Technique of password encryption and decryption for user authentication in a federated content management system |
US6766435B1 (en) * | 2000-05-31 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | Processor with a general register set that includes address translation registers |
US6772288B1 (en) * | 2000-09-06 | 2004-08-03 | Stmicroelectronics, Inc. | Extended cache memory system and method for caching data including changing a state field value in an extent record |
TW546936B (en) | 2000-10-27 | 2003-08-11 | Synq Technology Inc | Data encrypting/decrypting system in client/server structure and the method thereof |
US8626821B2 (en) * | 2001-04-17 | 2014-01-07 | Hewlett-Packard Development Company, L.P. | Limiting access to information corresponding to a context |
GB2376764B (en) * | 2001-06-19 | 2004-12-29 | Hewlett Packard Co | Multiple trusted computing environments |
US6996725B2 (en) * | 2001-08-16 | 2006-02-07 | Dallas Semiconductor Corporation | Encryption-based security protection for processors |
US7191464B2 (en) * | 2001-10-16 | 2007-03-13 | Lenovo Pte. Ltd. | Method and system for tracking a secure boot in a trusted computing environment |
TW567702B (en) | 2002-04-22 | 2003-12-21 | Taiwan Semiconductor Mfg | System and method integrating e-mail encryption/decryption |
US7313797B2 (en) * | 2002-09-18 | 2007-12-25 | Wind River Systems, Inc. | Uniprocessor operating system design facilitating fast context switching |
US20040064457A1 (en) * | 2002-09-27 | 2004-04-01 | Zimmer Vincent J. | Mechanism for providing both a secure and attested boot |
US6907494B2 (en) * | 2002-10-10 | 2005-06-14 | International Business Machines Corporation | Method and system of managing virtualized physical memory in a memory controller and processor system |
DE10260606B4 (de) * | 2002-12-23 | 2006-03-30 | Infineon Technologies Ag | Vorrichtung zur Übersetzung mehrerer virtueller Adressen auf eine einzige physikalische Adresse |
TW595183B (en) | 2003-03-14 | 2004-06-21 | Acer Labs Inc | Crypto-system with an inverse key evaluation circuit |
US7346344B2 (en) * | 2003-05-30 | 2008-03-18 | Aol Llc, A Delaware Limited Liability Company | Identity-based wireless device configuration |
US7243208B2 (en) * | 2003-08-13 | 2007-07-10 | Renesas Technology Corp. | Data processor and IP module for data processor |
US7313679B2 (en) * | 2003-10-17 | 2007-12-25 | Intel Corporation | Extended trusted computing base |
US7636858B2 (en) * | 2003-12-11 | 2009-12-22 | Intel Corporation | Management of a trusted cryptographic processor |
US7552419B2 (en) * | 2004-03-18 | 2009-06-23 | Intel Corporation | Sharing trusted hardware across multiple operational environments |
US8271783B2 (en) * | 2004-04-19 | 2012-09-18 | Hewlett-Packard Development Company, L.P. | Subordinate trusted platform module |
US7380119B2 (en) * | 2004-04-29 | 2008-05-27 | International Business Machines Corporation | Method and system for virtualization of trusted platform modules |
US7484091B2 (en) * | 2004-04-29 | 2009-01-27 | International Business Machines Corporation | Method and system for providing a trusted platform module in a hypervisor environment |
US7480804B2 (en) * | 2004-04-29 | 2009-01-20 | International Business Machines Corporation | Method and system for hierarchical platform boot measurements in a trusted computing environment |
US7590867B2 (en) * | 2004-06-24 | 2009-09-15 | Intel Corporation | Method and apparatus for providing secure virtualization of a trusted platform module |
US7099477B2 (en) * | 2004-10-21 | 2006-08-29 | International Business Machines Corporation | Method and system for backup and restore of a context encryption key for a trusted device within a secured processing system |
US7143287B2 (en) * | 2004-10-21 | 2006-11-28 | International Business Machines Corporation | Method and system for verifying binding of an initial trusted device to a secured processing system |
US7836299B2 (en) * | 2005-03-15 | 2010-11-16 | Microsoft Corporation | Virtualization of software configuration registers of the TPM cryptographic processor |
US7587595B2 (en) * | 2005-05-13 | 2009-09-08 | Intel Corporation | Method and apparatus for providing software-based security coprocessors |
US20070079120A1 (en) * | 2005-10-03 | 2007-04-05 | Bade Steven A | Dynamic creation and hierarchical organization of trusted platform modules |
-
2006
- 2006-11-09 US US11/558,024 patent/US9171161B2/en not_active Expired - Fee Related
-
2007
- 2007-10-24 CN CN2007101674247A patent/CN101178759B/zh active Active
- 2007-10-29 JP JP2007279797A patent/JP4876053B2/ja active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010113266A1 (ja) * | 2009-03-31 | 2010-10-07 | 富士通株式会社 | 情報処理装置,情報処理装置の起動制御方法及び起動プログラム |
JP5287980B2 (ja) * | 2009-03-31 | 2013-09-11 | 富士通株式会社 | 情報処理装置,情報処理装置の起動制御方法及び起動プログラム |
US9037839B2 (en) | 2009-03-31 | 2015-05-19 | Fujitsu Limited | Secure startup of information processing apparatus including determining whether configuration information for hardware resources of the information processing apparatus have been modified |
JP2018537785A (ja) * | 2015-12-07 | 2018-12-20 | アマゾン・テクノロジーズ、インコーポレイテッド | チェーン接続セキュリティシステム |
Also Published As
Publication number | Publication date |
---|---|
US9171161B2 (en) | 2015-10-27 |
CN101178759B (zh) | 2010-04-21 |
US20080114989A1 (en) | 2008-05-15 |
CN101178759A (zh) | 2008-05-14 |
JP4876053B2 (ja) | 2012-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4876053B2 (ja) | トラステッド・デバイス集積回路 | |
US11520906B2 (en) | Cryptographic memory ownership table for secure public cloud | |
US10325118B2 (en) | Cryptographic cache lines for a trusted execution environment | |
US20200278937A1 (en) | Convolutional memory integrity | |
US9141558B2 (en) | Secure memory control parameters in table look aside buffer data fields and support memory array | |
US10684945B2 (en) | System, apparatus and method for providing key identifier information in a non-canonical address space | |
KR101880075B1 (ko) | 중복 제거 기반 데이터 보안 | |
CN112148642A (zh) | 针对核中的所有权访问的存储器写入 | |
US11775177B2 (en) | Integrity tree for memory integrity checking | |
US20190215160A1 (en) | Managing a set of cryptographic keys in an encrypted system | |
US11748490B2 (en) | Computer system with moving target defenses against vulnerability attacks | |
US20220121447A1 (en) | Hardening cpu predictors with cryptographic computing context information | |
US11216592B2 (en) | Dynamic cryptographic key expansion | |
US20240080193A1 (en) | Counter integrity tree |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110927 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111019 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111108 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111128 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141202 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4876053 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |