TW202240405A - 資料保護方法和存儲裝置 - Google Patents

資料保護方法和存儲裝置 Download PDF

Info

Publication number
TW202240405A
TW202240405A TW110140811A TW110140811A TW202240405A TW 202240405 A TW202240405 A TW 202240405A TW 110140811 A TW110140811 A TW 110140811A TW 110140811 A TW110140811 A TW 110140811A TW 202240405 A TW202240405 A TW 202240405A
Authority
TW
Taiwan
Prior art keywords
security
physical address
address range
key
unit
Prior art date
Application number
TW110140811A
Other languages
English (en)
Other versions
TWI777842B (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 聯發科技股份有限公司
Application granted granted Critical
Publication of TWI777842B publication Critical patent/TWI777842B/zh
Publication of TW202240405A publication Critical patent/TW202240405A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F12/1425Protection 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 the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection 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 the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0284Multiple user address space allocation, e.g. using different base addresses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/2149Restricted operating environment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)
  • Communication Control (AREA)

Abstract

本發明公開了一種資料保護方法,其被應用於存儲裝置,由該存儲裝置的控制器執行。該資料保護方法包括:接收來自外部處理單元的緩衝區清除指令,其中,該緩衝區清除指令指示該存儲裝置的緩衝記憶體的第一物理地址範圍對應的第一安全區域需要被清除,且指示對應於該第一安全區域以用於訪問該第一安全區域的第一安全密鑰;以及,響應於該緩衝區清除指令,配置該存儲裝置的安全單元,以使得該安全單元在訪問第一物理地址範圍時使用與第一安全密鑰不同的一個或多個第二密鑰。

Description

