[go: up one dir, main page]

TW201805816A - 安全記憶體與智慧儲存裝置內執行資料擦除之方法 - Google Patents

安全記憶體與智慧儲存裝置內執行資料擦除之方法 Download PDF

Info

Publication number
TW201805816A
TW201805816A TW106118774A TW106118774A TW201805816A TW 201805816 A TW201805816 A TW 201805816A TW 106118774 A TW106118774 A TW 106118774A TW 106118774 A TW106118774 A TW 106118774A TW 201805816 A TW201805816 A TW 201805816A
Authority
TW
Taiwan
Prior art keywords
memory
password
data
logic
stored
Prior art date
Application number
TW106118774A
Other languages
English (en)
Other versions
TWI750184B (zh
Inventor
桑龐 保羅 歐拉利格
張牧天
Original Assignee
三星電子股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 三星電子股份有限公司 filed Critical 三星電子股份有限公司
Publication of TW201805816A publication Critical patent/TW201805816A/zh
Application granted granted Critical
Publication of TWI750184B publication Critical patent/TWI750184B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting 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
    • G06F21/79Protecting 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 in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0637Permissions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2143Clearing memory, e.g. to prevent the data from being stolen

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

揭露一種安全記憶體。所述記憶體可包括用於資料的資料儲存器、以及用於自所述資料儲存器讀取及寫入資料的資料讀取邏輯及資料寫入邏輯。密碼儲存器可所儲存密碼。接收器可自記憶體控制器接收所接收密碼。比較器可將所述所接收密碼與所述所儲存密碼進行比較。若所述所接收密碼不與所述所儲存密碼匹配,則抹除邏輯可抹除所述資料儲存器中的所述資料。最後,阻止邏輯可阻止自所述記憶體控制器存取所述記憶體,直至所述比較器完成自身的操作之後為止。

Description

安全記憶體與智慧儲存裝置內執行數據擦除之方法
本發明概念大體而言是有關於記憶體,且更具體而言是有關於可得到保全以防止對儲存於記憶體中的資料的未授權存取的記憶體。
非揮發性記憶體(non-volatile memory,NVM)的內容是持久性的。當用作長期儲存器裝置時,預期且期望存在以下行為:需要保存資料。
但在記憶體空間中使用非揮發性記憶體可能造成問題。經常出於安全原因,保持於記憶體空間中的諸多形式的資料傾向為暫態的。非揮發性記憶體打破了此假設且會在非揮發性記憶體被偷走或非揮發性記憶體的資源被重新指配時造成風險。舉例而言,當資料實際上儲存於非揮發性記憶體上時,基於雲端的網頁服務可在被所述服務假設為揮發性記憶體的元件上儲存客戶資料。若在未明確清除記憶體內容的同時終止網頁服務,則就像例如非揮發性記憶體被偷走、或非揮發性記憶體的資源被給予另一雲使用者一樣,此資料可能被另一使用者獲得。
仍需一種使記憶體得到保全以防止對記憶體模組、尤其是利用非揮發性記憶體的記憶體模組的未授權存取的方式。
現將詳細參照本發明概念的實施例,所述實施例的例子示於附圖中。在以下詳細說明中,提出諸多具體細節以使得能夠達成對本發明概念的透徹理解。然而,應理解,此項技術中具有通常知識者可在不使用該些具體細節的條件下實踐本發明概念。在其他實例中,未對眾所習知的方法、過程、組件、電路、及網路予以詳細闡述,以避免使所述實施例的各個態樣不必要地模糊。
應理解,儘管本文中可能使用用語「第一」、「第二」等來闡述各種元件,然而該些元件不應受該些用語限制。該些用語僅用於區分各個元件。舉例而言,在不背離本發明概念的範圍的條件下,可將第一模組稱為第二模組,且相似地,可將第二模組稱為第一模組。
本文中在對本發明概念的說明中使用的術語僅用於闡述具體實施例而非旨在限制本發明概念。除非上下文中清楚地另外指示,否則在對本發明概念及隨附申請專利範圍的說明中使用的單數形式「一(a、an)」及「所述(the)」旨在亦包含複數形式。亦應理解,本文所用用語「及/或(and/or)」指代且囊括相關所列項中一或多個項的任意及全部可能組合。更應理解,當在本說明書中使用用語「包括(comprises及/或comprising)」時,是指明所陳述特徵、整數、步驟、操作、元件、及/或組件的存在,但不排除一或多個其他特徵、整數、步驟、操作、元件、組件、及/或其群組的存在或添加。所述圖式的組件及特徵未必按比例繪製。
安全非揮發性記憶體(NVM)模組可用於記憶體空間中。非揮發性記憶體可配備有密碼及驗證邏輯(authentication logic):來自非揮發性記憶體的資料可僅當使用者具有匹配密鑰時被存取。
安全模組的控制流程可按照以下進行: 1)記憶體控制器在重設(例如加電(power-up)等由硬體引發的重設、或由軟體引發的重設)時讀取雙列直插記憶體模組(Dual In-Line Memory Module,DIMM)的串列存在偵測(Serial Presence Detect,SPD)SPD,以判斷所述雙列直插記憶體模組是否具有安全模式。
2)若雙列直插記憶體模組不具有安全模式,則系統正常運作。
3)否則,記憶體控制器藉由新定義的模式暫存器設定(Mode Register Set,MRS)命令將密碼發送至雙列直插記憶體模組。
4)若密碼被識別,則雙列直插記憶體模組被解鎖且所述雙列直插記憶體模組作為常規雙列直插記憶體模組而運作。雙列直插記憶體模組可將表示準許對記憶體控制器的存取的訊號發送至所述記憶體控制器。「驗證」訊號可經由DQ匯流排(DQ bus)來遞送。所述系統可接著正常運作。
5)若密碼未被識別,則雙列直插記憶體模組可要求記憶體控制器進行重試。重試訊號亦可經由DQ匯流排來發送。記憶體控制器可接著亦藉由模式暫存器設定命令來重新發送所述密鑰。
6)若重試次數超過臨限值,則雙列直插記憶體模組可停止允許記憶體控制器進行重試。相反,雙列直插記憶體模組可經由DQ匯流排而將「未授權」訊號發送至記憶體控制器。雙列直插記憶體模組可接著在準許記憶體控制器對所述雙列直插記憶體模組的存取之前抹除自身的內容。
圖1示出根據本發明概念實施例的具有使用安全記憶體的各種主機的資料中心。在圖1中,資料中心105可包括各種主機(其亦可被稱作伺服器),例如主機110、115、120、及125。資料中心105可支援可由任意使用者使用的客戶機(client machine),例如客戶機130。客戶機130的使用者可有效地自資料中心105「租賃(lease)」資源來達成任意所需服務。舉例而言,資料中心105可使得使用者能夠購買可遞送至他或她家中的產品;資料中心105可將記憶體「租賃」給使用者以在選擇使用者的購買項並完成支付的同時儲存使用者的購物車。儘管圖1示出包括四個主機110、115、120及125、以及一個客戶機130的資料中心105,本發明概念的實施例可支援任意數目的主機及/或客戶機。由於出於本發明的目的主機110、115、120、及125是可互換的,因此進一步提及主機110旨在亦包括提及主機115、120、及125。
圖1示出包括網路135的資料中心105。網路135可採取任意所需形式,包括區域網路(Local Area Network,LAN)、廣域網路(Wide Area Network,WAN)、例如網際網路等的全域網路、及有線網路或無線網路。另外,網路135可為該些網路中的任意者的組合,以容許資料中心105進行分散而非位於單一地理位置。
圖1亦示出主機110的細節,儘管相同的細節亦可在資料中心105內的主機110、115、120、及125中的任意者內找到。主機110被示出為包括處理器140、記憶體145、電子可抹除可程式化唯讀記憶體(Electronically Erasable Programmable Read Only Memory,EEPROM)150、及儲存裝置155。處理器140可為任一種處理器:例如,英特爾至強(Intel Xeon)、賽揚(Celeron)、安騰(Itanium)或淩動(Atom)處理器、或者AMD皓龍(Opteron)處理器、ARM處理器等。記憶體145可為任一種記憶體,例如動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)、持續隨機存取記憶體(Persistent Random Access Memory,PRAM)、靜態隨機存取記憶體(Static Random Access Memory,SRAM)、鐵電式隨機存取記憶體(Ferroelectric Random Access Memory,FRAM)、或例如磁阻式隨機存取記憶體(Magnetoresistive Random Access Memory,MRAM)等非揮發性隨機存取記憶體(Non-Volatile Random Access memory,NVRAM)。另外,記憶體145可為混合記憶體,包括單一記憶體模組中的揮發性記憶體裝置與非揮發性記憶體裝置的任意所需組合。但與傳統記憶體模組相比,記憶體145可為如下所述的安全記憶體模組。儲存裝置155在其他可能性中可為任一種儲存裝置,包括傳統硬碟驅動機或快閃記憶體。
電子可抹除可程式化唯讀記憶體150可儲存重要產品資料(Vital Product Data,VPD)160。儘管如下所述的記憶體145可自身指明記憶體145是否是安全記憶體,然而重要產品資料160可提供此資訊的替代來源。儘管圖1示出重要產品資料160被儲存於電子可抹除可程式化唯讀記憶體150中,然而本發明概念的實施例可使用任意替代性儲存媒體來進行支援。舉例而言,電子可抹除可程式化唯讀記憶體150可被例如可抹除可程式化唯讀記憶體(Erasable Programmable Read Only Memory,EPROM)或快閃記憶體等替代品取代。
圖2示出圖1所示主機110、115、120、及125的其他細節。參照圖2,通常,主機110、115、120、及125包括一或多個處理器140,所述一或多個處理器140可包括記憶體控制器205及時鐘210,記憶體控制器205及時鐘210可用於協調主機110、115、120、及125的各組件的運作。處理器140亦可耦合至記憶體145,記憶體145可包括例如隨機存取記憶體(random access memory,RAM)、唯讀記憶體(read-only memory,ROM)、或其他狀態保存媒體。處理器140亦可耦合至儲存裝置155且耦合至網路連接器215,網路連接器215可為例如乙太網路連接器(Ethernet connector)或無線連接器。處理器140亦可在其他組件間亦連接至匯流排220,可使用輸入/輸出引擎230來管理的使用者介面225及輸入/輸出介面埠可附接至匯流排220。
圖3示出圖1所示記憶體145的細節。在圖3中,記憶體145可包括暫存器時脈驅動器(register clock driver,RCD)305以及記憶體晶片310、315、320、325、330、335、340、及345。儘管圖3示出以八個晶片來儲存資料的典型動態隨機存取記憶體模組,然而本發明概念的實施例可包括其他類型的記憶體模組且包括任意所需數目的晶片或晶片替代品。
記憶體控制器205可與記憶體145介接。記憶體控制器205可發送命令以對記憶體晶片310-345直接讀取及寫入資料。記憶體控制器205亦可介接暫存器時脈驅動器305以使用命令/位址訊號及時脈訊號來與。
在記憶體145已執行重設操作之後,記憶體控制器205可判斷記憶體145是否正在以安全模式運作。所述重設操作可為由硬體引發的重設(例如,當圖1所示主機110最初加電時)、或由軟體引發的重設(例如,當記憶體控制器205通知記憶體145使用者對資源的租賃已結束時(以下所進一步闡述))。記憶體控制器205可藉由詢問串列存在偵測(SPD)350來判斷記憶體145是否正在以安全模式運作。作為另一選擇,如以上參照圖1所述,記憶體控制器205可自電子可抹除可程式化唯讀記憶體150存取圖1所示重要產品資料160,重要產品資料160可指示記憶體145是否正在以安全模式運作。
若記憶體145未正在以安全模式運作,則記憶體控制器205可按照傳統慣例來存取記憶體145。但若記憶體145正在以安全模式運作,則記憶體控制器205可嘗試驗證至記憶體145以得到存取權限。(應注意,在此上下文中,「驗證以得到存取權限」並非暗示可拒絕記憶體控制器205對記憶體145的存取,而是如下所述暗示記憶體控制器205可僅在記憶體145已抹除任意之前的資料之後得到對記憶體145存取的權限)。記憶體控制器205可藉由模式暫存器設定(MRS)命令將密碼發送至暫存器時脈驅動器305。暫存器時脈驅動器305可接著將所接收密碼與儲存於儲存器355中的密碼進行比較。若所接收密碼匹配所儲存密碼,則可準許記憶體控制器205對記憶體145的存取:此訊號可經由DQ匯流排來發送。否則,記憶體145可抹除儲存於記憶體晶片310-345中的任意資料,在此之後,可準許記憶體控制器205對記憶體145的存取。
為方便將來的存取,暫存器時脈驅動器305亦可將所接收密碼儲存於儲存器355中,進而使得記憶體控制器205能夠在將來使用所接收密碼來驗證至記憶體145。暫存器時脈驅動器305亦可將現有密碼覆蓋寫入儲存器355中,進而防止在將來接受較舊的所儲存密碼。抹除所儲存密碼亦可作為抹除儲存於記憶體145中的資料的一部分,進而再次防止在將來接受較舊的所儲存密碼。
記憶體控制器205可以任意所需方式產生密碼。示例性方式可為產生隨機密碼、自預定密碼清單選擇密碼、產生使用者ID的雜湊、或使用可信賴平台模組(Trusted Platform Module,TPM)來產生密碼。本發明概念的實施例亦可支援其他技術來產生密碼。
本發明概念的實施例相較於傳統系統而言具有若干優點。藉由提供用於保全記憶體145的機制,一個使用者可能讀取另一使用者的資料的危險顯著降低。但由於使用者的資料並非在儲存於記憶體中時被加密,因此無需包括加密邏輯來管理所加密資料。無需對資料進行加密亦會減少自記憶體145存取資料所需的時間,乃因無需為執行加密/解密而花費任何時間。
傳統系統的一個有用的類比可為將記憶體與銀行的保險箱系統相比。為自銀行中的保險箱存取東西,必須呈現此箱的鑰匙。若使用者此時需要對不同箱中的資料進行存取,則必須關閉第一箱並打開下一箱。此與對資料進行加密的傳統系統相似:要存取任意特定片段資料,則必須對此資料進行解密,此會減慢存取速度。
相比之下,可將記憶體145與房屋相比,且將用於存取記憶體145的密碼與門的鑰匙相比。在將門解鎖之前,房屋中的內容物是受保護的。一旦門被解鎖,則資料可被無延遲地自由存取:由於所述資料未被加密,因此不會引起進一步的延遲。
圖4示出圖1所示記憶體145的替代圖。與示出記憶體145的具體實施例的圖3相比,圖4示出記憶體145的更抽象表示形式。記憶體145可包括可儲存實際使用者資料的資料儲存器310-345、以及可自資料儲存器310-345讀取及寫入資料的資料讀取邏輯405及資料寫入邏輯410。
記憶體145亦可包括驗證邏輯415,驗證邏輯415可判斷是否將準許使用者對記憶體145進行存取。如上所述,「被準許的存取(granted access)」並非意指存在可能不容許使用者使用記憶體145的可能性,而是意指記憶體145可在準許使用者進行存取之前抹除資料儲存器310-345中的任意資料。驗證邏輯415可包括接收器420、阻止邏輯425、比較器430、及抹除邏輯435。接收器420可自圖3所示記憶體控制器205接收密碼。在驗證邏輯415判斷是否在準許圖3所示記憶體控制器205準許存取之前應對資料儲存器310-345進行抹除的同時,阻止邏輯425可阻止自圖3所示記憶體控制器205對記憶體145進行存取。比較器430可將自圖3所示記憶體控制器205接收的密碼與儲存於密碼儲存器355中的密碼進行比較以查看所述密碼是否匹配。若所述密碼不匹配,則抹除邏輯435可在準許圖3所示記憶體控制器205對記憶體145進行存取之前抹除資料儲存器310-345的內容。
抹除邏輯435可以對於記憶體145所採用的形式而言適宜的任意方式運作。舉例而言,若記憶體145僅使用揮發性記憶體,則抹除邏輯435可藉由以下來有效地對記憶體145進行抹除:防止資料儲存器310-345中的值再新直至儲存於資料儲存器310-345中的所有值皆丟失,即不再儲存儲存於資料儲存器310-345中任意值。(此將耗時多久可相依於資料儲存器310-345的具體類型及形式、以及例如與資料儲存器310-345的製造相關聯的偏心率(eccentricity)等其他因素。舉例而言,若記憶體145使用揮發性記憶體且處於冷環境中,則抹除邏輯435可能需要向記憶體145寫入值以抹除記憶體145,乃因記憶體145的內容可能無法在合理時間量內被破解)。在本發明概念的其他實施例中,抹除邏輯435可視需要使用例如0或1等常數值對儲存於資料儲存器310-345中的所有者進行覆蓋寫入。在本發明概念的再一實施例中,抹除邏輯435可執行所設計的寫入序列以抹除任意值。此種序列的例子可包括由美國國防部(Department of Defense,DoD)或其他政府機構及非政府組織設計的序列。舉例而言,此序列可包括寫入所有零、接著寫入所有一、再接著將隨機圖案寫入記憶體中。在本發明概念的可與快閃記憶體一起使用的再一實施例中,記憶體145中的所有資料區塊(或至少含有有效資料的區塊)可在可準許圖3所示記憶體控制器205對記憶體145進行存取之前立即經歷垃圾收集(garbage collection)。
驗證邏輯415亦可包括密碼寫入邏輯440。密碼寫入邏輯440可將密碼寫入至密碼儲存器355。舉例而言,若自圖3所示記憶體控制器205接收的密碼不與儲存於密碼儲存器355中的密碼匹配,則在抹除邏輯435抹除資料儲存器310-345的內容之後,密碼寫入邏輯440可將自圖3所示記憶體控制器205接收的密碼寫入至密碼儲存器355。以此種方式,圖3所示記憶體控制器205可隨後使用相同的密碼來驗證至記憶體145,任何其他記憶體控制器將不能夠進行驗證(不包括其他記憶體控制器設法生成相同的密碼的不可能事件),藉此保護使用者的資料免於未授權存取。
在圖3至圖4中,確定何時重設記憶體145取決於所述系統。亦即,記憶體145不知道任意特定使用者已租賃記憶體145達多久。因此,圖3所示記憶體控制器205(或圖1所示資料中心105的服務提供者)可藉由計時器來跟蹤使用者已對記憶體145進行存取達多久。一旦使用者的租賃已過期,則圖3所示記憶體控制器205(或圖1所示主機110的任意其他所需組件)可發出由軟體引發的重設指令至記憶體145(或更大體而言,發出至圖所示伺服器110),此可保護使用者的資料免於被另一使用者讀取。
在圖3至圖4中,密碼儲存器355被示出為與串列存在偵測350分離。但本發明概念的一些實施例可視需要將密碼儲存於串列存在偵測350的未使用部分或供應商專用區域中。此種方式可使得避免僅為密碼而引入新的儲存器。
圖5示出圖3至圖4所示記憶體145使用自圖3所示記憶體控制器205接收的密碼來判斷準許存取儲存於圖3至圖4所示記憶體145中的資料還是抹除儲存於圖3至圖4所示記憶體145中的資料。在圖4中,接收器420可自圖3所示記憶體控制器205接收密碼505。比較器430可接著將所接收密碼505與可自密碼儲存器355擷取的所儲存密碼510進行比較。若所接收密碼505與所儲存密碼510匹配,則比較結果515可指示可準許圖3所示記憶體控制器205立即對圖4所示記憶體145進行存取;否則,比較結果515可指示應阻止圖3所示記憶體控制器205直至圖3至圖4所示資料儲存器310-345中的資料已被圖4所示抹除邏輯435抹除之後為止。
圖5亦示出臨限值520的使用。在本發明概念的一些實施例中,比較器430可執行對所接收密碼505與所儲存密碼510的單一比較以判斷是否準許圖3所示記憶體控制器205對圖3至圖4所示記憶體145的存取。但本發明概念的其他實施例可允許圖3所示記憶體控制器205提供多個所接收密碼505。舉例而言,在比較器430確定所接收密碼505不與所儲存密碼510匹配之後,圖4所示驗證邏輯415可經由DQ匯流排將訊號發送至圖3所示記憶體控制器205,進而請求圖3所示記憶體控制器205重新發送所接收密碼505。容許重試可防止資料的非預期變化:例如,因在發送所接收密碼505時存在干擾而造成的變化。比較器430可接著測試所接收密碼505達與由臨限值520指明的次數一樣多的次數,在此之後,若尚未找到匹配,則比較結果515可指明在圖3至圖4所示記憶體145中自圖3至圖4所示資料儲存器310-345抹除資料。臨限值520可被設定成任意所需整數值;但由於圖3所示記憶體控制器205被臨時阻止對圖3至圖4所示記憶體145進行存取直至本發明概念的實施例已判斷是否抹除圖3至圖4所示資料儲存器310-345中的資料(且視需要執行此抹除)為止,因此將臨限值520保持為較低整數值可有利於減少阻止圖3至圖4所示記憶體控制器205的持續時間。
圖6示出根據本發明概念實施例的圖1所示可在兩個使用者之間共享資源的記憶體145的例子。在圖6中,記憶體145可包括兩個記憶體部分605及610,所述兩個部分中的每一者可被視作單獨的記憶體模組。舉例而言,記憶體145可為具有以太位元組(terabyte)或更大單位量測的容量的雙列直插記憶體模組。由於記憶體的此種量可大於單一使用者所需,因此將整個記憶體145指配給單一使用者將造成浪費。相反,可將記憶體145的一部分(例如,部分605)指配給使用者,使得部分610可用於其他用途(包括另一使用者)。
使用介面615使得兩個記憶體控制器205及620可與記憶體145介接。舉例而言,記憶體控制器205可與記憶體145的部分605介接,且記憶體控制器620可與記憶體145的部分610介接。藉由此種方式,儘管記憶體145可儲存兩個不同使用者的資料,然而每一使用者可僅存取自己的資料而不是另一使用者的資料。此機制會保護每一者的資料。
當一個使用者結束租賃記憶體145中為自己所用的一部分時,可啟動記憶體145的由軟體引發的重設。舉例而言,假定租賃部分605的使用者已結束自己的租賃。記憶體145可接著被重設。當記憶體145的由軟體引發的重設完成時,記憶體控制器602可向記憶體145呈現自身的密碼。記憶體控制器620可因此使自身重新驗證至記憶體145,以重新得到對儲存於部分610中的使用者的資料的存取的權限。儘管由軟體引發的重設及驗證過程確實可能延遲對部分610中的使用者的資料的存取,然而此延遲並不顯著,且將可能甚至不會被使用者注意到。
另一方面,記憶體控制器205可向記憶體145呈現新密碼。由於此密碼將(可能)不會被識別,因此記憶體控制器205將不可能驗證至記憶體145。因此,可在另一使用者可租賃605之前抹除部分605,進而保護其資料之前已被儲存於部分605中的使用者。
儘管圖6示出本發明概念實施例的被劃分成兩個部分605及610的記憶體145可支援記憶體145中的任意數目的部分。圖6中的使用兩個部分僅為例子。另外,根據記憶體145的實施例,記憶體145可對於記憶體145的每一部分包括一個暫存器時脈驅動器、對於記憶體145的所有部分包括一個暫存器時脈驅動器、或根本不包括暫存器時脈驅動器。
圖7A至圖7C示出根據本發明概念實施例的圖3所示記憶體控制器205請求對圖1所示記憶體145的存取的示例性過程的流程圖。在圖7A中,在方塊705處,圖3所示記憶體控制器205可確定圖1所示記憶體145已被重設(藉由由硬體引發的重設或由軟體引發的重設)。在方塊710處,記憶體控制器205可判斷圖1所示記憶體145是否正處於安全模式:例如,藉由自圖3所示串列存在偵測350讀取相關資料。在方塊715處,若圖1所示記憶體145未正在以安全模式運作,則圖3所示記憶體控制器205可接收對圖1所示記憶體145的存取。
另一方面,若圖1所示記憶體145正在以安全模式運作,則在方塊720處,圖3所示記憶體控制器205可選擇用於與圖1所示記憶體145一起使用的密碼。在方塊725處,因應於來自圖1所示記憶體145的請求,圖3所示記憶體控制器205可將所述密碼發送至圖1所示記憶體145。
在方塊730處(圖7B),圖3所示記憶體控制器205可判斷密碼是否已被接受。如上所述,圖1所示記憶體145可經由DQ匯流排來發送指示所述密碼是否已被接受且圖3所示記憶體控制器205是否已被授權的訊號。若所述密碼未被接受,則在方塊735處,圖3所示記憶體控制器205可接收要求重新發送密碼的請求,且控制可返回至圖7A所示方塊720。作為另一選擇,在方塊740處,圖3所示記憶體控制器205可僅在圖1所示記憶體145已抹除圖3至圖4所示資料儲存器310-345中的所有資料之後接收對圖1所示記憶體145的存取。方塊735與方塊740之間的不同代表記憶體145是否已執行臨限數目的密碼比較:由於圖3所示記憶體控制器205可能不知道臨限值,因此圖3所示記憶體控制器205可僅能夠因應於由圖1所示記憶體145所作出的其他密碼請求。
另一方面,若密碼被接受,則在方塊745處,圖3所示記憶體控制器205可接收對圖1所示記憶體145的存取,而不首先抹除圖3至圖4所示資料儲存器310-345中的資料。
在方塊750處(圖7C),圖3所示記憶體控制器205可量測自已準許圖3所示記憶體控制器205對圖1所示記憶體145進行存取時起已達多久。在方塊755處,圖3所示記憶體控制器205可判斷是否已經過臨限時間量—使用者租賃圖1所示記憶體145的時間量。若否,則圖3所示記憶體控制器205可稍等片刻再重新量測已經過多少時間。一旦租賃時間已過,則在方塊760處,圖3所示記憶體控制器205可指令圖1所示記憶體145執行由軟體引發的重設,處理在此之後結束。
圖8示出根據本發明概念實施例的圖3所示記憶體控制器205選擇密碼來請求對圖1所示記憶體145的存取的示例性過程的流程圖。在圖8中,在方塊805處,圖3所示記憶體控制器205可產生隨機密碼以用於驗證至圖1所示記憶體145。作為另一選擇,在方塊810處,圖3所示記憶體控制器205可自密碼清單選擇密碼以用於驗證至圖1所示記憶體145。作為另一選擇,在方塊815處,圖3所示記憶體控制器205可對使用者ID進行雜湊以產生密碼以用於驗證至圖1所示記憶體145。作為另一選擇,在方塊820處,圖3所示記憶體控制器205可自可信賴平台模組存取密碼以用於驗證至圖1所示記憶體145。
圖9A至圖9C示出根據本發明概念實施例的圖1所示記憶體145判斷準許圖3所示記憶體控制器205存取資料還是抹除資料的示例性過程的流程圖。在圖9A中,在方塊905處,圖1所示記憶體145可接收要求知道圖1所示記憶體145是否正在以安全模式運作的請求。在方塊910處,圖1所示記憶體145可將指示圖1所示記憶體145是否正在以安全模式運作的訊號發送至圖3所示記憶體控制器205。在方塊915處,圖1所示記憶體145可自圖3所示記憶體控制器205接收要求對圖1所示記憶體145進行存取的請求。
在方塊920處,圖1所示記憶體145可判斷自身是否正在以安全模式運作。若圖1所示記憶體145未正在以安全模式運作,則在方塊925處,圖1所示記憶體145可準許對圖3所示記憶體控制器205的存取。否則,在方塊930處,驗證邏輯415可自圖3所示密碼儲存器355存取圖5所示所儲存密碼510。
在方塊935處(圖9B),圖1所示記憶體145可自圖3所示記憶體控制器205請求圖5所示密碼505。在方塊940處,圖1所示記憶體145可自圖3所示記憶體控制器205接收圖5所示密碼505。在方塊945處,圖4所示比較器430可將圖5所示所接收密碼505與圖5所示所儲存密碼510進行比較。
在方塊950處,圖4所示驗證邏輯415可確定圖5所示指示圖5所示所接收密碼505與圖5所示所儲存密碼510的比較是否指示匹配的比較結果515。若是,則在方塊955處,圖1所示記憶體145可準許圖3所示記憶體控制器205對圖1所示記憶體145的存取。
在方塊960處(圖9C),假定圖5所示所接收密碼505不與圖5所示所儲存密碼510匹配,則圖4所示驗證邏輯415可判斷是否已發生密碼比較的臨限數目。若否,則控制返回至圖9B所示方塊935以使圖1所示記憶體145自圖3所示記憶體控制器205請求新密碼。否則,在方塊965處,圖4所示抹除邏輯435可自圖3至圖4所示資料儲存器310-345抹除資料。接著,在方塊970處,圖4所示密碼寫入邏輯440可將圖5所示所接收密碼505寫入至圖3所示密碼儲存器355中,在此之後,在方塊975處,圖1所示記憶體145可準許圖3所示記憶體控制器205對圖1所示記憶體145的存取。
在方塊980處,無論圖1所示記憶體145在抹除圖3至圖4所示資料儲存器310-345中的資料的條件下還是在不進行所述抹除的條件下準許圖3所示記憶體控制器205對圖1所示記憶體145的存取,在方塊980處,圖1所示記憶體145均可自圖3所示記憶體控制器205接收用於執行由軟體引發的重設的訊號,且在方塊985處,圖1所示記憶體145可執行由軟體引發的重設,處理在此之後結束。
圖10示出根據本發明概念實施例的圖4所示抹除邏輯435自圖1所示記憶體145抹除資料的示例性過程的流程圖。在圖10中,在方塊1005處,圖4所示抹除邏輯435可對被使用者使用過的記憶體區塊執行垃圾收集。作為另一選擇,在方塊1010處,圖4所示抹除邏輯435可使用常數值對圖1所示記憶體145中的所有資料進行覆蓋寫入。作為另一選擇,在方塊1015處,圖4所示抹除邏輯435可對圖1所示記憶體145中的所有資料執行覆蓋寫入序列,例如寫入所有零、接著寫入所有一、再接著寫入隨機圖案。作為另一選擇,在方塊1020處,圖4所示抹除邏輯435可防止圖1所示記憶體145中的胞元被再新,直至當圖1所示記憶體145可保證所有所儲存資料值皆已丟失時為止。
在圖7A至圖10中,示出了本發明概念的一些實施例。但熟習此項技術者應認識到,藉由改變所述方塊的次序、藉由省略方塊、或藉由包括未在圖式中示出的環節,本發明概念亦可具有其他實施例。無論是否明確闡述,流程圖的所有此類變型均被視為本發明概念的實施例。
以下論述旨在提供對其中可實作有本發明概念的一些態樣的適合的一或多個機器的簡要大體說明。所述一或多個機器可至少部分地藉由以下來控制:來自例如鍵盤、滑鼠等傳統輸入裝置的輸入;以及自另一機器接收的指示、與虛擬實境(virtual reality,VR)環境的交互、生物劑量學回饋(biometric feedback)、或另一種輸入訊號。本文中所用用語「機器」旨在廣泛地囊括單片機(single machine)、虛擬機(virtual machine)、或通訊地耦合的一起運作的機器、虛擬機、或裝置的系統。示例性機器包括:計算裝置,例如個人電腦、工作站、伺服器、可攜式電腦、手持式裝置、電話機、平板電腦(tablet)等;以及運輸裝置,例如私人或公共運輸工具(例如,汽車、火車、計程車等)。
所述一或多個機器可包括例如可程式化或非可程式化邏輯裝置或陣列、應用專用積體電路(Application Specific Integrated Circuit,ASIC)、嵌式電腦、智慧卡等嵌式控制器。所述一或多個機器可使用一或多個連接(例如經由網路介面、數據機、或其他通訊耦合進行的連接)而連接至一或多個遠端機器。各機器可藉由例如內部網路、網際網路、區域網路、廣域網路等實體網路及/或邏輯網路而互連。熟習此項技術者應知,網路通訊可使用包括射頻(radio frequency,RF)、衛星、微波、電氣及電子工程師學會(Institute of Electrical and Electronics Engineers,IEEE)802.11、藍芽®、光學裝置、紅外裝置、纜線、雷射等各種有線及/或無線短程或長程載體及協定。
本發明概念的實施例可藉由參照或結合包括功能、過程、資料結構、應用程式等的相關聯資料來闡述,所述相關聯資料當由機器存取時會使得所述機器執行任務或定義抽象資料類型或低層級硬體上下文。相關聯資料可儲存於例如以下等裝置中:揮發性及/或非揮發性記憶體,例如隨機存取記憶體、唯讀記憶體等;或者其他儲存裝置及其相關聯的儲存媒體,包括硬驅動機、軟碟、光學儲存器、磁帶、快閃記憶體、記憶條、數位視訊光碟、生物邏輯儲存器等。相關聯資料可以封包、串列資料、並列資料、傳播訊號等形式藉由包括實體網路及/或邏輯網路的傳輸環境而進行傳遞且可以壓縮或加密格式使用。相關聯資料可用於分佈式環境中,且在本地及/或遠端地儲存以供機器存取。
本發明概念的實施例可包括包含能夠由一或多個處理器執行的指令的有形非暫時性機器可讀取媒體,所述指令包括執行本文所述本發明概念的元件的指令。
由於已參照所示實施例闡述並說明瞭本發明概念的原理,因此應認識到,在不背離此類原理的條件下可在佈置及細節上對所示實施例加以修改且可以任何所需方式將所示實施例加以組合。而且,儘管前面的論述已著重於具體實施例,然而亦慮及其他配置。具體而言,儘管本文中使用例如「根據本發明概念的實施例」等表達,然而該些片語意欲大體引用實施例可能性,且並非旨在將本發明概念限制為具體實施例配置。本文中所使用的該些用語可引用能夠組合成其他實施例的相同的或不同的實施例。
前面的說明性實施例不應被視作限制其發明概念。儘管已闡述了若干實施例,然而熟習此項技術者將易知,在不本質上背離本發明的新穎教示內容及優點的條件下可對該些實施例作出諸多潤飾。因此,所有此類潤飾皆旨在包含於如申請專利範圍中所界定的此發明概念的範圍內。
本發明概念的實施例可擴展至以下聲明且並無限制: 聲明1. 本發明概念的實施例包括一種記憶體,所述記憶體包括: 資料儲存器,用於第一使用者的資料; 資料讀取邏輯,自所述資料儲存器讀取資料; 資料寫入邏輯,向所述資料儲存器寫入資料; 密碼儲存器,用於所儲存密碼; 接收器,自記憶體控制器接收所接收密碼; 比較器,將所述所接收密碼與所述所儲存密碼進行比較; 抹除邏輯,若所述所接收密碼不同於所述所儲存密碼,則抹除所述資料儲存器中的所述資料;以及 阻止邏輯,阻止自所述記憶體控制器存取所述資料儲存器,直至所述比較器完成操作之後為止, 其中所述所接收密碼或所述所儲存密碼不用於對儲存於所述記憶體中的資料進行加密。
聲明2. 本發明概念的實施例包括根據聲明1的記憶體,其中所述阻止邏輯能夠操作以阻止自所述記憶體控制器存取所述資料儲存器,直至所述抹除邏輯完成操作之後為止。
聲明3. 本發明概念的實施例包括根據聲明1的記憶體,所述記憶體更包括將所述所接收密碼寫入至所述密碼儲存器的密碼寫入邏輯。
聲明4. 本發明概念的實施例包括根據聲明1的記憶體,所述記憶體更包括用以指明所述記憶體是否正在以安全模式運作的串列存在偵測(SPD)。
聲明5. 本發明概念的實施例包括根據聲明4的記憶體,其中若所述串列存在偵測指明所述記憶體未正在以所述安全模式運作,則所述阻止邏輯容許所述記憶體控制器存取所述資料儲存器而不調用所述比較器。
聲明6. 本發明概念的實施例包括根據聲明1的記憶體,所述記憶體更包括用以指明所述記憶體是否正在以安全模式運作的重要產品資料(VPD)。
聲明7. 本發明概念的實施例包括根據聲明6的記憶體,所述記憶體更包括用於儲存所述重要產品資料的電子可抹除可程式化唯讀記憶體(EEPROM)。
聲明8. 本發明概念的實施例包括根據聲明6的記憶體,其中若所述重要產品資料指明所述記憶體未正在以所述安全模式運作,則所述阻止邏輯容許所述記憶體控制器存取所述資料儲存器而不調用所述比較器。
聲明9. 本發明概念的實施例包括根據聲明1的記憶體,其中所述抹除邏輯能夠操作以在臨限數目的所接收密碼均不同於所述所儲存密碼時抹除所述資料儲存器中的所述資料。
聲明10. 本發明概念的實施例包括根據聲明1的記憶體,其中: 所述記憶體更包括第二資料儲存器,所述第二資料儲存器儲存第二使用者的第二資料; 所述資料讀取邏輯能夠操作以自所述第二資料儲存器讀取所述第二資料; 所述資料寫入邏輯能夠操作以將所述第二資料寫入至所述第二資料儲存器; 所述密碼儲存器能夠操作以儲存第二所儲存密碼; 所述接收器能夠操作以自第二記憶體控制器接收第二所接收密碼; 所述比較器能夠操作以將所述第二所接收密碼與所述第二所儲存密碼進行比較; 所述抹除邏輯能夠操作以在所述第二所接收密碼不同於所述第二所儲存密碼時抹除所述第二資料儲存器中的所述第二資料;且 所述阻止邏輯能夠操作以阻止自所述第二記憶體控制器存取所述第二資料儲存器,直至所述比較器完成操作之後為止。
聲明11. 本發明概念的實施例包括根據聲明10的記憶體,其中所述記憶體控制器是所述第二記憶體控制器。
聲明12. 本發明概念的實施例包括根據聲明1的記憶體,其中所述記憶體取自包括以下的集合:揮發性記憶體模組、非揮發性記憶體模組、及揮發性記憶體裝置與非揮發性記憶體裝置的任意組合。
聲明13. 本發明概念的實施例包括根據聲明1的記憶體,所述記憶體包括暫存器時脈驅動器(RCD),所述暫存器時脈驅動器包括所述接收器、所述比較器、所述抹除邏輯、及所述阻止邏輯。
聲明14. 根據本發明概念的實施例包括根據聲明13的記憶體,其中所述暫存器時脈驅動器更包括所述資料讀取邏輯及所述資料寫入邏輯。
聲明15. 本發明概念的實施例包括一種方法,所述方法包括: 確定記憶體已被重設; 判斷所述記憶體正在以安全模式還是非安全模式運作;以及 若所述記憶體正在以所述安全模式運作,則: 選擇使用者的密碼; 將所述密碼發送至所述記憶體;以及 接收對所述記憶體的存取, 其中所述密碼不用於對儲存於所述記憶體中的資料進行加密。
聲明16. 本發明概念的實施例包括根據聲明15的方法,所述方法更包括:若所述記憶體正在以所述非安全模式運作,則不使用密碼接收對所述記憶體的存取。
聲明17. 本發明概念的實施例包括根據聲明15的方法,其中將所述密碼發送至所述記憶體包括將所述密碼發送至所述記憶體達臨限數目的次數。
聲明18. 本發明概念的實施例包括根據聲明15的方法,其中接收對所述記憶體的存取包括接收對被抹除記憶體的存取。
聲明19. 本發明概念的實施例包括根據聲明15的方法,其中接收對所述記憶體的存取包括接收對儲存於所述記憶體中的所述資料的存取。
聲明20. 本發明概念的實施例包括根據聲明15的方法,所述方法更包括: 量測自所述記憶體被重設時起的時間量;以及 若自所述記憶體被重設時起的所述時間量大於臨限值,則將由軟體引發的重設發送至所述記憶體。
聲明21. 本發明概念的實施例包括根據聲明15的方法,其中所述記憶體取自包括以下的集合:揮發性記憶體模組、非揮發性記憶體模組、及揮發性記憶體裝置與非揮發性記憶體裝置的任意組合。
聲明22. 本發明概念的實施例包括根據聲明15的方法,其中所述記憶體包括被指配給第一使用者的第一部分及被指配給第二使用者的第二部分。
聲明23. 本發明概念的實施例包括根據聲明15的方法,其中選擇所述使用者的所述密碼包括產生隨機密碼。
聲明24. 本發明概念的實施例包括根據聲明15的方法,其中選擇所述使用者的所述密碼包括自可用密碼清單選擇所述密碼。
聲明25. 本發明概念的實施例包括根據聲明15的方法,其中選擇所述使用者的所述密碼包括依照所述使用者的辨識符的雜湊產生所述密碼。
聲明26. 本發明概念的實施例包括根據聲明15的方法,其中選擇所述使用者的所述密碼包括自可信賴平台模組存取所述密碼。
聲明27. 本發明概念的實施例包括一種方法,所述方法包括: 自記憶體向記憶體控制器發送表示所述記憶體正在以安全模式運作的訊號; 自所述記憶體控制器接收所接收密碼; 將所述所接收密碼與所儲存密碼進行比較;以及 若所述所接收密碼不與所述所儲存密碼匹配,則: 抹除所述記憶體;以及 提供所述記憶體控制器對所述記憶體的存取, 其中所述所接收密碼或所述所儲存密碼不用於對儲存於所述記憶體中的資料進行加密。
聲明28. 本發明概念的實施例包括根據聲明27的方法,所述方法更包括:若所述所接收密碼不與所述所儲存密碼匹配,則將所述所接收密碼儲存於所述記憶體中。
聲明29. 本發明概念的實施例包括根據聲明27的方法,所述方法更包括:若所述所接收密碼與所述所儲存密碼匹配,則提供所述記憶體控制器對所述記憶體的存取。
聲明30. 本發明概念的實施例包括根據聲明27的方法,所述方法更包括:在抹除所述記憶體之前,將所述所接收密碼與所述所儲存密碼比較達臨限數目的次數。
聲明31. 本發明概念的實施例包括根據聲明27的方法,所述方法更包括: 自所述記憶體控制器接收重設命令;以及 因應於所述重設命令而重設所述記憶體。
聲明32. 本發明概念的實施例包括根據聲明31的方法,其中因應於所述重設命令而重設所述記憶體包括對所述記憶體中的所有資料執行垃圾收集。
聲明33. 本發明概念的實施例包括根據聲明31的方法,其中因應於所述重設命令而重設所述記憶體包括對所述記憶體中的所有資料執行覆蓋寫入序列。
聲明34. 本發明概念的實施例包括根據聲明31的方法,其中因應於所述重設命令而重設所述記憶體包括使用常數值對所述記憶體中的所有資料進行覆蓋寫入。
聲明35. 本發明概念的實施例包括根據聲明31的方法,其中因應於所述重設命令而重設所述記憶體包括防止對所述記憶體中的所有資料的再新,直至所述記憶體中的所有資料不再儲存於所述記憶體中為止。
聲明36. 本發明概念的實施例包括根據聲明27的方法,其中自所述記憶體向所述記憶體控制器發送表示所述記憶體正在以所述安全模式運作的所述訊號包括自所述記憶體控制器接收請求以判斷所述記憶體是否正在以所述安全模式運作。
聲明37. 本發明概念的實施例包括根據聲明27的方法,其中自所述記憶體控制器接收所述所接收密碼包括自所述記憶體控制器請求所述密碼。
聲明38. 本發明概念的實施例包括根據聲明27的方法,其中所述記憶體取自包括以下的集合:揮發性記憶體模組、非揮發性記憶體模組、及揮發性記憶體裝置與非揮發性記憶體裝置的任意組合。
聲明39. 本發明概念的實施例包括根據聲明27的方法,其中所述記憶體是被指配給第一使用者的第一部分及被指配給第二使用者的第二部分。
聲明40. 本發明概念的實施例包括一種製品,所述製品包括有形儲存媒體,所述有形儲存媒體上儲存有非暫時性指令,所述非暫時性指令當由機器執行時使得: 確定記憶體已被重設; 判斷所述記憶體正在以安全模式還是非安全模式運作;以及 若所述記憶體正在以所述安全模式運作,則: 選擇使用者的密碼; 將所述密碼發送至所述記憶體;以及 接收對所述記憶體的存取, 其中所述密碼不用於對儲存於所述記憶體中的資料進行加密。
聲明41. 本發明概念的實施例包括根據聲明40的製品,所述有形儲存媒體上儲存有進一步的非暫時性指令,所述進一步的非暫時性指令當由所述機器執行時使得,若所述記憶體正在以所述非安全模式運作,則不使用密碼接收對所述記憶體的的存取。
聲明42. 本發明概念的實施例包括根據聲明40的製品,其中將所述密碼發送至所述記憶體包括將所述密碼發送至所述記憶體達臨限數目的次數。
聲明43. 本發明概念的實施例包括根據聲明40的製品,其中接收對所述記憶體的存取包括接收對被抹除記憶體的存取。
聲明44. 本發明概念的實施例包括根據聲明40的製品,其中接收對所述記憶體的存取包括接收對儲存於所述記憶體中的資料的存取。
聲明45. 本發明概念的實施例包括根據聲明40的製品,所述有形儲存媒體上儲存有進一步的非暫時性指令,所述進一步的非暫時性指令當由所述機器執行時使得: 量測自所述記憶體被重設時起的時間量;以及 若自所述記憶體被重設時起的所述時間量大於臨限值,則將由軟體引發的重設發送至所述記憶體。
聲明46. 本發明概念的實施例包括根據聲明40的製品,其中所述記憶體取自包括以下的集合:揮發性記憶體模組、非揮發性記憶體模組、及揮發性記憶體裝置與非揮發性記憶體裝置的任意組合。
聲明47. 本發明概念的實施例包括根據聲明40的製品,其中所述記憶體是被指配給第一使用者的第一部分及被指配給第二使用者的第二部分。
聲明48. 本發明概念的實施例包括根據聲明40的製品,其中選擇所述使用者的所述密碼包括產生隨機密碼。
聲明49. 本發明概念的實施例包括根據聲明40的製品,其中選擇所述使用者的所述密碼包括自可用密碼清單選擇所述密碼。
聲明50. 本發明概念的實施例包括根據聲明40的製品,其中選擇所述使用者的所述密碼包括依照所述使用者的辨識符的雜湊產生所述密碼。
聲明51. 本發明概念的實施例包括根據聲明40的製品,其中選擇所述使用者的所述密碼包括自可信賴平台模組存取所述密碼。
聲明52. 本發明概念的實施例包括一種製品,所述製品包括有形儲存媒體,所述有形儲存媒體上儲存有非暫時性指令,所述非暫時性指令當由機器執行時使得: 將表示所述記憶體正在以安全模式運作的訊號自記憶體發送至記憶體控制器; 自所述記憶體控制器接收所接收密碼; 將所述所接收密碼與所儲存密碼進行比較;以及 若所述所接收密碼不與所述所儲存密碼匹配,則: 抹除所述記憶體;以及 提供所述記憶體控制器對所述記憶體的存取, 其中所述所接收密碼或所述所儲存密碼不用於對儲存於所述記憶體中的資料進行加密。
聲明53. 本發明概念的實施例包括根據聲明52的製品,所述有形儲存媒體上儲存有進一步的非暫時性指令,所述進一步的非暫時性指令當由所述機器執行時使得,若所述所接收密碼不與所述所儲存密碼匹配,則將所述所接收密碼儲存於所述記憶體中。
聲明54. 本發明概念的實施例包括根據聲明52的製品,其中若所述所接收密碼與所述所儲存密碼匹配,則提供所述記憶體控制器對所述記憶體的存取。
聲明55. 本發明概念的實施例包括根據聲明52的製品,所述有形儲存媒體上儲存有進一步的非暫時性指令,所述進一步的非暫時性指令當由所述機器執行時使得,在抹除所述記憶體之前對所述所接收密碼與所儲存密碼進行比較達臨限數目的次數。
聲明56. 本發明概念的實施例包括根據聲明52的製品,所述有形儲存媒體上儲存有進一步的非暫時性指令,所述進一步的非暫時性指令當由所述機器執行時使得: 自所述記憶體控制器接收重設命令;以及 因應於所述重設命令而重設所述記憶體。
聲明57. 本發明概念的實施例包括根據聲明56的製品,其中因應於所述重設命令而重設所述記憶體包括對所述記憶體中的所有資料執行垃圾收集。
聲明58. 本發明概念的實施例包括根據聲明56的製品,其中因應於所述重設命令而重設所述記憶體包括對所述記憶體中的所有資料執行覆蓋寫入序列。
聲明59. 本發明概念的實施例包括根據聲明56的製品,其中因應於所述重設命令而重設所述記憶體包括使用常數值對所述記憶體中的所有資料進行覆蓋寫入。
聲明60. 本發明概念的實施例包括根據聲明56的製品,其中因應於所述重設命令而重設所述記憶體包括,防止對所述記憶體中的所有資料的再新,直至所述記憶體中的所有資料不再儲存於所述記憶體中為止。
聲明61. 本發明概念的實施例包括根據聲明52的製品,其中自所述記憶體向所述記憶體控制器發送表示所述記憶體正在以所述安全模式運作的訊號包括自所述記憶體控制器接收請求以判斷所述記憶體是否正在以所述安全模式運作。
聲明62. 本發明概念的實施例包括根據聲明52的製品,其中自所述記憶體控制器接收所述所接收密碼包括自所述記憶體控制器請求所述密碼。
聲明63. 本發明概念的實施例包括根據聲明52的製品,其中所述記憶體取自包括以下的集合:揮發性記憶體模組、非揮發性記憶體模組、及揮發性記憶體裝置與非揮發性記憶體裝置的任意組合。
聲明64. 本發明概念的實施例包括根據聲明52的製品,其中所述記憶體是被指配給第一使用者的第一部分及被指配給第二使用者的第二部分。
因此,考慮到本文所述實施例的眾多種排列形式,此詳細說明及附帶材料僅旨在為說明性的,且不應被視作限制本發明概念的範圍。因此,本發明概念所主張的是所有此類潤飾皆可處於以下申請專利範圍及其等效範圍的範圍及精神內。
105‧‧‧資料中心
110‧‧‧主機/伺服器
115、120、125‧‧‧主機
130‧‧‧客戶機
135‧‧‧網路
140‧‧‧處理器
145‧‧‧記憶體
150‧‧‧電子可抹除可程式化唯讀記憶體
155‧‧‧儲存裝置
160‧‧‧重要產品資料
205、620‧‧‧記憶體控制器
210‧‧‧時鐘
215‧‧‧網路連接器
220‧‧‧匯流排
225‧‧‧使用者介面
230‧‧‧輸入/輸出引擎
305‧‧‧暫存器時脈驅動器
310、315、320、325、330、335、340、345‧‧‧記憶體晶片/資料儲存器
350‧‧‧串列存在偵測
355‧‧‧儲存器/密碼儲存器
405‧‧‧資料讀取邏輯
410‧‧‧資料寫入邏輯
415‧‧‧驗證邏輯
420‧‧‧接收器
425‧‧‧阻止邏輯
430‧‧‧比較器
435‧‧‧抹除邏輯
440‧‧‧密碼寫入邏輯
505‧‧‧密碼/所接收密碼
510‧‧‧所儲存密碼
515‧‧‧比較結果
520‧‧‧臨限值
605、610‧‧‧部分
615‧‧‧介面
705、710、715、720、725、730、735、740、745、750、755、760、805、810、815、820、905、910、915、920、925、930、935、940、945、950、955、960、965、970、975、980、985、1005、1010、1015、1020‧‧‧步驟
圖1示出根據本發明概念的實施例的具有使用安全記憶體的各種主機(host machine)的資料中心。 圖2示出圖1所示主機的其他細節。 圖3示出圖1所示記憶體的細節。 圖4示出圖1所示記憶體的替代圖。 圖5示出圖3至圖4所示記憶體使用自圖3所示記憶體控制器接收的密碼來判斷準許存取儲存於圖3至圖4所示記憶體中的資料還是抹除儲存於圖3至圖4所示記憶體中的資料。 圖6示出根據本發明概念實施例的圖1所示可在兩個使用者之間共享資源的記憶體的例子。 圖7A至圖7C示出根據本發明概念實施例的圖3所示記憶體控制器請求對圖1所示記憶體的存取的示例性過程的流程圖。 圖8示出根據本發明概念實施例的圖3所示記憶體控制器選擇密碼來請求對圖1所示記憶體的存取的示例性過程的流程圖。 圖9A至圖9C示出根據本發明概念實施例的圖1所示記憶體判斷準許圖3所示記憶體控制器存取資料還是抹除資料的示例性過程的流程圖。 圖10示出根據本發明概念實施例的圖4所示抹除邏輯自圖1所示記憶體抹除資料的示例性過程的流程圖。
145‧‧‧記憶體
310-345‧‧‧記憶體晶片/資料儲存器
355‧‧‧儲存器/密碼儲存器
405‧‧‧資料讀取邏輯
410‧‧‧資料寫入邏輯
415‧‧‧驗證邏輯
420‧‧‧接收器
425‧‧‧阻止邏輯
430‧‧‧比較器
435‧‧‧抹除邏輯
440‧‧‧密碼寫入邏輯

