TWI827912B - 電子裝置及操作電子裝置的方法 - Google Patents

電子裝置及操作電子裝置的方法 Download PDF

Info

Publication number
TWI827912B
TWI827912B TW110107213A TW110107213A TWI827912B TW I827912 B TWI827912 B TW I827912B TW 110107213 A TW110107213 A TW 110107213A TW 110107213 A TW110107213 A TW 110107213A TW I827912 B TWI827912 B TW I827912B
Authority
TW
Taiwan
Prior art keywords
volatile memory
unit
encrypted data
data
key
Prior art date
Application number
TW110107213A
Other languages
English (en)
Other versions
TW202147124A (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 TW202147124A publication Critical patent/TW202147124A/zh
Application granted granted Critical
Publication of TWI827912B publication Critical patent/TWI827912B/zh

Links

Images

Classifications

    • 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
    • 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/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00246Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a local device, e.g. device key initially stored by the player or by the recorder
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00478Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier wherein contents are decrypted and re-encrypted with a different key when being copied from/to a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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

Landscapes

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

Abstract

電子裝置包含第一非揮發性記憶體及應用電路。第一非揮發性記憶體儲存使用全域密鑰加密的加密資料。應用電路包含第二非揮發性記憶體、解密單元、本地密鑰單元及加密單元。第二非揮發性記憶體儲存全域密鑰。解密單元耦接於第一非揮發性記憶體及第二非揮發性記憶體。解密單元從第二非揮發性記憶體擷取全域密鑰,及使用全域密鑰對加密資料進行解密以產生明文資料。本地密鑰單元產生或儲存本地密鑰。加密單元耦接於本地密鑰單元。加密單元使用本地密鑰對明文資料加密以產生第二加密資料,及用第二加密資料覆蓋第一非揮發性記憶體中的加密資料。

Description

電子裝置及操作電子裝置的方法
本發明關於一種電子裝置,特別是一種能通過全域加密及局部加密保護機密資料的電子裝置。
韌體是一種低階電腦軟體,通常用以對電子裝置進行初始設置。由於每次電子裝置開機時都會使用韌體,因此在關機時應該保留韌體。同時,韌體對於電子裝置的啟動程序來說至關重要。若沒有正確的韌體,則無法將電子裝置設置於正確的運作條件,造成電子裝置無法正常運作。韌體通常儲存在快閃記憶體中。
由於韌體的作用至關重要,因此駭客會持續試圖存取韌體。例如,當將韌體下載到快閃記憶體時,駭客可能試圖在工廠中複製韌體,或試圖將韌體從授權的電子裝置複製到未授權的電子裝置。因此,需要使用加密技術來保護韌體不受駭客攻擊。
實施例揭露一種電子裝置,包含第一非揮發性記憶體及應用電路。第一非揮發性記憶體用以儲存使用全域密鑰進行加密的第一加密資料。應用電路,包含第二非揮發性記憶體、第一解密單元、本地密鑰單元及加密單元。第二非揮發性記憶體,用以儲存全域密鑰。第一解密單元,耦接於第一非揮發性記憶體及第二非揮發性記憶體,用以從第二非揮發性記憶體擷取全域密鑰,及 使用全域密鑰對第一加密資料進行解密以產生明文資料。本地密鑰單元,用以產生或儲存本地密鑰。加密單元,耦接於本地密鑰單元,用以使用本地密鑰對明文資料進行加密以產生第二加密資料,及使用第二加密資料覆蓋第一非揮發性記憶體中的第一加密資料。
實施例另揭露一種操作電子裝置的方法,電子裝置包含第一非揮發性記憶體及應用電路,應用電路包含第二非揮發性記憶體、第一解密單元及加密單元,方法包含第一非揮發性記憶體儲存使用全域密鑰進行加密的第一加密資料,第二非揮發性記憶體儲存全域密鑰,第一解密單元從第二非揮發性記憶體中獲取全域密鑰,第一解密單元使用全域密鑰對第一加密資料進行解密以產生明文資料,加密單元使用本地密鑰對明文資料進行加密以產生第二加密資料,及加密單元使用第二加密資料覆蓋第一非揮發性記憶體中的第一加密資料。
100:電子裝置
110,121:非揮發性記憶體
120:應用電路
122,125:解密單元
123:本地密鑰單元
124:加密單元
126:功能單元
AF:反熔絲控制線
AT1,AT2:反熔絲電晶體
BL1,BL2:位元線
ED1,ED2:加密資料
GK1:全域密鑰
IL:隔離控制線
IT:隔離電晶體
LK1:本地密鑰
P1:PUF單元
PD1:明文資料
T1,T2:選擇電晶體
WL:字線
200:控制方法
S210至S290:步驟
第1圖顯示本發明實施例中的一種電子裝置。
第2圖顯示第1圖中的本地密鑰單元之一種PUF單元。
第3圖顯示第1圖中電子裝置的控制方法之流程圖。
第1圖顯示本發明實施例中的一種電子裝置100。電子裝置100包含非揮發性記憶體110及應用電路120。在一些實施例中,應用電路120可以是特定應用積體電路(application specific integrated circuit,ASIC),且非揮發性記憶體110可儲存應用電路120所需的韌體。例如,非揮發性記憶體 110可包含快閃記憶體及/或安全數位卡(secure digital memory card,SD卡)。
在一些實施例中,非揮發性記憶體110及應用電路120可由不同的公司設計及製造。在此情況下,為了防止駭客入侵韌體,可使用全域密鑰GK1將韌體加密為加密資料ED1,並將加密資料ED1提供給工廠。因此,負責將加密資料ED1儲存到非揮發性記憶體110的工廠將僅收到加密資料ED1,而不會收到韌體的明文資料PD1,因此提高韌體下載過程中的資訊安全性。
在此情況下,為了對加密資料ED1進行解密,全域密鑰GK1將被儲存到應用電路120。應用電路120包含非揮發性記憶體121、解密單元122、本地密鑰單元123及加密單元124。解密單元122可耦接於非揮發性記憶體110及非揮發性記憶體121。非揮發性記憶體121可儲存全域密鑰GK1,用以對韌體進行加密以用以產生加密資料ED1。因此,解密單元122可從非揮發性記憶體121中擷取全域密鑰GK1,並使用全域密鑰GK1對加密資料ED1進行解密,以獲得韌體的明文資料PD1。在一些實施例中,非揮發性記憶體121可包含一次性可編程(one-time programmable,OTP)非揮發性記憶體,以將全域密鑰GK1儲存在安全且無法改變的環境中。
在第1圖,加密單元124可耦接於本地密鑰單元123。本地密鑰單元123可產生或儲存本地密鑰LK1,且加密單元124可在獲得韌體的明文資料PD1之後,使用本地密鑰LK1對明文資料PD1進行加密,以產生第二加密資料ED2。之後,加密單元124可使用第二加密資料ED2覆蓋非揮發性記憶體110中的第一加密資料ED1。在一些實施例中,加密單元124可依據具有關聯資料的認證加密(authenticated encryption with associated data,AEAD)算法來加密明文資料PD1以產生加密資料ED2。例如,加密單元124可使用由高級加密標準(advanced encryption standard,AES)提供的伽羅瓦/計數器 模式(Galois/counter mode,GCM)來進行加密。在一些實施例中,由於GCM加密方法已經包含了伽羅瓦雜湊(GHASH,Galois HASH)及伽羅瓦訊息認證碼(Galois Message Authentication Code,GMAC)技術,因此可保護韌體不被修改。因此,加密單元124可採用GCM加密方法來使用本地密鑰LK1加密明文資料PD1,以提供完整的保護。在一些實施例中,可使用相同的加密算法來產生加密資料ED1及加密資料ED2。然而,在一些其他實施例中,可使用相異的加密算法來產生加密資料ED1及加密資料ED2。
此外,由於本地密鑰LK1由本地密鑰單元123於本地儲存或產生,因此使用其他本地密鑰的其他電子裝置無法解密使用本地密鑰LK1加密的加密資料ED2。亦即,即使駭客可從電子裝置100的非揮發性記憶體110中下載加密資料ED2,但若沒有本地密鑰LK1,加密資料ED2也無法在其他電子裝置使用。因此,可減少韌體在未授權裝置上的非法傳播。
在一些實施例中,本地密鑰單元123可包含物理不可複製函數(physically unclonable function,PUF)單元。每個物理不可複製函數單元都可依據製造過程中所產生之固有且不可控制的物理特性來產生隨機位元。因此,本地密鑰單元123可產生唯一且不可預測的的本地密鑰LK1,藉以增強加密單元124的加密強度。然而,在一些其他實施例中,本地密鑰LK1可由其他系統預先提供並可於稍後儲存到本地密鑰單元123。
第2圖顯示本地密鑰單元123中之一種PUF單元P1。PUF單元P1包含第一選擇電晶體T1、第二選擇電晶體T2、隔離電晶體IT、第一反熔絲電晶體AT1及第二反熔絲電晶體AT2。第一選擇電晶體T1具有第一端,耦接於第一位元線BL1;第二端;及控制端,耦接於字線WL。第一反熔絲電晶體AT1具有第一端,耦接於第一選擇電晶體T1的第二端;第二端;及控制端,耦接於反熔絲控制線AF。第二反熔絲電晶體AT2具有第一端;第二端;及控制端,耦接於反熔絲控 制線AF。第二選擇電晶體T2具有第一端,耦接於第二位元線BL2;第二端,耦接於第二反熔絲電晶體AT2的第一端;及控制端,耦接於字線WL。隔離電晶體IT具有第一端,耦接於第一反熔絲電晶體AT1的第二端;第二端,耦接於第二反熔絲電晶體AT2的第二端;及控制端,耦接於隔離控制線IL。
在PUF單元P1的登記操作期間,位元線BL1及BL2處於低電壓,字線WL處於高電壓,隔離控制線IL處於高電壓,且反熔絲控制線AF處於編程電壓,編程電壓高於高壓。在此情況下,隔離電晶體IT及選擇電晶體T1及T2導通,因此低電壓及編程電壓都會施加在反熔絲電晶體AT1及AT2上。施加在反熔絲電晶體AT1及AT2上的大電壓差足以使反熔絲電晶體AT1及AT2斷開。然而,由於在反熔絲電晶體AT1及AT2的製造過程中造成的物理特性,所以反熔絲電晶體AT1及AT2中的其中一者會先斷開,且先斷開的反熔絲電晶體會減少電壓應力,防止另一反熔絲電晶體斷開。也就是說,在登記操作之後,反熔絲電晶體AT1及AT2將處於不同的條件:一者斷開,一者不斷開。
一旦登記了PUF單元P1,便可通過讀取操作從位元線BL1及BL2讀取位資料。在讀取操作期間,字線WL處於高電壓,隔離控制線IL處於低電壓,反熔絲控制線AF處於讀取電壓,讀取電壓實質上等於字線WL上的高電壓。在此情況下,隔離電晶體IT截止,選擇電晶體T1及T2導通,並且反熔絲電晶體AT1及AT2會依據各自狀況產生電流。即反熔絲電晶體AT1及AT2所產生的電流的強度與熔絲電晶體AT1及AT2是否斷開有關。因此,感測放大器可用以感測位元線BL1及BL2上的電流之間的差值,用以讀取PUF單元P1中的登記位元資料。
第2圖中所示的PUF單元P1僅為一種實施例,在一些其他實施例中,本地密鑰單元123可包含其他類型的PUF單元,用以產生本地密鑰LK1。
在第1圖,應用電路120可另包含解密單元125及功能單元126。解密單元125可耦接於非揮發性記憶體110及本地密鑰單元123。解密單元125可 從本地密鑰單元123擷取本地密鑰LK1,且可使用本地密鑰LK1對加密資料ED2進行解密以產生明文資料PD1。因此,功能單元126可依據明文資料PD1執行操作。功能單元126可例如為但不限於處理器或控制器,並且明文資料PD1可以是韌體,用以設置功能單元126及/或電子裝置100。
在一些實施例中,應用電路120及非揮發性記憶體110可設置在兩個不同的晶片中,且可由不同的公司製造或設計。此外,在一些實施例中,可於應用電路120的封裝過程之前或期間將全域密鑰GK1預安裝到非揮發性記憶體121中,並且可在電子裝置100的晶片組裝程序之前將加密資料ED1預安裝到非揮發性記憶體110中。因此,可防止明文資料PD1由工廠洩漏。另外,在將電子裝置100交付給用戶之前,解密單元122可使用全域密鑰GK1對加密資料ED1進行解密以產生明文資料PD1,且加密單元124可使用本地密鑰LK1對明文資料PD1重新加密。因此,明文資料PD1可受到保護而免於被其他未經授權的電子裝置使用。
在本實施方式中,明文資料PD1可以是應用電路120所需的韌體。然而,在一些其他實施例中,明文資料PD1可以是應用電路120所需的其他類型的重要資訊。
第3圖顯示電子裝置100的控制方法200之流程圖。方法200包含步驟S210至S290。
S210:使用全域密鑰GK1對明文資料PD1進行加密,產生加密資料ED1;S220:非揮發性記憶體110儲存用全域密鑰GK1加密的加密資料ED1;S230:非揮發性記憶體121儲存全域密鑰GK1;S240:啟動電子裝置100; S250:解密單元122從非揮發性記憶體121中獲取全域密鑰GK1;S252:解密單元122使用全域密鑰GK1對加密資料ED1進行解密;S260:使用全域密鑰GK1解密後,若成功獲得明文資料PD1,則繼續步驟S262,否則繼續步驟S270;S262:加密單元124使用本地密鑰LK1對明文資料PD1進行加密,以產生加密資料ED2;S264:加密單元124使用加密資料ED2覆蓋非揮發性記憶體110中的加密資料ED1,跳至步驟S250;S270:解密單元125使用本地密鑰LK1對加密資料ED2進行解密;S280:在使用本地密鑰LK1解密後,若成功獲得明文資料PD1,則繼續步驟S282,否則跳至步驟S290;S282:功能單元126依據明文資料PD1進行操作;S290:終止程序。
在步驟S210中,使用全域密鑰GK1對明文資料PD1進行加密以產生加密資料ED1,因此在步驟S220中,當請求工廠將資料儲存到非揮發性記憶體110時,工廠僅會收到代替明文資料PD1的加密資料ED1,進而提高了韌體下載過程的資訊安全性。
另外,為了正確解密加密資料ED1,可在步驟S230中將全域密鑰GK1儲存到非揮發性記憶體121。在一些實施例中,應用電路120及非揮發性記憶體110可設置在兩個不同的晶片中,且可由不同的工廠製造。因此,在將晶片整合為電子裝置100之前,可在不同的工廠執行步驟S220及S230。在此情況下,負責將加密資料ED1儲存到非揮發性記憶體110的工廠不會收到全域密鑰GK1,而負責將全域密鑰GK1儲存到非揮發性記憶體121的工廠不會收到加密資料ED1。因此,可保護明文資料PD1免受駭客攻擊。
在一些實施例中,在將電子裝置100送給用戶之前,可將與全域密鑰GK1相對應的加密資料ED1替換為與本地密鑰LK1相對應的加密資料ED2。因此,當用戶收到電子裝置100時,僅須使用電子裝置100所產生的唯一本地密鑰LK1對儲存在非揮發性記憶體110中的加密資料ED2進行加密,其他沒有本地密鑰LK1的電子裝置便無法使用及解密加密資料ED2。
例如,在將非揮發性記憶體110及應用電路120封裝為電子裝置100之後,可在運送到客戶之前在步驟S240中啟動電子裝置。在此情況下,解密單元122可在步驟S250中從非揮發性記憶體121中擷取全域密鑰GK1,並且在步驟S252中用全域密鑰GK1對加密資料ED1進行解密。在步驟S260中,檢查解密結果以確認是否已成功獲得明文資料PD1。在一些實施例中,明文資料PD1可以是用以設置應用電路120的韌體,因此若解密成功,則應用電路120應能夠識別明文資料PD1。
若成功獲得明文資料PD1,則在步驟S262及S264中,使用本地密鑰LK1對明文資料PD1進行加密以產生加密資料ED2,並將加密資料ED1替換為加密資料ED2。在將加密資料ED2儲存到非揮發性記憶體110之後,可重啟應用電路120,且可再次執行步驟S250。然而,這次在步驟S260中,步驟S252中的解密可能失敗,且無法成功獲得明文資料PD1。因此,在步驟S260之後,會執行步驟S270以使用本地密鑰LK1解密加密資料ED2。在此情況下,若可正確解密加密資料ED2以獲得具有本地密鑰LK1的明文資料PD1,則將執行步驟S282,因此功能單元126可相應地執行操作。若解密失敗,則程序會終止。亦即,若本地密鑰LK1與加密資料ED2不匹配,則應用電路120將無法使用正確的韌體初始化,因此無法運作。因此,可減少韌體在未授權裝置上的非法傳播。
綜上所述,電子裝置及其操作方法可在不同階段用全域密鑰及本地密鑰對機密資料進行加密。因此,可保護機密資料不受駭客攻擊。 以上該僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100:電子裝置
110,121:非揮發性記憶體
120:應用電路
122,125:解密單元
123:本地密鑰單元
124:加密單元
126:功能單元
ED1,ED2:加密資料
GK1:全域密鑰
LK1:本地密鑰
PD1:明文資料

Claims (16)

  1. 一種電子裝置,包含:一第一非揮發性記憶體,用以儲存使用一全域密鑰進行加密的一第一加密資料;及一應用電路,包含:一第二非揮發性記憶體,用以儲存該全域密鑰;一第一解密單元,耦接於該第一非揮發性記憶體及該第二非揮發性記憶體,用以從該第二非揮發性記憶體擷取該全域密鑰,及使用該全域密鑰對該第一加密資料進行解密以產生明文資料;一本地密鑰單元,用以產生或儲存一本地密鑰;一加密單元,耦接於該本地密鑰單元,用以使用該本地密鑰對該明文資料進行加密以產生一第二加密資料,及使用該第二加密資料覆蓋該第一非揮發性記憶體中的該第一加密資料;一第二解密單元,耦接於該第一非揮發性記憶體,並用以利用該本地密鑰對該第二加密資料進行解密以產生該明文資料;及一功能單元,用以依據該明文資料執行操作;其中在該第二加密資料覆蓋該第一加密資料之後,該應用電路用以被重啟,該第一解密單元用以從該第二非揮發性記憶體擷取該全域密鑰,並使用該全域密鑰進行解密;若該第一解密單元使用該全域密鑰解密失敗,則該第二解密單元用以利用該本地密鑰解密該第二加密資料以產生該明文資料;及若該第二解密單元解密成功,則該功能單元用以依據該明文資料執行該操作。
  2. 如請求項1所述之電子裝置,其中,該明文資料包含用以設置該功能單元的韌體。
  3. 如請求項1所述之電子裝置,其中,該加密單元依據一具有關聯資料的認證加密(authenticated encryption with associated data,AEAD)算法,對該明文進行加密,以產生該第二加密資料。
  4. 如請求項1所述之電子裝置,其中,該第一非揮發性記憶體包含一快閃記憶體及/或安全數位卡(secure digital memory card,SD卡)。
  5. 如請求項1所述之電子裝置,其中,該第二非揮發性記憶體包含一一次性可編程(one-time programmable,OTP)非揮發性記憶體。
  6. 如請求項1所述之電子裝置,其中:該應用電路及該第一非揮發性記憶體設置在二相異的晶片中。
  7. 如請求項1所述之電子裝置,其中:該全域密鑰在該應用電路的封裝過程之前或期間被儲存到該第二非揮發性記憶體中。
  8. 如請求項1所述之電子裝置,其中,該本地密鑰單元包含一物理不可複製函數(physically unclonable function,PUF)單元。
  9. 一種操作電子裝置的方法,該電子裝置包含一第一非揮發性記憶體及一應用電路,該應用電路包含一第二非揮發性記憶體、一第一解密單元、一加密單元、一第二解密單元及一功能單元,該方法包含:該第一非揮發性記憶體儲存使用一全域密鑰進行加密的第一加密資料;該第二非揮發性記憶體儲存該全域密鑰;該第一解密單元從該第二非揮發性記憶體中獲取該全域密鑰;該第一解密單元使用該全域密鑰對該第一加密資料進行解密以產生明文資料;該加密單元使用一本地密鑰對該明文資料進行加密以產生第二加密資料;該加密單元使用該第二加密資料覆蓋該第一非揮發性記憶體中的該第一加密資料;在該第二加密資料覆蓋該第一加密資料之後,重啟該應用電路,該第一解密單元從該第二非揮發性記憶體擷取該全域密鑰,並使用該全域密鑰進行解密;若該第一解密單元使用該全域密鑰解密失敗,則該第二解密單元利用該本地密鑰解密該第二加密資料以產生該明文資料;及若該第二解密單元解密成功,則該功能單元依據該明文資料執行操作。
  10. 如請求項9所述之方法,其中,該明文資料包含用以設置該功能單元的韌體。
  11. 如請求項9所述之方法,其中,該加密單元使用該本地密鑰對該明文資料進行加密以產生該第二加密資料包含:該加密單元依據一具有關聯資料的認證加密(authenticated encryption with associated data,AEAD)算法,對該明文資料進行加密,以產生該第二加密資料。
  12. 如請求項9所述之方法,其中,該第一非揮發性記憶體包含一快閃記憶體及/或一安全數位卡。
  13. 如請求項9所述之方法,其中,該第二非揮發性記憶體包含一一次性可編程非揮發性記憶體。
  14. 如請求項9所述之方法,其中:該應用電路及該第一非揮發性記憶體設置在二相異的晶片中。
  15. 如請求項9所述之方法,其中該第二非揮發性記憶體儲存該全域密鑰係在該應用電路的一封裝程序之前或之中執行。
  16. 如請求項9所述之方法,其中,該應用電路另包含一本地密鑰單元,該本地密鑰單元包含一物理不可複製函數單元,且該方法另包含該物理不可複製函數單元產生該本地密鑰。
TW110107213A 2020-06-04 2021-03-02 電子裝置及操作電子裝置的方法 TWI827912B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202063034410P 2020-06-04 2020-06-04
US63/034,410 2020-06-04
US17/105,476 2020-11-25
US17/105,476 US11502832B2 (en) 2020-06-04 2020-11-25 Electronic device capable of protecting confidential data

Publications (2)

Publication Number Publication Date
TW202147124A TW202147124A (zh) 2021-12-16
TWI827912B true TWI827912B (zh) 2024-01-01

Family

ID=73694779

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110107213A TWI827912B (zh) 2020-06-04 2021-03-02 電子裝置及操作電子裝置的方法

Country Status (5)

Country Link
US (1) US11502832B2 (zh)
EP (1) EP3920066B1 (zh)
JP (1) JP7170999B2 (zh)
CN (1) CN113761598B (zh)
TW (1) TWI827912B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220393859A1 (en) * 2021-06-07 2022-12-08 Micron Technology, Inc. Secure Data Storage with a Dynamically Generated Key

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103679004A (zh) * 2012-09-19 2014-03-26 Nxp股份有限公司 用于安全地更新计算设备中的固件的方法及系统
TWI525631B (zh) * 2011-11-14 2016-03-11 Lsi公司 儲存裝置及其操作方法
TW201702868A (zh) * 2015-07-09 2017-01-16 捷鼎國際股份有限公司 儲存裝置之韌體更新架構及方法
TW202011248A (zh) * 2017-03-07 2020-03-16 慧榮科技股份有限公司 資料儲存裝置以及其操作方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4847902A (en) 1984-02-10 1989-07-11 Prime Computer, Inc. Digital computer system for executing encrypted programs
US6259378B1 (en) 1997-09-22 2001-07-10 Sandel Avionics Display system for airplane cockpit or other vehicle
US7127610B1 (en) * 1999-06-02 2006-10-24 Nortel Networks Limited Apparatus and method of implementing multicast security between multicast domains
US6983374B2 (en) 2000-02-14 2006-01-03 Kabushiki Kaisha Toshiba Tamper resistant microprocessor
GB2424557A (en) 2005-03-24 2006-09-27 Sony Uk Ltd FPGA with hardware decryptor for configuration programme which adds second key to itself before re-encrypting and overwriting itself in memory when run
JP2008102618A (ja) 2006-10-17 2008-05-01 Toshiba Corp 電子機器およびファームウェア保護方法
US20120079270A1 (en) * 2010-09-29 2012-03-29 Navin Patel Hardware-Assisted Content Protection for Graphics Processor
US10771448B2 (en) 2012-08-10 2020-09-08 Cryptography Research, Inc. Secure feature and key management in integrated circuits
US10181054B1 (en) * 2017-01-13 2019-01-15 Parallels International Gmbh System and method for secure file management by a local client device
DE102018120328A1 (de) * 2017-08-24 2019-02-28 Infineon Technologies Ag Sicherheitseinrichtung mit erweiterter Zuverlässigkeit
EP3460705B1 (en) 2017-09-25 2023-07-12 Siemens Aktiengesellschaft Distributed deployment of unique firmware
CN111201553B (zh) * 2017-10-16 2022-04-22 华为技术有限公司 一种安全元件及相关设备
US10657261B2 (en) * 2017-11-30 2020-05-19 Mocana Corporation System and method for recording device lifecycle transactions as versioned blocks in a blockchain network using a transaction connector and broker service
EP3624392B1 (en) * 2018-09-17 2023-05-10 Secure-IC SAS Methods and devices for secure secret key generation
CN110932853B (zh) * 2019-12-06 2022-12-06 深圳市纽创信安科技开发有限公司 一种基于可信模块的密钥管理装置和密钥管理方法
KR20210097537A (ko) * 2020-01-30 2021-08-09 삼성전자주식회사 물리적 복제 방지 기능에 기초하여 마스킹 데이터를 생성하는 보안 장치 및 이의 동작 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI525631B (zh) * 2011-11-14 2016-03-11 Lsi公司 儲存裝置及其操作方法
CN103679004A (zh) * 2012-09-19 2014-03-26 Nxp股份有限公司 用于安全地更新计算设备中的固件的方法及系统
TW201702868A (zh) * 2015-07-09 2017-01-16 捷鼎國際股份有限公司 儲存裝置之韌體更新架構及方法
TW202011248A (zh) * 2017-03-07 2020-03-16 慧榮科技股份有限公司 資料儲存裝置以及其操作方法

Also Published As

Publication number Publication date
US20210385072A1 (en) 2021-12-09
JP2021190081A (ja) 2021-12-13
JP7170999B2 (ja) 2022-11-15
US11502832B2 (en) 2022-11-15
EP3920066A1 (en) 2021-12-08
CN113761598A (zh) 2021-12-07
CN113761598B (zh) 2024-05-14
EP3920066B1 (en) 2024-03-06
TW202147124A (zh) 2021-12-16

Similar Documents

Publication Publication Date Title
US10110380B2 (en) Secure dynamic on chip key programming
US20170126414A1 (en) Database-less authentication with physically unclonable functions
US10915464B2 (en) Security system using random number bit string
CN104252881B (zh) 半导体集成电路及系统
TWI385554B (zh) 未知安全金鑰下開機影像之安全更新
US7165180B1 (en) Monolithic semiconductor device for preventing external access to an encryption key
Eisenbarth et al. Reconfigurable trusted computing in hardware
US20080072068A1 (en) Methods and apparatuses for securing firmware image download and storage by distribution protection
US20080025503A1 (en) Security method using self-generated encryption key, and security apparatus using the same
US9830479B2 (en) Key storage and revocation in a secure memory system
CN113656086A (zh) 安全存储及加载固件的方法及电子装置
CN107925574B (zh) 秘密数据的安全编程
TWI827912B (zh) 電子裝置及操作電子裝置的方法
US10880082B2 (en) Rekeying keys for encrypted data in nonvolatile memories
US11874928B2 (en) Security device, electronic device, secure boot management system, method for generating boot image, and method for executing boot chain
EP1640844A1 (en) Secure OTP using external memory
KR100964845B1 (ko) 공정편차에 기반한 보안 시스템 및 방법
US11893115B2 (en) Method for providing a secret unique key for a volatile FPGA
TW201901442A (zh) 電子系統及其操作方法
US20180248688A1 (en) Cryptographic management of lifecycle states
CN109286488B (zh) Hdcp关键密钥保护方法
US20090202077A1 (en) Apparatus and method for secure data processing
TW201642621A (zh) 金鑰保護裝置及金鑰保護方法
JP2019121884A (ja) 集積回路、制御装置、情報配信方法及び情報配信システム
CN113918930A (zh) 用于设置密码密钥的权限的方法、程序以及密码处理系统