資料保護方法和存儲裝置
本申請通常涉及存儲技術,以及更特別地,涉及一種資料保護方法和存儲裝置。
記憶體(包括易失性記憶體和非易失性記憶體,例如,DRAM、SRAM、eMMC、USB)在各類電子裝置中廣泛用於緩衝(buffer)資料。例如,智能電視(TV)可以包括用於緩衝顯示資料的DRAM。緩衝區越大,需要的“釋放時間(release time)”就越長。“釋放時間”是指將安全緩衝區(secure buffer)釋放為非安全緩衝區(non-secure buffer)所花費的時間。安全緩衝區用於緩衝安全和有價值的內容,而非安全緩衝區用於緩衝非安全和非受保護的內容。按照慣例,“釋放安全緩衝區”的操作是通過使用特定模式重寫(overwrite)安全緩衝區中的資料來完成的,例如,全零或隨機值。然後將此類緩衝區的權限釋放給非安全域。當安全內容的分辨率更高時,例如8K及以上分辨率,需要的安全緩衝區更大,以及,釋放時間更長。如此長的釋放時間會導致終端用戶在電視上切換頻道或節目時出現延遲。這種延遲給終端用戶帶來了糟糕的觀看體驗。
以下發明內容僅是說明性的,而無意於以任何方式進行限制。即,提供以下概述來介紹本文描述的新穎和非顯而易見的技術的概念,重點,益處和優點。選擇的實施方式在下面的詳細描述中進一步描述。因此,以下發明內容既不旨在標識所要求保護的主題的必要特徵,也不旨在用於確定所要求保護的主題的範圍。
本發明的一個方面公開了一種資料保護方法,應用於存儲裝置,由存儲裝置的控制器執行。該資料保護方法包括:接收來自外部處理單元的緩衝區清除指令,其中,緩衝區清除指令指示需要清除存儲裝置的緩衝記憶體的第一物理地址範圍對應的第一安全區域,且指示對應於第一安全區域以用於訪問第一安全區域的第一安全密鑰;以及,響應於緩衝區清除指令,配置存儲裝置的安全單元,以使得安全單元在訪問第一物理地址範圍時使用與第一安全密鑰不同的一個或多個第二密鑰。
在一些實施例中,在配置該存儲裝置的安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的步驟中,該控制器移除該第一安全區域並重新定義對應於第二物理地址範圍的第二安全區域以使該第二安全區域還包括該第一物理地址範圍,以及,配置該安全單元以使得該安全單元使用對應於該第二安全區域的第二安全密鑰作為用於訪問該第一物理地址範圍的該一個或多個第二密鑰。
在一些實施例中,在配置該存儲裝置的安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的步驟中,該控制器移除該第一安全區域以使得該第一物理地址範圍屬於非安全區域,以及,配置該安全單元以使得該安全單元使用非安全密鑰作為訪問該第一物理地址範圍的該一個或多個第二密鑰。
在一些實施例中,在配置該存儲裝置的安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的步驟中,該控制器將該第一安全密鑰更改為新的第一安全密鑰以對應於該第一安全區域,並配置該安全單元以使得該安全單元使用該新的第一安全密鑰訪問該第一物理地址範圍。
本發明的另一方面公開了一種存儲裝置,包括緩衝記憶體、安全單元和控制器。緩衝記憶體包括用以定義第一安全區域的第一物理地址範圍。安全單元耦接到緩衝記憶體,並且包括用於訪問第一安全區域的第一安全密鑰。控制器耦接緩衝記憶體,用以接收來自外部處理單元的緩衝區清除指令,其中,該緩衝區清除指令指示需要清除第一安全區域,以及,響應於緩衝區清除指令,配置安全單元以使安全單元在訪問第一物理地址範圍時使用與第一安全密鑰不同的一個或多個第二密鑰。
在一些實施例中,該緩衝記憶體還包括被定義為第二安全區域的第二物理地址範圍,該安全單元還包括對應於該第二安全區域的第二安全密鑰,以及,在配置該安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的過程中,該控制器移除該第一安全區域並重新定義該第二安全區域還包括該第一物理地址範圍,以及,配置該安全單元以使得該安全單元使用該第二安全密鑰作為用於訪問該第一物理地址範圍的該一個或多個第二密鑰。
在一些實施例中,該緩衝記憶體還包括非安全區域,該安全單元還包括對應於該非安全區域的非安全密鑰,以及,在配置該安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的過程中,該控制器移除該第一安全區域以使得該第一物理地址範圍屬於該非安全區域,以及,配置該安全單元以使得該安全單元使用該非安全密鑰作為訪問該第一物理地址範圍的該一個或多個第二密鑰。
在一些實施例中,在配置該安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的過程中,該控制器將該第一安全密鑰更改為新的第一安全密鑰以對應於該第一安全區域,並配置該安全單元以使得該安全單元使用該新的第一安全密鑰訪問該第一物理地址範圍。
在一些實施例中,該安全單元和該控制器集成在一起。
在一些實施例中,該緩衝區清除指令是由應用程序的操作觸發的。
本發明內容是通過示例的方式提供的,並非旨在限定本發明。在下面的詳細描述中描述其它實施例和優點。本發明由申請專利範圍限定。
本說明書公開了所要求保護的主題的詳細實施例和實施方式。然而,應該理解的是,所公開的實施例和實施方式僅僅是對要求保護的主題的說明,其可以以各種形式體現。然而,本公開實施例可以以許多不同的形式實施,並且不應該被解釋為限於這裡闡述的示例性實施例和實施方式。而是,提供這些示例性實施例和實現方式,使得本公開實施例的描述是徹底和完整的,並且將向本領域技術人員充分傳達本公開實施例的範圍。在以下描述中,可以省略公知特徵和技術的細節以避免不必要地模糊所呈現的實施例和實現。
第1圖示出了根據本發明實施例的存儲裝置的框圖。存儲裝置10包括控制器102、安全單元(secure unit)1022和緩衝記憶體(buffer memory)104。緩衝記憶體104耦接到控制器102。控制器102被配置為對緩衝記憶體104執行各種操作,例如,讀操作和寫操作。緩衝記憶體104可以是動態隨機存取記憶體(dynamic random access memory,DRAM),具體地,本發明不做限制。控制器102可以由集成電路(integrated circuit,IC)芯片實現。在本實施例中,控制器102包括安全單元1022,其用於擾碼或解擾相關資料。即安全單元1022與控制器102集成在一起,但本發明並不限於此示例。在一可選的實施例中,安全單元1022為獨立於控制器102的邏輯電路,且耦接在控制器102和緩衝記憶體104之間。安全單元1022的細節在下文進行描述。
控制器102耦接到處理單元(processing unit)90。處理單元90可以是中央處理單元(center processing unit,CPU)、微處理器、通用處理器或專用處理器。非易失性記憶體(non-volatile memory)80可以耦接到處理單元90。非易失性記憶體可以是硬盤(hard disk)、閃存(flash memory)或固態盤(solid-state disk,SSD),其用於存儲資料及一個或多個應用程序(application)。
在一實施例中,安全單元1022被配置為:對從處理單元90傳輸到緩衝記憶體104的待緩衝資料進行擾碼(scramble),以及,對從緩衝記憶體104傳輸到處理單元90的資料進行解擾(descramble)。
示意性的電子裝置可以包括存儲裝置10、處理單元90和非易失性記憶體80。該電子裝置可以是智能手機、個人電腦、智能電視、一體機等等。例如,電子裝置是智能電視。當終端用戶通過執行存儲在非易失性記憶體80中的應用程序(例如,Youtube)觀看電子裝置上的第一頻道(channel)時,緩衝記憶體104可用於臨時存儲將被顯示的視頻資料。在終端用戶從第一頻道切換到第二頻道的過程中,通常需要清除緩衝記憶體104中存儲的視頻資料。在一種情況下,第一頻道的第一內容是安全內容(secure content)或受保護的內容(protected content),以及,第二頻道的第二內容可以是非安全內容(non-secure content)或不受保護的內容(unprotected content)。在另一種情況下,第一頻道和第二頻道彼此不信任。在這種情況下,由於存儲在緩衝記憶體104中的第一內容是受保護的,或者第二頻道不被第一頻道信任,所以在終端用戶將第一頻道切換到第二頻道時,緩衝(buffered)在緩衝記憶體104中的第一內容應當被清除(cleared)。根據本發明的資料保護方法提供了一種能夠快速清除緩衝記憶體104中緩衝的資料的方法。
在一實施例中,緩衝記憶體104可以包括一個或多個安全區域(secure area,SR)。例如,第一物理地址範圍(physical address range)PAD1(包括一個或多個物理地址)被定義為第一安全區域SR1,以及,第二物理地址範圍PAD2(包括一個或多個物理地址)被定義為第二安全區域SR2。此外,緩衝記憶體104還可以包括非安全區域(non-secure area,NSR),該非安全區域NSR至少包括不屬於第一安全區域SR1和第二安全區域SR2的一部分物理地址。在一實施例中,第一安全區域SR1、第二安全區域SR2和非安全區域NSR可以由處理單元90或控制器102进行定義。例如,在一實施例中,處理單元90針對緩衝記憶體104定義安全區域(SR),以及,控制器102保存安全區域配置(secure area configuration),該安全區域配置記錄(record)處理單元90發送的物理地址和安全區域之間的關係。安全單元1022可以具有不同的密鑰,其分別對應於安全區域和非安全區域。例如,第一安全密鑰(secure key,SK)SK1對應第一安全區域,第二安全密鑰SK2對應第二安全區域,以及,非安全密鑰(non-secure key)NSK對應非安全區域。即,每個安全區域和非安全區域對應唯一的密鑰。第一安全密鑰SK1用於對處理單元90寫入到第一安全區域SR1的資料進行擾碼,以及,對處理單元90從第一安全區域SR1讀取的資料進行解擾。第二安全密鑰SK2用於對處理單元90寫入到第二安全區域SR2的資料進行擾碼(scramble),並對處理單元90從第二安全區域SR2讀取的資料進行解擾(descramble)。非安全密鑰NSK用於對處理單元90寫入到非安全區域NSR的資料進行擾碼,并對處理單元90從非安全區域NSR讀取的資料進行解擾。第一安全密鑰SK1、第二安全密鑰SK2和非安全密鑰NSK由處理單元90或控制器102生成并配置。在一實施例中,這些密鑰與區域相關聯並記錄在安全區域配置中。
第2圖示出了根據本發明實施例的資料保護方法的流程圖。資料保護方法由控制器102執行。在智能電視的實施例中,終端用戶執行應用(諸如Youtube)以在智能電視上播放第一頻道提供的第一內容。第一物理地址範圍PAD1對應的第一安全區域SR1可用於緩衝視頻資料。
在步驟S201中,控制器102從處理單元90接收緩衝區清除指令(buffer clear command)。在一實施例中,緩衝區清除指令可以由應用程序的操作觸發。例如,當終端用戶將觀看的頻道從第一頻道切換到第二頻道時,響應於頻道切換的操作,處理單元90可以根據第一頻道的安全策略向控制器102發送緩衝區清除指令。然而,在替代實施例中,處理單元90可以在需要清除緩衝區時發送緩衝區清除指令。緩衝區清除指令可以指示需要清除第一安全區域SR1。
在步驟S203中,響應於該緩衝區清除指令,控制器102配置安全單元1022,使安全單元1022在訪問(access)第一物理地址範圍PADl時使用與第一安全密鑰SKl不同的一個或多個第二密鑰。由於存儲在第一物理地址範圍PAD1中的資料是使用第一安全密鑰SK1擾碼的,所以安全單元1022無法通過使用一個或多個第二密鑰正確地解擾存儲在第一物理地址範圍PAD1中的資料。也就是說,通過改變用於訪問第一物理地址範圍PAD1的密鑰,第一物理地址範圍PAD1中存儲的資料就相當於被清除了。從而可以保護原先存儲在的第一安全區域中的資料,防止被他人使用。在一實施例中,該一個或多個第二密鑰可以由處理單元90產生。在這種情況下,該一個或多個第二密鑰可以與緩衝區清除指令一起或在緩衝區清除指令之後傳送到控制器102。在另一實施例中,該一個或多個第二密鑰可以由控制器102生成。
控制器102可以將安全單元1022配置為:在通過應用各種手段訪問第一物理地址範圍PADl時使安全單元102使用與第一安全密鑰SKl不同的一個或多個第二密鑰。在一實施例中,如第3圖所示,處理單元90重新定義第一物理地址範圍PAD1,並為第一物理地址範圍PAD1產生一個或多個第二密鑰。例如,處理單元90銷毀(destroy)第一安全區域SR1,重新定義第二安全區域SR2以包含第一物理地址範圍PAD1,並將新的安全區域配置通知給控制器102。根據新的安全區域配置,控制器102可以配置安全單元1022銷毀第一安全密鑰SK1,然後將對應於第一物理地址範圍PAD1的密鑰從第一安全密鑰SK1更改為第二安全密鑰SK2,因為第一物理地址範圍PAD1現在屬於第二安全區域SR2。由於存儲在第一物理地址範圍PAD1中的資料被第一安全密鑰SK1擾碼,因此無法使用第二安全密鑰SK2對其進行解擾。
在另一實施例中,如第4圖所示,處理單元90銷毀第一安全區域SR1,使得第一物理地址範圍PAD1屬於非安全區域NSR。新的安全區域配置可以由處理單元90通知給控制器102。根據新的安全區域配置,控制器102可以配置安全單元1022銷毀第一安全密鑰SK1,並將第一物理地址PAD1與非安全密鑰NSK相對應。由於第一物理地址範圍PAD1在重新定義和配置後屬於非安全區域NSR,因此安全單元1022可以通過非安全密鑰NSK訪問第一物理地址範圍PAD1。因此,存儲在第一物理地址範圍PAD1中的由第一安全密鑰SK1擾碼的資料無法使用非安全密鑰NSK進行解擾。
在又一實施例中,如第5圖所示,處理單元90或控制器102移除(remove)第一安全密鑰SK1,並產生不同於第一安全密鑰SK1的新的第一安全密鑰SK3(即第二密鑰)以替代第一安全密鑰SK1對應於第一安全區域SR1。新的第一安全密鑰SK3可以被記錄在新的安全區域配置中,以及,如果新的第一安全密鑰SK3是由處理單元90生成的,則新的安全區域配置可以被傳輸到控制器102。從而,使用新的第一安全密鑰SK3不能夠解擾存儲在第一物理地址範圍PAD1中且由第一安全密鑰SK1擾碼的資料。需要說明的是,在本實施例中,安全範圍的排列是不需要改變的。
需要說明的是,上述方法不限於應用於智能電視。
通常,清除存儲在緩衝記憶體中的資料需要寫入特定模式,例如全“1”或全“0”。由於寫操作需要時間,因此傳統的方法會消耗大量的時間來清除緩衝區。隨著緩衝記憶體的尺寸變大,清除緩衝記憶體的等待時間會增加。利用本發明,無需寫入特定模式的操作就能夠清除緩衝記憶體。這樣,清除緩衝記憶體就不會造成很大的延遲。
在申請專利範圍中使用諸如“第一”,“第二”,“第三”等序數術語來修改申請專利要素,其本身並不表示一個申請專利要素相對於另一個申請專利要素的任何優先權、優先級或順序,或執行方法動作的時間順序,但僅用作標記,以使用序數詞來區分具有相同名稱的一個申請專利要素與具有相同名稱的另一個元素要素。
此外,對於本文所使用之任何複數和/或單數形式之詞語,本領域熟練技術人員可根據語境和/或應用場景是否合適而將複數轉換至單數和/或將單數轉換至複數。為清晰起見,此處即對文中單數/複數之間的各種置換作出明確規定。
雖然已經對本發明實施例及其優點進行了詳細說明,但應當理解的係,在不脫離本發明的精神以及申請專利範圍所定義的範圍內,可以對本發明進行各種改變、替換和變更,例如,可以通過結合不同實施例的若干部分來得出新的實施例。所描述的實施例在所有方面僅用於說明的目的而並非用於限制本發明。本發明的保護範圍當視所附的申請專利範圍所界定者為准。所屬技術領域中具有通常知識者皆在不脫離本發明之精神以及範圍內做些許更動與潤飾。
90:處理單元 80:非易失性記憶體 102:控制器 10:存儲裝置 1022:安全單元 104:緩衝記憶體 S201,S203:步驟
包括的附圖用以提供對本公開實施例的進一步理解,以及,附圖被併入並構成本公開實施例的一部分。附圖示出了本公開實施例的實施方式,並且與說明書一起用於解釋本公開實施例的原理。可以理解的是,附圖不一定按比例繪製,因為可以示出一些部件與實際實施中的尺寸不成比例以清楚地說明本公開實施例的概念。 第1圖示出了根據本發明實施例的電子裝置的框圖。 第2圖示出了根據本發明實施例的資料保護方法的流程圖。 第3圖示出了根據本發明實施例的清除緩衝記憶體中緩衝的資料的示意圖。 第4圖示出了根據本發明另一實施例的清除緩衝記憶體中緩衝的資料的示意圖。 第5圖示出了根據本發明又一實施例的清除緩衝記憶體中緩衝的資料的示意圖。
S201,S203:步驟

