CN102150391A - 用于提供对系统存储器的安全访问的系统和方法 - Google Patents
用于提供对系统存储器的安全访问的系统和方法 Download PDFInfo
- Publication number
- CN102150391A CN102150391A CN2008801291007A CN200880129100A CN102150391A CN 102150391 A CN102150391 A CN 102150391A CN 2008801291007 A CN2008801291007 A CN 2008801291007A CN 200880129100 A CN200880129100 A CN 200880129100A CN 102150391 A CN102150391 A CN 102150391A
- Authority
- CN
- China
- Prior art keywords
- data
- encryption key
- random encryption
- memory controller
- computer system
- 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
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
Abstract
提供了一种提供对存储于计算机系统的系统存储器中的数据的安全访问的方法,该计算机系统包括用于向系统存储器写入数据和从系统存储器读取数据的存储器控制器。该方法包括每当引导计算机系统时生成随机加密密钥并且在存储器控制器的易失性存储器区中存储随机加密密钥。该方法还包括使用随机加密密钥对数据进行加密以创建加密数据并且在系统存储器中存储加密数据。也提供一种用于执行该方法的存储器子系统和计算机系统。
Description
背景技术
在典型的计算机系统中,其中使用系统存储器作为安全密钥和证书的暂时储存器。近年来,黑客已经开始尝试通过从用户的计算机物理地移除存储器模块、可能地冻结存储器模块以延迟其中所含数据的毁坏来获得对安全数据的非法访问。黑客随后将窃取的存储器模块安装到另一计算机中以读取它们的内容。以这样的方式,黑客可以能够取回存储器模块中存储的安全密钥和证书并且使用窃取的信息以获得对用户的敏感数据的未授权访问。
附图说明
在下文详细描述中参照附图描述某些示例实施例,在附图中:
图1是根据本发明一个示例实施例的计算机系统的框图;
图2是根据本发明一个示例实施例的图1中所示计算机系统的存储器子系统的框图;并且
图3是示出根据本发明一个示例实施例的操作受保护的系统存储器的方法的流程图。
具体实施方式
图1是根据本发明一个示例实施例的计算机系统的框图。计算机系统大体上由标号100表示。本领域普通技术人员将理解计算机系统100可以包括硬件单元(包括电路)、软件单元(包括存储于机器可读介质上的计算机代码)或者硬件和软件单元的组合。此外,图1中所示功能块仅是可以在本发明的一个示例实施例中实施的功能块的一个例子。本领域普通技术人员将容易能够基于针对特定计算机系统的设计考虑来限定具体功能块。
处理器102(如中央处理单元或者CPU)适合于控制计算机系统100的整体操作。处理器102连接到适合于从系统存储器106读取数据和向系统存储器106写入数据的存储器控制器104。存储器控制器104可以包括如下存储器,该存储器包括非易失性存储器区和易失性存储器区。如下文详细阐述的那样,本发明的一个示例实施例适合于通过提供在存储器控制器104与系统存储器106之间的安全通信来防止数据窃取。
系统存储器106可以包括多个存储器模块,如本领域普通技术人员将理解的。此外,系统存储器106可以包括非易失性和易失性部分。系统基本输入-输出系统(BIOS)可以存储于系统存储器106的非易失性部分中。系统BIOS适合于控制启动或者引导过程并且控制计算机系统100的低级操作。
处理器102连接到至少一个系统总线108以允许在处理器102与其它系统设备之间的通信。系统总线可以在诸如外围部件互连(PCI)总线的变型等标准协议下操作。在图1中所示示例实施例中,系统总线108将处理器102连接到硬盘驱动器110、图形控制器112和至少一个输入设备114。硬盘驱动器110为计算机系统所用的数据提供非易失性存储。图形控制器112又连接到显示设备116,该显示设备基于由计算机系统100进行的活动来向用户提供图像。
图2是根据本发明一个示例实施例的图1中所示计算机系统的存储器子系统的框图。存储器子系统大体上由标号200表示。存储器子系统200包括存储器控制器104和系统存储器106。
当计算机系统100被引导或者以别的方式接收到系统复位时,存储器控制器106接收存储在易失性存储器区202中的随机加密密钥。在本发明的一个示例实施例中,易失性存储器区202包括经由系统复位来复位的只写/一次性写入寄存器。随机加密密钥可以由系统BIOS生成,该系统BIOS在计算机系统被引导时执行各种初始化功能。如下文详细说明的那样,随机加密密钥用来加密向系统存储器106写入的数据。
在本发明的一个示例实施例中,后续随机加密密钥由存储器控制器104选择性地用来加密数据。后续随机加密密钥可以例如由存储器控制器104生成。可选地,后续随机加密密钥可以由计算机系统100的另一部件如系统BIOS提供。如果使用后续随机加密密钥,则系统存储器106的不同区域将用不同的随机加密密钥进行加密。多个随机加密密钥的使用使得黑客难以使用数字生成器来标识用来对系统存储器106的内容进行加密的所有随机加密密钥。
存储器控制器104的加密块204使用当前随机加密密钥对向系统存储器106写入的所有数据进行加密。在本发明的一个示例实施例中,简单加密算法如XOR算法可以由加密块204使用以最小化对存储器子系统200的吞吐量的影响。示例XOR算法包括使用向系统存储器写入的数据和随机加密密钥执行XOR操作。以下例子说明本发明的一个示例实施例如何针对存储于系统存储器中的数据提供增强的安全性。假设数据元A和B在已经使用随机加密密钥R进行XOR加密之后要写入到系统存储器。可以使用以下等式来描述这一过程:
其中C是A的加密版本且D是B的加密版本。加密数据C和D存储于系统存储器中,而不是A或者B本身被存储。利用一些数学操纵,获得以下结果:
因此,知识渊博的黑客可能能够操纵来自窃取的存储器模块的数据以重建A和B的某种聚集(conglomeration)。然而,在不能访问随机加密密钥R的情况下获得A和B本身仍然非常困难。本发明示例实施例的使用显著增加了对来自系统存储器的数据进行未授权恢复的难度。
本领域普通技术人员将理解除了对随机加密密钥与将向系统存储器写入的数据进行XOR之外的加密算法也可以用来对向系统存储器106写入的数据进行加密。另外,加密块204运用的具体加密算法并非本发明的基本特征。
当从系统存储器106读取加密数据时,它由存储器控制器104内的解密块208解密。解密块208使用曾由加密块204用来执行数据加密的随机加密密钥来执行解密。然后可以向处理器102提供解密数据。本发明的一个示例实施例通过向系统存储器106仅写入加密数据来提供增强的数据安全。
通过在存储器控制器104内的易失性存储器区中存储随机加密密钥,本发明的一个示例实施例减小了如下风险:黑客或者其他潜在数据窃取者将能够恢复加密密钥并且获得对用特定随机加密密钥加密并且随后存储于系统存储器106中的数据的访问。不能反工程设计或者“剥离”存储器控制器104以确定密钥,因为密钥的值在存储器控制器断电后不会存在于非易失性存储区202中。即使以某种方式(例如通过冻结构成系统存储器的存储器模块等)保存了系统存储器中存储的数据,这仍然将防止对已经使用特定随机加密密钥加密的数据的访问。
图3是示出了根据本发明一个示例实施例的操作受保护的系统存储器如系统存储器106(图1)的方法的流程图。该方法大体上由标号300表示。该过程始于块302。
在块304,每当引导计算机系统如计算机系统100(图1)时生成随机加密密钥。如在块306所示,在存储器控制器(如存储器控制器104(图1))的易失性存储器区中存储随机加密密钥。
如在块308所示,使用随机加密密钥对数据进行加密。如在块310所示,在系统存储器中存储加密数据。在块312,该过程结束。
本发明的一个示例实施例提供一种在存储器控制器与例如包括多个存储器模块的系统存储器之间的安全通信方法。这样的示例实施例保护系统存储器免受各种各样的黑客攻击。具体而言,本发明的一个示例实施例适合于保护系统存储器免受物理攻击和引导攻击。另外,可以使用标准存储器部件和模块。当引入新一代存储器技术时无需附加工作。本发明的一个示例实施例提供系统存储器安全而不明显影响系统性能并且不影响操作系统和软件应用性能。最后,可以在对总系统成本和复杂度的影响最小的情况下实施本发明的示例实施例。
Claims (20)
1.一种提供对存储于计算机系统的系统存储器中的数据的安全访问的方法,所述计算机系统包括用于向所述系统存储器写入数据和从所述系统存储器读取数据的存储器控制器,所述方法包括:
每当引导所述计算机系统时生成随机加密密钥;
在所述存储器控制器的易失性存储器区中存储所述随机加密密钥;
使用所述随机加密密钥对数据进行加密以创建加密数据;并且
在所述系统存储器中存储所述加密数据。
2.如权利要求1所述的方法,包括:
从所述系统存储器读取所述加密数据;并且
使用所述随机加密密钥对所述加密数据进行解密。
3.如权利要求1所述的方法,其中所述存储器控制器的所述易失性存储器区包括只写/一次性写入寄存器。
4.如权利要求1所述的方法,包括在执行系统复位时复位所述存储器控制器的所述易失性存储器区。
5.如权利要求1所述的方法,其中对所述数据进行加密包括使用所述数据和所述随机加密密钥来执行XOR运算。
6.如权利要求1所述的方法,其中每当引导所述计算机系统时由系统基本输入-输出系统(BIOS)生成所述随机加密密钥。
7.如权利要求1所述的方法,包括:
生成至少一个后续随机加密密钥;并且
使用所述至少一个后续随机加密密钥对数据进行加密。
8.一种计算机系统的存储器子系统,所述存储器子系统包括:
存储器控制器,其适合于:每当所述计算机系统被引导时接收随机加密密钥、在所述存储器控制器中的易失性存储器区中存储所述随机加密密钥、使用所述随机加密密钥对数据进行加密并且在系统存储器中存储加密数据。
9.如权利要求8所述的存储器子系统,其中所述存储器控制器适合于从所述系统存储器读取所述加密数据并且使用所述随机加密密钥对所述加密数据进行解密。
10.如权利要求8所述的存储器子系统,其中所述存储器控制器的所述易失性存储器区包括只写/一次性写入寄存器。
11.如权利要求8所述的存储器子系统,其中在执行系统复位时复位所述存储器控制器的所述易失性存储器区。
12.如权利要求8所述的存储器子系统,其中所述存储器控制器适合于通过使用所述数据和所述随机加密密钥执行XOR运算对所述数据进行加密。
13.如权利要求8所述的存储器子系统,包括:系统基本输入-输出系统(BIOS),其适合于每当所述计算机系统被引导时生成所述随机加密密钥。
14.如权利要求8所述的存储器子系统,其中所述存储器控制器适合于使用至少一个后续随机加密密钥对数据进行加密。
15.一种计算机系统,包括:
硬盘,其适合于存储供所述计算机系统使用的数据;
处理器,其适合于读取所述硬盘上存储的数据;
存储器控制器,其适合于:每当所述计算机系统被引导时接收随机加密密钥、在所述存储器控制器中的易失性存储器区中存储所述随机加密密钥、从所述处理器接收数据、使用所述随机加密密钥对所述数据进行加密并且在系统存储器中存储加密数据;以及
系统存储器,其适合于存储从所述存储器控制器接收的加密数据。
16.如权利要求15所述的计算机系统,其中所述存储器控制器适合于从所述系统存储器读取所述加密数据并且使用所述随机加密密钥对所述加密数据进行解密。
17.如权利要求15所述的计算机系统,其中所述存储器控制器的所述易失性存储器区包括只写/一次性写入寄存器。
18.如权利要求15所述的计算机系统,其中在执行系统复位时复位所述存储器控制器的所述易失性存储器区。
19.如权利要求15所述的计算机系统,其中所述存储器控制器适合于通过使用所述数据和所述随机加密密钥执行XOR运算对所述数据进行加密。
20.如权利要求15所述的计算机系统,包括:系统基本输入-输出系统(BIOS),其适合于每当所述计算机系统被引导时生成所述随机加密密钥。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2008/063280 WO2009136944A1 (en) | 2008-05-09 | 2008-05-09 | System and method for providing secure access to system memory |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102150391A true CN102150391A (zh) | 2011-08-10 |
Family
ID=41264845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008801291007A Pending CN102150391A (zh) | 2008-05-09 | 2008-05-09 | 用于提供对系统存储器的安全访问的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9251358B2 (zh) |
CN (1) | CN102150391A (zh) |
DE (1) | DE112008003855B4 (zh) |
GB (1) | GB2471630B8 (zh) |
TW (1) | TW200947202A (zh) |
WO (1) | WO2009136944A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104704504A (zh) * | 2012-09-26 | 2015-06-10 | 净睿存储股份有限公司 | 生成加密密钥的多驱动器协作 |
US10623386B1 (en) | 2012-09-26 | 2020-04-14 | Pure Storage, Inc. | Secret sharing data protection in a storage system |
US11032259B1 (en) | 2012-09-26 | 2021-06-08 | Pure Storage, Inc. | Data protection in a storage system |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9298894B2 (en) * | 2009-06-26 | 2016-03-29 | International Business Machines Corporation | Cache structure for a computer system providing support for secure objects |
US8954752B2 (en) | 2011-02-23 | 2015-02-10 | International Business Machines Corporation | Building and distributing secure object software |
US9846789B2 (en) | 2011-09-06 | 2017-12-19 | International Business Machines Corporation | Protecting application programs from malicious software or malware |
US9954875B2 (en) | 2009-06-26 | 2018-04-24 | International Business Machines Corporation | Protecting from unintentional malware download |
US8819446B2 (en) | 2009-06-26 | 2014-08-26 | International Business Machines Corporation | Support for secure objects in a computer system |
US8578175B2 (en) * | 2011-02-23 | 2013-11-05 | International Business Machines Corporation | Secure object having protected region, integrity tree, and unprotected region |
DE112010005842T8 (de) | 2010-10-05 | 2014-07-17 | Hewlett-Packard Development Company, L.P. | Verwürfeln einer Adresse und Verschlüsseln von Schreibdaten zum Speichern in einer Speichervorrichtung |
US9864853B2 (en) | 2011-02-23 | 2018-01-09 | International Business Machines Corporation | Enhanced security mechanism for authentication of users of a system |
KR101857791B1 (ko) | 2011-08-30 | 2018-05-16 | 삼성전자주식회사 | 컴퓨팅 시스템, 및 상기 컴퓨팅 시스템을 동작하기 위한 방법 |
US9856781B2 (en) | 2011-09-30 | 2018-01-02 | Eaton Corporation | Supercharger assembly with independent superchargers and motor/generator |
US9223965B2 (en) | 2013-12-10 | 2015-12-29 | International Business Machines Corporation | Secure generation and management of a virtual card on a mobile device |
US9235692B2 (en) | 2013-12-13 | 2016-01-12 | International Business Machines Corporation | Secure application debugging |
US9367690B2 (en) * | 2014-07-01 | 2016-06-14 | Moxa Inc. | Encryption and decryption methods applied on operating system |
US10992453B2 (en) * | 2016-05-18 | 2021-04-27 | International Business Machines Corporation | System architecture for encrypting external memory |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7069445B2 (en) * | 2001-11-30 | 2006-06-27 | Lenovo (Singapore) Pte. Ltd | System and method for migration of a version of a bootable program |
CN101006407A (zh) * | 2004-03-19 | 2007-07-25 | 诺基亚有限公司 | 安全模式控制的存储器 |
US7313705B2 (en) * | 2002-01-22 | 2007-12-25 | Texas Instrument Incorporated | Implementation of a secure computing environment by using a secure bootloader, shadow memory, and protected memory |
US20080077807A1 (en) * | 2004-10-23 | 2008-03-27 | Qinetiq Limited | Computer Hard Disk Security |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7330970B1 (en) * | 1999-07-13 | 2008-02-12 | Microsoft Corporation | Methods and systems for protecting information in paging operating systems |
US20070101158A1 (en) * | 2005-10-28 | 2007-05-03 | Elliott Robert C | Security region in a non-volatile memory |
-
2008
- 2008-05-09 GB GB201018909A patent/GB2471630B8/en not_active Expired - Fee Related
- 2008-05-09 DE DE112008003855T patent/DE112008003855B4/de not_active Expired - Fee Related
- 2008-05-09 US US12/991,861 patent/US9251358B2/en not_active Expired - Fee Related
- 2008-05-09 CN CN2008801291007A patent/CN102150391A/zh active Pending
- 2008-05-09 WO PCT/US2008/063280 patent/WO2009136944A1/en active Application Filing
-
2009
- 2009-04-15 TW TW098112475A patent/TW200947202A/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7069445B2 (en) * | 2001-11-30 | 2006-06-27 | Lenovo (Singapore) Pte. Ltd | System and method for migration of a version of a bootable program |
US7313705B2 (en) * | 2002-01-22 | 2007-12-25 | Texas Instrument Incorporated | Implementation of a secure computing environment by using a secure bootloader, shadow memory, and protected memory |
CN101006407A (zh) * | 2004-03-19 | 2007-07-25 | 诺基亚有限公司 | 安全模式控制的存储器 |
US20080077807A1 (en) * | 2004-10-23 | 2008-03-27 | Qinetiq Limited | Computer Hard Disk Security |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104704504A (zh) * | 2012-09-26 | 2015-06-10 | 净睿存储股份有限公司 | 生成加密密钥的多驱动器协作 |
US10284367B1 (en) | 2012-09-26 | 2019-05-07 | Pure Storage, Inc. | Encrypting data in a storage system using a plurality of encryption keys |
US10623386B1 (en) | 2012-09-26 | 2020-04-14 | Pure Storage, Inc. | Secret sharing data protection in a storage system |
CN104704504B (zh) * | 2012-09-26 | 2020-09-29 | 净睿存储股份有限公司 | 生成加密密钥的多驱动器协作 |
US11032259B1 (en) | 2012-09-26 | 2021-06-08 | Pure Storage, Inc. | Data protection in a storage system |
US11924183B2 (en) | 2012-09-26 | 2024-03-05 | Pure Storage, Inc. | Encrypting data in a non-volatile memory express (‘NVMe’) storage device |
Also Published As
Publication number | Publication date |
---|---|
US20110064217A1 (en) | 2011-03-17 |
GB2471630A (en) | 2011-01-05 |
GB201018909D0 (en) | 2010-12-22 |
GB2471630B8 (en) | 2013-10-23 |
TW200947202A (en) | 2009-11-16 |
WO2009136944A1 (en) | 2009-11-12 |
GB2471630A8 (en) | 2013-10-23 |
DE112008003855T5 (de) | 2011-04-07 |
GB2471630B (en) | 2012-12-26 |
DE112008003855B4 (de) | 2013-09-05 |
US9251358B2 (en) | 2016-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102150391A (zh) | 用于提供对系统存储器的安全访问的系统和方法 | |
US8839000B2 (en) | System and method for securely storing data in an electronic device | |
US10516533B2 (en) | Password triggered trusted encryption key deletion | |
Altuwaijri et al. | Android data storage security: A review | |
Sparks | A security assessment of trusted platform modules | |
US20070101158A1 (en) | Security region in a non-volatile memory | |
US20080072071A1 (en) | Hard disc streaming cryptographic operations with embedded authentication | |
US7818567B2 (en) | Method for protecting security accounts manager (SAM) files within windows operating systems | |
KR20130093565A (ko) | 보안-강화 컴퓨터 시스템 및 방법 | |
KR20140019599A (ko) | 데이터의 안전한 저장을 위한 키 관리 방법 및 그 장치 | |
CN102549594A (zh) | 临时秘密的安全存储 | |
RU2353969C2 (ru) | Способ и устройство для привязки памяти компьютера к системной плате | |
WO2005088461A1 (en) | Method and device for protecting data stored in a computing device | |
CN111177773A (zh) | 一种基于网卡rom的全盘加解密方法及系统 | |
JP4724107B2 (ja) | リムーバブル・デバイスを用いたユーザの認証方法およびコンピュータ | |
CN107563226B (zh) | 一种存储器控制器、处理器模块及密钥更新方法 | |
Choudary et al. | Infiltrate the vault: Security analysis and decryption of lion full disk encryption | |
Gelbart et al. | CODESSEAL: Compiler/FPGA approach to secure applications | |
JP4767129B2 (ja) | Os切替装置及びos切替方法 | |
US11115210B2 (en) | Systems and methods for masking RSA operations | |
Loftus et al. | Android 7 file based encryption and the attacks against it | |
Dorrendorf | Protecting drive encryption systems against memory attacks | |
US20080285748A1 (en) | Method for generating secret key in computer device and obtaining the encrypting and decrypting key | |
CN103870769A (zh) | 一种对磁盘进行保护的方法及系统 | |
Kim et al. | hTPM: Hybrid implementation of trusted platform module |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110810 |