Claims (20)

  1. 一種記憶體,包括: 資料儲存器,用於第一使用者的資料; 資料讀取邏輯,自所述資料儲存器讀取資料; 資料寫入邏輯,向所述資料儲存器寫入資料; 密碼儲存器,用於所儲存密碼; 接收器,自記憶體控制器接收所接收密碼; 比較器,將所述所接收密碼與所述所儲存密碼進行比較; 抹除邏輯,若所述所接收密碼不同於所述所儲存密碼,則抹除所述資料儲存器中的所述資料;以及 阻止邏輯,阻止自所述記憶體控制器存取所述資料儲存器,直至所述比較器完成操作之後為止, 其中所述所接收密碼或所述所儲存密碼不用於對儲存於所述記憶體中的資料進行加密。
  2. 如申請專利範圍第1項所述的記憶體,其中所述阻止邏輯操作以阻止自所述記憶體控制器存取所述資料儲存器,直至所述抹除邏輯完成操作之後為止。
  3. 如申請專利範圍第1項所述的記憶體,更包括密碼寫入邏輯,用以將所述所接收密碼寫入至所述密碼儲存器。
  4. 如申請專利範圍第1項所述的記憶體,更包括串列存在偵測(SPD),用以指明所述記憶體是否正在以安全模式運作。
  5. 如申請專利範圍第4項所述的記憶體,其中若所述串列存在偵測指明所述記憶體未正在以所述安全模式運作,則所述阻止邏輯容許所述記憶體控制器存取所述資料儲存器而不調用所述比較器。
  6. 如申請專利範圍第1項所述的記憶體,其中在臨限數目的所接收密碼均不同於所述所儲存密碼時,所述抹除邏輯運作以抹除所述資料儲存器中的所述資料。
  7. 如申請專利範圍第1項所述的記憶體,其中所述記憶體取自包括以下的集合:揮發性記憶體模組、非揮發性記憶體模組、及揮發性記憶體裝置與非揮發性記憶體裝置的任意組合。
  8. 如申請專利範圍第1項所述的記憶體,更包括暫存器時脈驅動器(RCD),所述暫存器時脈驅動器包括所述接收器、所述比較器、所述抹除邏輯、及所述阻止邏輯。
  9. 一種方法,包括: 確定記憶體已被重設; 判斷所述記憶體正在以安全模式還是非安全模式運作;以及 若所述記憶體正在以所述安全模式運作,則: 選擇使用者的密碼; 將所述密碼發送至所述記憶體;以及 接收對所述記憶體的存取, 其中所述密碼不用於對儲存於所述記憶體中的資料進行加密。
  10. 如申請專利範圍第9項所述的方法,更包括:若所述記憶體正在以所述非安全模式運作,則接收不使用密碼對所述記憶體進行的存取。
  11. 如申請專利範圍第9項所述的方法,其中將所述密碼發送至所述記憶體包括將所述密碼發送至所述記憶體達臨限數目的次數。
  12. 如申請專利範圍第9項所述的方法,其中接收對所述記憶體的存取包括接收對被抹除記憶體的存取。
  13. 如申請專利範圍第9項所述的方法,更包括: 量測自所述記憶體被重設時起的時間量;以及 若自所述記憶體被重設時起的所述時間量大於臨限值,則將由軟體引發的重設發送至所述記憶體。
  14. 一種方法,包括: 自記憶體向記憶體控制器發送表示所述記憶體正在以安全模式運作的訊號; 自所述記憶體控制器接收所接收密碼; 將所述所接收密碼與所儲存密碼進行比較;以及 若所述所接收密碼不與所述所儲存密碼匹配,則: 抹除所述記憶體;以及 提供所述記憶體控制器對所述記憶體的存取, 其中所述所接收密碼或所述所儲存密碼不用於對儲存於所述記憶體中的資料進行加密。
  15. 如申請專利範圍第14項所述的方法,更包括:若所述所接收密碼不與所述所儲存密碼匹配,則將所述所接收密碼儲存於所述記憶體中。
  16. 如申請專利範圍第14項所述的方法,更包括:若所述所接收密碼與所述所儲存密碼匹配,則提供所述記憶體控制器對所述記憶體的存取。
  17. 如申請專利範圍第14項所述的方法,更包括:在抹除所述記憶體之前,將所述所接收密碼與所述所儲存密碼比較達臨限數目的次數。
  18. 如申請專利範圍第14項所述的方法,更包括: 自所述記憶體控制器接收重設命令;以及 因應於所述重設命令而重設所述記憶體。
  19. 如申請專利範圍第14項所述的方法,其中自所述記憶體向所述記憶體控制器發送表示所述記憶體正在以所述安全模式運作的所述訊號包括自所述記憶體控制器接收請求以判斷所述記憶體是否正在以所述安全模式運作。
  20. 如申請專利範圍第14項所述的方法,其中自所述記憶體控制器接收所述所接收密碼包括自所述記憶體控制器請求所述密碼。
TW106118774A 2016-08-02 2017-06-07 安全記憶體與智慧儲存裝置內執行資料擦除之方法 TWI750184B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662370230P 2016-08-02 2016-08-02
US62/370,230 2016-08-02
US15/275,337 2016-09-23
US15/275,337 US10824348B2 (en) 2016-08-02 2016-09-23 Method of executing conditional data scrubbing inside a smart storage device

Publications (2)

Publication Number Publication Date
TW201805816A true TW201805816A (zh) 2018-02-16
TWI750184B TWI750184B (zh) 2021-12-21

Family

ID=61069206

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106118774A TWI750184B (zh) 2016-08-02 2017-06-07 安全記憶體與智慧儲存裝置內執行資料擦除之方法

Country Status (5)

Country Link
US (1) US10824348B2 (zh)
JP (1) JP6829161B2 (zh)
KR (1) KR102360189B1 (zh)
CN (1) CN107678982A (zh)
TW (1) TWI750184B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102389431B1 (ko) * 2017-08-22 2022-04-25 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
US11216592B2 (en) * 2018-08-02 2022-01-04 Qualcomm Incorporated Dynamic cryptographic key expansion

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760672B2 (en) * 2002-01-29 2004-07-06 Rockwell Automation Technologies, Inc. Automatic detection of battery-backed data integrity in volatile memory
JP2004326425A (ja) * 2003-04-24 2004-11-18 Toshiba Corp 情報処理装置およびメモリカード
JP2005011151A (ja) * 2003-06-20 2005-01-13 Renesas Technology Corp メモリカード
US8266378B1 (en) * 2005-12-22 2012-09-11 Imation Corp. Storage device with accessible partitions
US7762553B2 (en) * 2006-11-25 2010-07-27 Harris Curtis J Form-fitting electronic game controller cover
KR100841982B1 (ko) * 2007-02-08 2008-06-27 삼성전자주식회사 호스트 식별 정보를 저장하는 메모리 카드 및 그것의액세스 방법
US8241047B2 (en) * 2007-10-30 2012-08-14 Super Talent Electronics, Inc. Flash drive with spring-loaded swivel connector
US20100024028A1 (en) * 2008-07-22 2010-01-28 Ernest Samuel Baugher Wireless mobile device with user selectable privacy for groups of resident application programs and files
US7886103B2 (en) * 2008-09-08 2011-02-08 Cisco Technology, Inc. Input-output module, processing platform and method for extending a memory interface for input-output operations
US8683088B2 (en) * 2009-08-06 2014-03-25 Imation Corp. Peripheral device data integrity
US8516271B2 (en) 2011-03-11 2013-08-20 Hewlett-Packard Development Company, L. P. Securing non-volatile memory regions
CN104126181A (zh) * 2011-12-30 2014-10-29 英特尔公司 作为随机存取存储器的非易失性半导体存储装置的系统存取的薄变换
US9471484B2 (en) * 2012-09-19 2016-10-18 Novachips Canada Inc. Flash memory controller having dual mode pin-out
US9858208B2 (en) * 2013-03-21 2018-01-02 International Business Machines Corporation System for securing contents of removable memory
WO2015016918A1 (en) 2013-07-31 2015-02-05 Hewlett-Packard Development Company, L.P. Hybrid secure non-volatile main memory
US9436831B2 (en) * 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US9449651B2 (en) * 2014-03-21 2016-09-20 Diablo Technologies Inc. System and method for offsetting the data buffer latency of a device implementing a JEDEC standard DDR-4 LRDIMM chipset
TWI507876B (zh) * 2014-07-21 2015-11-11 Phison Electronics Corp 記憶體儲存裝置及控制方法、記憶體控制電路單元及模組
US9489317B2 (en) 2014-09-26 2016-11-08 Apple Inc. Method for fast access to a shared memory
US9786389B2 (en) * 2015-10-16 2017-10-10 SK Hynix Inc. Memory system

Also Published As

Publication number Publication date
TWI750184B (zh) 2021-12-21
US10824348B2 (en) 2020-11-03
KR102360189B1 (ko) 2022-02-08
US20180039437A1 (en) 2018-02-08
KR20180015065A (ko) 2018-02-12
CN107678982A (zh) 2018-02-09
JP2018022486A (ja) 2018-02-08
JP6829161B2 (ja) 2021-02-10

Similar Documents

Publication Publication Date Title
TWI740409B (zh) 使用密鑰之身份驗證
US11861194B2 (en) Storage device configuration and method managing storage configuration
US11329814B2 (en) Self-encryption drive (SED)
US20210117540A1 (en) Storage device and method for protecting against virus/malware thereof and computing system having the same
US9490982B2 (en) Method and storage device for protecting content
CN110709843B (zh) 加密勒索软件损害检测
US8886964B1 (en) Protecting remote asset against data exploits utilizing an embedded key generator
CN113260999B (zh) 减少未经授权的存储器存取
US9071581B2 (en) Secure storage with SCSI storage devices
TWI679554B (zh) 資料儲存裝置以及其操作方法
CN108108631A (zh) 一种根密钥处理方法及相关装置
US11068419B1 (en) Secure data access between computing devices using host-specific key
TWI824378B (zh) 支援將檔案寫入安裝於安全記憶裝置中之檔案系統的機制
US20200169395A1 (en) Storage device sharing data encryption key as encrypted and operating method of storage device
KR20180127384A (ko) 공동 계좌에 대한 인가 방법과 디바이스, 및 공동 계좌에 대한 인증 방법과 디바이스
CN115017556A (zh) 具有加密功能的存储设备
US20150074412A1 (en) Cryptographic storage device controller
CN108809920A (zh) 采加密技术的数据中心与数据中心操作方法
TWI750184B (zh) 安全記憶體與智慧儲存裝置內執行資料擦除之方法
TW202111584A (zh) 具有旁通通道的金鑰管理裝置及處理器晶片
CN111444118B (zh) 一种进程保护方法、装置、终端设备及存储介质
JP2018022486A5 (zh)
TW202011248A (zh) 資料儲存裝置以及其操作方法
KR20250087191A (ko) 중요 정보의 보안 저장 방법