Claims (10)

  1. 一種資料保護方法,由存儲裝置的控制器執行,該資料保護方法包括: 從外部處理單元接收緩衝區清除指令,其中,該緩衝區清除指令指示需要被清除的第一安全區域和第一安全密鑰,該第一安全區域對應於該存儲裝置的緩衝記憶體的第一物理地址範圍,該第一安全密鑰對應於該第一安全區域,以用於訪問該第一安全區域;以及, 響應於該緩衝區清除指令,配置該存儲裝置的安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰。
  2. 如請求項1之資料保護方法,其中,在配置該存儲裝置的安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的步驟中,該控制器移除該第一安全區域並重新定義對應於第二物理地址範圍的第二安全區域以使該第二安全區域還包括該第一物理地址範圍,以及,配置該安全單元以使得該安全單元使用對應於該第二安全區域的第二安全密鑰作為用於訪問該第一物理地址範圍的該一個或多個第二密鑰。
  3. 如請求項1之資料保護方法,其中,在配置該存儲裝置的安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的步驟中,該控制器移除該第一安全區域以使得該第一物理地址範圍屬於非安全區域,以及,配置該安全單元以使得該安全單元使用非安全密鑰作為訪問該第一物理地址範圍的該一個或多個第二密鑰。
  4. 如請求項1之資料保護方法,其中,在配置該存儲裝置的安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的步驟中,該控制器將該第一安全密鑰更改為新的第一安全密鑰以對應於該第一安全區域,並配置該安全單元以使得該安全單元使用該新的第一安全密鑰訪問該第一物理地址範圍。
  5. 一種存儲裝置,其包括緩衝記憶體、安全單元和控制器,其中,該緩衝記憶體包括被定義為第一安全區域的第一物理地址範圍; 該安全單元耦接該緩衝記憶體,且包括用於訪問該第一安全區域的第一安全密鑰; 該控制器耦接該緩衝記憶體,並被配置為: 從外部處理單元接收緩衝區清除指令,其中,該緩衝區清除指令指示該第一安全區域需要被清除;以及, 響應於緩衝區清除指令,配置該安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰。
  6. 如請求項5之存儲裝置,其中,該緩衝記憶體還包括被定義為第二安全區域的第二物理地址範圍,該安全單元還包括對應於該第二安全區域的第二安全密鑰,以及,在配置該安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的過程中,該控制器移除該第一安全區域並重新定義該第二安全區域還包括該第一物理地址範圍,以及,配置該安全單元以使得該安全單元使用該第二安全密鑰作為用於訪問該第一物理地址範圍的該一個或多個第二密鑰。
  7. 如請求項5之存儲裝置,其中,該緩衝記憶體還包括非安全區域,該安全單元還包括對應於該非安全區域的非安全密鑰,以及,在配置該安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的過程中,該控制器移除該第一安全區域以使得該第一物理地址範圍屬於該非安全區域,以及,配置該安全單元以使得該安全單元使用該非安全密鑰作為訪問該第一物理地址範圍的該一個或多個第二密鑰。
  8. 如請求項5之存儲裝置,其中,在配置該安全單元以使得該安全單元在訪問該第一物理地址範圍時使用與該第一安全密鑰不同的一個或多個第二密鑰的過程中,該控制器將該第一安全密鑰更改為新的第一安全密鑰以對應於該第一安全區域,並配置該安全單元以使得該安全單元使用該新的第一安全密鑰訪問該第一物理地址範圍。
  9. 如請求項5之存儲裝置,其中,該安全單元和該控制器集成在一起。
  10. 如請求項5之存儲裝置,其中,該緩衝區清除指令是由應用程序的操作觸發的。
TW110140811A 2021-04-06 2021-11-02 資料保護方法和存儲裝置 TWI777842B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/223,062 US11386019B1 (en) 2021-04-06 2021-04-06 Data protection method and storage device
US17/223,062 2021-04-06

Publications (2)

Publication Number Publication Date
TWI777842B TWI777842B (zh) 2022-09-11
TW202240405A true TW202240405A (zh) 2022-10-16

Family

ID=82323752

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110140811A TWI777842B (zh) 2021-04-06 2021-11-02 資料保護方法和存儲裝置

Country Status (3)

Country Link
US (1) US11386019B1 (zh)
CN (1) CN115203715A (zh)
TW (1) TWI777842B (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8397083B1 (en) * 2006-08-23 2013-03-12 Netapp, Inc. System and method for efficiently deleting a file from secure storage served by a storage system
US8504758B1 (en) * 2010-09-21 2013-08-06 Amazon Technologies, Inc. System and method for logical deletion of stored data objects
US9471812B2 (en) * 2012-03-06 2016-10-18 Freescale Semiconductor, Inc. Method for implementing security of non-volatile memory
GB2557305A (en) * 2016-12-05 2018-06-20 Nordic Semiconductor Asa Memory protection logic
US11513719B2 (en) * 2019-08-29 2022-11-29 Micron Technology, Inc. Fast purge on storage devices

Also Published As

Publication number Publication date
US11386019B1 (en) 2022-07-12
CN115203715A (zh) 2022-10-18
TWI777842B (zh) 2022-09-11

Similar Documents

Publication Publication Date Title
US9397834B2 (en) Scrambling an address and encrypting write data for storing in a storage device
US8156565B2 (en) Hardware-based protection of secure data
US20130166922A1 (en) Method and system for frame buffer protection
JP2008299611A (ja) メモリセキュリティ装置
TWI490724B (zh) 用於加載至少一個軟體模組的代碼的方法
JP2010267135A (ja) メモリコントローラ
US20080005590A1 (en) Memory system
US9270445B2 (en) Solid state disk and input/output method
JP4255470B2 (ja) デジタルコンテンツ録画装置及び耐タンパモジュール
KR20070082405A (ko) 암호화 데이터 재생 장치 및 암호화 데이터 재생 시스템
CN103246852A (zh) 加密数据的存取方法及装置
JP2007310601A (ja) マイクロコンピュータおよびそのソフトウェア保護方法
TWI777842B (zh) 資料保護方法和存儲裝置
JP2001043139A (ja) 信号処理装置及びそれに用いる情報記録媒体
US8832845B2 (en) Apparatus, method and program
US20130198528A1 (en) Modifying a Length of an Element to Form an Encryption Key
US20050039030A1 (en) System and method for securing data
US8707054B2 (en) Establishing a secure memory path in a unitary memory architecture
WO2019086493A1 (en) Method for securing a display of sensitive data by a graphics processing unit of an electronic device
JPWO2019087309A1 (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
US10395051B2 (en) Image processing apparatus and control method thereof
US20020016917A1 (en) System integrated circuit
US20240004802A1 (en) Data security for memory and computing systems
CN113496016A (zh) 一种内存的访问方法、系统级芯片和电子设备
JP2002182984A (ja) データ処理装置

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent