TW202147100A - 積體電路、用於安全地管理用於資料安全的多個密鑰的系統以及由積體電路執行的方法 - Google Patents

積體電路、用於安全地管理用於資料安全的多個密鑰的系統以及由積體電路執行的方法 Download PDF

Info

Publication number
TW202147100A
TW202147100A TW109132804A TW109132804A TW202147100A TW 202147100 A TW202147100 A TW 202147100A TW 109132804 A TW109132804 A TW 109132804A TW 109132804 A TW109132804 A TW 109132804A TW 202147100 A TW202147100 A TW 202147100A
Authority
TW
Taiwan
Prior art keywords
processor
key
program image
integrated circuit
secure processor
Prior art date
Application number
TW109132804A
Other languages
English (en)
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 TW202147100A publication Critical patent/TW202147100A/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/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
    • 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
    • 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
    • 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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • 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/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/74Protecting 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 operating in dual or compartmented mode, i.e. at least one secure mode
    • 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/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/76Protecting 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 application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • 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/86Secure or tamper-resistant housings
    • G06F21/87Secure or tamper-resistant housings by means of encapsulation, e.g. for integrated 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0827Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Abstract

一種積體電路包括系統記憶體、安全處理器及非安全處理器。基於使用由安全處理器產生的密鑰,對積體電路的攻擊變得更加困難。作為實例,安全處理器自系統記憶體讀取程式影像,且基於程式影像產生密鑰。在一些情形中,為非安全處理器與安全處理器之間的通訊提供專用通訊通道。專用通道可用於將密鑰提供至非安全處理器,以用於執行安全操作。

Description

積體電路、用於安全地管理用於資料安全的多個密鑰的系統以及由積體電路執行的方法
本文中所揭露的實施例是有關於資料安全,且更具體而言是有關於一種用於安全地管理用於資料安全的密鑰的裝置及方法。 [相關申請案的交叉參考]
本申請案主張在2020年1月8日在韓國智慧財產局提出申請的韓國專利申請案第10-2020-0002692號的權益,所述韓國專利申請案的揭露內容全文併入本案供參考。
在用於保護資料的資料安全中,可一同使用軟體與硬體二者來保護資料免受進階外部攻擊。在資料安全中,可使用密鑰對資料進行加密或解密,且因此,藉由使用與有效密鑰不同的密鑰(即與用於資料加密的密鑰不同的密鑰)來對資料進行解密可能不容易。因此,在資料安全中需要安全地管理密鑰以抵抗外部攻擊。
本申請案提供一種藉由使用安全處理器來安全地管理用於資料安全的密鑰免受外部攻擊的裝置及方法。
本文中提供一種積體電路,所述積體電路包括:第一處理器,被配置以執行第一程式影像以執行安全操作,所述第一程式影像儲存於系統記憶體中;第二處理器,被配置以:讀取第二程式影像的至少一部分,所述第二程式影像儲存於所述系統記憶體中,以及基於所述第二程式影像的所述至少一部分產生密鑰;以及專用通訊通道,用於所述第一處理器與所述第二處理器之間的通訊,其中所述第一處理器更被配置以:經由所述專用通訊通道接收所述密鑰,以及基於所述密鑰執行所述安全操作。
本文中亦提供一種用於安全地管理用於資料安全的多個密鑰的系統,所述系統包括:積體電路,包括第一處理器及第二處理器,其中所述第一處理器及所述第二處理器被配置以經由專用通訊通道彼此進行通訊;系統記憶體,被配置以儲存可由所述第一處理器執行的程式影像;以及非揮發性記憶體,其中所述非揮發性記憶體只能由所述第二處理器專屬存取,且被配置以儲存所述程式影像的加載資訊,其中所述第二處理器更被配置以:基於所述加載資訊,自所述系統記憶體讀取所述程式影像的至少一部分;基於所述程式影像的所述至少一部分產生密鑰,以及將所述密鑰提供至所述第一處理器,且所述第一處理器更被配置以基於所述密鑰執行安全操作。
本文中提供一種由積體電路執行的方法,所述積體電路包括第一處理器及第二處理器,所述方法包括:由所述第二處理器自系統記憶體讀取程式影像的至少一部分,所述程式影像可由所述第一處理器執行;由所述第二處理器基於所述程式影像的所述至少一部分產生密鑰;以及由所述第一處理器基於所述密鑰執行安全操作。
圖1是示出根據示例性實施例的系統的實例的方塊圖。在一些實施例中,系統10可包括但不限於固定式計算系統或其子系統,例如伺服器、桌上型電腦(desktop computer)或資訊亭(kiosk)。在一些實施例中,系統10可包括但不限於可攜式計算系統或其子系統,例如行動電話、可穿戴元件或膝上型電腦(laptop computer)。在一些實施例中,系統10可包括但不限於與獨立的計算系統不同的系統中所包括的子系統,例如家用電器、工業裝置或車輛。如圖1中所示,系統10可包括積體電路12、系統記憶體14、安全非揮發性記憶體16及系統儲存器18。
積體電路12可包括非安全處理器12_2及安全處理器12_4。在本文中,非安全處理器12_2可被稱為第一處理器,且安全處理器12_4可被稱為第二處理器。可藉由半導體製程製造積體電路12,且在一些實施例中,可將非安全處理器12_2及安全處理器12_4整合至單個晶片或晶粒中。在一些實施例中,積體電路12可包括於與系統10的其他組件(即系統記憶體14、安全非揮發性記憶體16及系統儲存器18)中的至少一者的封裝相同的封裝中。另外,在一些實施例中,積體電路12可安裝於板上且可經由形成於所述板上的圖案與安裝於所述板上的其他組件(即系統記憶體14、安全非揮發性記憶體16及系統儲存器18)中的至少一者進行通訊。
非安全處理器12_2可與系統記憶體14進行通訊且可執行程式影像(即儲存於系統記憶體14中的程式影像中所包括的一系列指令)。舉例而言,積體電路12可包括提供對系統記憶體14的存取的組件(例如,圖12中的122_5及/或122_4),且非安全處理器12_2可包括能夠執行所述指令的至少一個核心。在本文中,非安全處理器12_2藉由執行程式影像中所包括的指令來執行操作的陳述可被簡單地表達為非安全處理器12_2或程式影像執行操作的陳述。安全操作可為例如用於機密性的資料加密或用於資料完整性的簽名的產生。
為達成資料安全,安全處理器12_4與非安全處理器12_2可一同包括於積體電路12中。系統10可出於各種目的而對需要安全的資料進行處理。舉例而言,系統10可安全地處理與系統10的使用者相關的獨特資訊,且可安全地處理與系統10的製造商或有效供應商相關的獨特資訊。可藉由使用密鑰對需要安全的資料進行加密,且可藉由使用密鑰對加密資料進行解密並使用加密資料,且接著可再次加密。可基於任何密碼演算法對資料進行加密及解密。在一些實施例中,可藉由對稱密鑰密碼演算法(例如資料加密標準(Data Encryption Standard,DES)或進階加密標準(Advanced Encryption Standard,AES))或公用密鑰密碼演算法(例如R-S-A不對稱三式加密演算法(Rivest-Shamir-Adleman,RSA)或橢圓曲線技術(elliptic curve technique))對資料進行加密及解密。
為增強需要安全的資料及/或用於密碼演算法的密鑰(或秘密密鑰)的安全,安全處理器12_4可形成於與積體電路12的其他組件(例如,非安全處理器12_2)在實體上隔離的區中。安全處理器12_4可包括不能由積體電路12的其他組件存取的組件且可單獨地執行操作。舉例而言,由非安全處理器12_2執行的安全程式(或安全軟體)在存取安全處理器12_4中所包括的組件時亦可能受到限制。因此,安全處理器12_4可顯著改善系統10的安全級別。如圖1中所示,安全處理器12_4可經由作為專用通訊通道的專用物理匯流排(dedicated physical bus)12_6而與非安全處理器12_2進行通訊,且可只能專屬存取安全非揮發性記憶體16。在一些實施例中,只能專屬存取指示非安全處理器12_2無法直接存取安全非揮發性記憶體16中的資料。另外,如圖1中所示,安全處理器12_4可讀取儲存於系統記憶體14中的資料,例如程式影像。在一些實施例中,與非安全處理器12_2相似,安全處理器12_4可包括能夠執行一系列指令的至少一個核心。安全處理器12_4的實例將在以下參照圖3進行闡述。
安全處理器12_4可產生由非安全處理器12_2執行的程式影像使用的密鑰,且可將所述密鑰提供至非安全處理器12_2。舉例而言,安全處理器12_4可產生用於對用於辨識系統10的使用者的使用者辨識資訊進行加密或解密的密鑰,且可將所述密鑰提供至非安全處理器12_2。另外,安全處理器12_4可產生用於對用於系統10的軟體更新的使用者辨識資訊進行加密或解密的密鑰,且可將所述密鑰提供至非安全處理器12_2。在本文中,將密鑰用於資料安全的操作可被稱為安全操作,且由非安全處理器12_2執行以執行安全操作的程式影像可被稱為安全程式、安全應用或安全軟體。
安全處理器12_4可執行被提供至非安全處理器12_2的密鑰的連結(binding)。本文中所使用的用語「連結」可指使密鑰取決於特定條件(即連結資訊),且基於不同的連結資訊產生的密鑰可彼此不同。因此,被產生為取決於獨特連結資訊的密鑰可增強資料安全。當基於系統10或積體電路12特有的資訊(例如,圖9中的KEYHW )作為連結資訊而產生密鑰時,儘管會防止由系統10加密的資料被另一系統解密,然而可能存在連結的密鑰被系統10上運行的駭侵程式重新使用的風險。因此,可能會需要連結資訊包括由使用密鑰的實體(即由非安全處理器12_2)執行的安全程式特有的資訊。
如以下參照各圖所述,安全處理器12_4可自系統記憶體14讀取程式影像的至少一部分,且可基於所讀取的程式影像的所述至少一部分來產生密鑰。亦即,安全處理器12_4可基於儲存於系統記憶體14中的程式影像的所述至少一部分來直接產生連結資訊。因此,在非安全處理器12_2獲得或產生連結資訊時,或者在非安全處理器12_2將連結資訊提供至安全處理器12_4時,可去除連結資訊被暴露的風險。另外,當程式影像的至少一部分被例如駭侵程式等不正當嘗試改變時,安全處理器12_4可產生修改的連結資訊,且因此可產生不同的密鑰,由此可維護資料安全。
系統記憶體14可儲存可由非安全處理器12_2執行的至少一個程式影像。在一些實施例中,系統記憶體14可包括但不限於揮發性記憶體元件,例如動態隨機存取記憶體(dynamic random access memory,DRAM)或靜態隨機存取記憶體(static random access memory,SRAM)。在一些實施例中,系統記憶體14可包括但不限於非揮發性記憶體元件,例如快閃記憶體(flash memory)、電性可抹除可程式化唯讀記憶體(electrically erasable programmable read-only memory,EEPROM)、矽-氧化物-氮化物-氧化物-矽(silicon-oxide-nitride-oxide-silicon,SONOS)記憶體、聚合物記憶體、磁性隨機存取記憶體(magnetic random access memory,MRAM)、相變隨機存取記憶體(phase-change random access memory,PRAM)或電阻式隨機存取記憶體(resistive random access memory,RRAM)。
程式影像可包括可由非安全處理器12_2執行的一系列指令。舉例而言,如圖1中所示,系統記憶體14可儲存啟動加載程式(bootloader)BL、作業系統OS、應用APP1及APP2等作為程式影像。啟動加載程式BL可由非安全處理器12_2執行,進而將隨後要執行的程式影像(例如,OS)加載至系統記憶體14中。作業系統OS可提供系統10中所包括的硬體的驅動器,且可執行應用APP1及APP2的管理(例如,安裝、刪除或排程)。程式影像亦可被稱為軟體影像、二進制影像或二進制程式影像,且程式影像的示例性結構將在以下參照圖4進行闡述。
安全非揮發性記憶體16可只能由安全處理器12_4專屬存取,且安全非揮發性記憶體16及安全處理器12_4可經由安全通道彼此進行通訊。在一些實施例中,安全處理器12_4可將在安全處理器12_4的內部加密的資料寫入至安全非揮發性記憶體16,且可對自安全非揮發性記憶體16讀取的資料進行解密。在一些實施例中,安全非揮發性記憶體16可儲存由安全處理器12_4執行的程式影像。在一些實施例中,安全非揮發性記憶體16可儲存安全處理器12_4產生密鑰所需的資訊。安全非揮發性記憶體16可包括至少一個非揮發性記憶體元件,且安全非揮發性記憶體16的實例將在以下參照圖5A進行闡述。
即使當中斷向系統儲存器18供電時,系統儲存器18可亦不丟失儲存於其中的資料。舉例而言,系統儲存器18可包括非揮發性記憶體元件,且亦可包括儲存媒體,例如磁帶、磁碟或光碟。系統儲存器18可與非安全處理器12_2進行通訊,且積體電路12可包括提供對系統儲存器18的存取的組件(例如,圖12中的122_6)。舉例而言,非安全處理器12_2可對儲存於系統儲存器18中的資料進行處理,可將資料儲存於系統儲存器18中,且可將儲存於系統儲存器18中的程式影像加載至系統記憶體14中。
圖2是示出根據示例性實施例的安全地管理密鑰的方法的實例的圖。具體而言,圖2示出非安全處理器22及安全處理器24二者隨著時間推移的操作。
在操作S10中,非安全處理器22可存取第一程式影像。舉例而言,非安全處理器22可存取儲存第一程式影像的系統記憶體26,且可將第一程式影像中所包括的指令中的至少一些指令複製至非安全處理器22中所包括的記憶體(例如,快取記憶體(cache))。第一程式影像可為由非安全處理器22執行且因此使用用於資料安全的密鑰執行安全操作的程式影像,且第一程式影像可被稱為安全程式、安全應用或安全軟體。
在操作S20中,非安全處理器22可執行第一程式影像。舉例而言,非安全處理器22可執行被複製至快取記憶體的一系列指令,且因此可開始執行第一程式影像。
在操作S30中,非安全處理器22可自安全處理器24請求密鑰。舉例而言,非安全處理器22可在執行第一程式影像期間需要用於資料的加密、解密及/或類似操作的密鑰,且因此可經由專用物理匯流排或信箱(例如,圖1中的12_6)自安全處理器24請求密鑰。信箱可被實施成共享暫存器,所述共享暫存器具有由第一晶片或邏輯設定的第一控制旗標,所述旗標指示第一晶片已寫入要由第二晶片或第二邏輯讀取的新資料。第二晶片可週期性地輪詢第一控制旗標,發現控制旗標被斷言(assert),讀取暫存器且清除控制旗標。可在另一方向上為第二晶片提供第二暫存器,以充當寫入器,且第一晶片輪詢第二控制旗標等。在一些實施例中,自非安全處理器22提供至安全處理器24的請求可包括第二程式影像的辨識符,在後續操作S40中將由安全處理器24自系統記憶體26讀取所述辨識符,且基於第二程式影像的辨識符,安全處理器24可獲得關於系統記憶體26的第二程式影像被加載至其中的區的加載資訊。另外,在一些實施例中,自非安全處理器22提供至安全處理器24的請求可包括密鑰辨識符(例如,圖9中的IDKEY )。舉例而言,第一程式影像可使用多個密鑰,且因此,為區分所述多個密鑰,非安全處理器22可使密鑰辨識符包括於所述請求中,且安全處理器24可產生取決於密鑰辨識符的密鑰。
在操作S40中,安全處理器24可自系統記憶體26讀取第二程式影像的至少一部分。舉例而言,安全處理器24可因應於非安全處理器22的請求而獲得第二程式影像的加載資訊,且可藉由基於加載資訊對系統記憶體26進行存取來讀取第二程式影像的所述至少一部分。在一些實施例中,第二程式影像可與已請求密鑰的程式影像(即第一程式影像)相同,且在一些實施例中第二程式影像亦可與第一程式影像不同。操作S40的實例將在以下參照圖6A及圖6B進行闡述。
在操作S50中,安全處理器24可產生密鑰。舉例而言,安全處理器24可基於自系統記憶體26讀取的第二程式影像的所述至少一部分來產生密鑰。在一些實施例中,安全處理器24可實施密鑰導出函數(key derivation function,KDF)且可藉由將自第二程式影像的所述至少一部分產生的連結資訊輸入至KDF來產生密鑰。在一些實施例中,安全處理器24可將附加資訊以及基於第二程式影像的所述至少一部分產生的連結資訊輸入至KDF。舉例而言,安全處理器24可將以下中的至少一者輸入至KDF:安全處理器24特有的硬體密鑰(例如,圖9中的KEYHW )、密鑰辨識符(例如,圖9中的IDKEY )及第二程式影像的辨識符。在一些實施例中,安全處理器24亦可藉由對由KDF輸出的密鑰進行加密來產生密鑰。操作S50的實例將在以下參照圖7A及圖7B進行闡述。
在操作S60中,安全處理器24可將密鑰提供至非安全處理器22。舉例而言,安全處理器24可經由專用物理匯流排或信箱(例如,圖1中的12_6)將密鑰提供至非安全處理器22。接下來,在操作S70中,非安全處理器22可藉由使用密鑰來執行安全操作。舉例而言,非安全處理器22可藉由使用密鑰來對資料進行加密或解密。
如上所述,安全處理器24可產生取決於第二程式影像的所述至少一部分的密鑰,所述密鑰由安全處理器24直接自系統記憶體26讀取。因此,當第二程式影像的所述至少一部分被修改時,可產生與基於原始第二程式影像所產生的密鑰不同的密鑰,且由原始密鑰加密的資料可不會被基於修改的第二程式影像產生的密鑰正常解密。
圖3是示出根據示例性實施例的安全處理器的實例的方塊圖。具體而言,圖3所示方塊圖示出系統記憶體34、安全非揮發性記憶體36、及非安全處理器38以及安全處理器32。如以上參照圖1所述,安全處理器32及非安全處理器38可包括於單個積體電路中。在以下關於圖3的說明中,將省略參照圖1給出的重複說明。
參照圖3,安全處理器32可包括至少一個暫存器32_1、至少一個核心32_2、直接記憶體存取(direct memory access,DMA)控制器32_3、硬體(hardware,HW)加速器32_4、內部記憶體32_5及非揮發性記憶體(non-volatile memory,NVM)控制器32_6。在一些實施例中,安全處理器32可包括連接至所述至少一個暫存器32_1、所述至少一個核心32_2、DMA控制器32_3、硬體加速器32_4、內部記憶體32_5及非揮發性記憶體控制器32_6的匯流排。在一些實施例中,安全處理器32可更包括用於產生密鑰對等的隨機數產生器、提供硬體密鑰(例如,圖9中的KEYHW )的組件等。如圖3中所示,安全處理器32可包括獨立於積體電路的其他組件(例如,非安全處理器38)執行操作的專用組件。在本文中,由安全處理器32中所包括的組件中的每一者執行的操作可被稱為由安全處理器32執行。
所述至少一個暫存器32_1可由非安全處理器38存取。舉例而言,安全處理器32可經由所述至少一個暫存器32_1自非安全處理器38接收對密鑰的請求。另外,安全處理器32可將產生的密鑰儲存於所述至少一個暫存器32_1中,進而將密鑰提供至非安全處理器38。在一些實施例中,所述至少一個暫存器32_1可被稱為信箱或信箱硬體。另外,所述至少一個暫存器32_1亦可被稱為包括於專用物理匯流排中以用於與非安全處理器38進行通訊。
所述至少一個核心32_2可指被配置以執行指令的任何處理部件。舉例而言,所述至少一個核心32_2可藉由執行儲存於內部記憶體32_5中的一系列指令來執行產生密鑰的操作的至少一部分。在本文中,包括由安全處理器32中所包括的所述至少一個核心32_2執行的指令的程式影像可被稱為安全韌體或安全韌體影像。
DMA控制器32_3可將直接記憶體存取(DMA)提供至系統記憶體34。儲存於系統記憶體34中的程式影像(例如,圖2中的第二程式影像)的至少一部分可由DMA控制器32_3讀取。在一些實施例中,DMA控制器32_3可經由積體電路中所包括的系統記憶體控制器(例如,圖12中的122_5)讀取程式影像。在一些實施例中,DMA控制器32_3可被配置以僅執行讀取系統記憶體34的操作,且可不支援將資料寫入至系統記憶體34的操作。
硬體加速器32_4可指被設計成高速執行預先定義的操作的硬體,且可執行產生密鑰的操作的至少一部分。在一些實施例中,硬體加速器32_4可包括密碼引擎。舉例而言,密碼引擎可實施用於為自系統記憶體34讀取的程式影像的所述至少一部分產生散列的散列函數(hash function),可執行資料的加密及/或解密,且可驗證程式影像的數位簽名(digital signature),此在以下進行闡述。
內部記憶體32_5可儲存安全處理器32的操作所需的資料。在一些實施例中,內部記憶體32_5可包括儲存可由所述至少一個核心32_2執行的指令的唯讀記憶體(read-only memory,ROM)。另外,在一些實施例中,內部記憶體32_5可包括隨機存取記憶體(random access memory,RAM),所述RAM具有在RAM中加載的安全韌體影像或者儲存由所述至少一個核心32_2處理的資料。此外,內部記憶體32_5可儲存由DMA控制器32_3讀取的程式影像的所述至少一部分,且亦可儲存被提供至硬體加速器32_4或者由硬體加速器32_4處理的資料。
非揮發性記憶體控制器32_6可提供對安全非揮發性記憶體36的存取。舉例而言,安全非揮發性記憶體36可包括快閃記憶體元件,且非揮發性記憶體控制器32_6可包括提供快閃記憶體介面的快閃控制器。另外,安全非揮發性記憶體36可支援串列介面,且非揮發性記憶體控制器32_6可包括例如提供通用串列介面(universal serial interface,USI)(例如內置積體電路(Inter-Integrated Circuit,I2C)或串列週邊介面(Serial Peripheral Interface,SPI))的控制器。如以上參照圖1所述,非揮發性記憶體控制器32_6及安全非揮發性記憶體36可經由安全通道彼此進行通訊。
圖4示出根據示例性實施例的儲存程式影像的系統記憶體的實例。如圖4中所示,系統記憶體40可儲存第一程式影像IMG1、第二程式影像IMG2及第三程式影像IMG3。在一些實施例中,圖4所示系統記憶體40是圖1所示系統記憶體14的實例。在一些實施例中,程式影像是記憶體的特定部分處的若干資訊位元。舉例而言,在一些實施例中,程式影像是系統記憶體40中的若干連續的位元組或字組。儲存於系統記憶體40中的程式影像可發生動態變化,且圖4示出系統記憶體40在特定時間點的狀態。舉例而言,系統記憶體40可同時儲存三個或更多個程式影像,且第一程式影像IMG1、第二程式影像IMG2及第三程式影像IMG3中的至少一些程式影像可藉由加載新的程式影像而自系統記憶體40無效。在下文中,將參照圖1進行關於圖4的說明。
程式影像可包括二進制資料。舉例而言,如圖4中所示,第一程式影像IMG1及第二程式影像IMG2可分別包括多條二進制資料41及43,且第三程式影像IMG3可僅包括二進制資料45。二進制資料可包括由非安全處理器12_2執行的指令,且可例如藉由對以程式化語言寫入的原始碼進行編譯來產生。在一些實施例中,二進制資料亦可包括由指令引用的資料以及指令。二進制資料亦可被稱為二進制影像、二進制碼或二進制碼影像。
在一些實施例中,程式影像可包括數位簽名。舉例而言,如圖4中所示,第一程式影像IMG1及第二程式影像IMG2可分別包括數位簽名42及44。數位簽名(或電子簽名)可用於確定程式影像的真實性,即程式影像是由經認證的實體產生的。舉例而言,數位簽名42可用於確定第一程式影像IMG1的真實性,且數位簽名44可用於確定第二程式影像IMG2的真實性。可產生數位簽名及驗證資訊作為自共用源產生的摘要,且數位簽名可由驗證資訊進行驗證。舉例而言,可產生包括私密密鑰及公開密鑰的密鑰對,且可自私密密鑰產生數位簽名並且可基於數學演算法由公開密鑰作為驗證資訊來驗證數位簽名。
安全處理器12_4可藉由驗證數位簽名來確定程式影像的真實性。為此,安全處理器12_4可獲得驗證資訊且可基於驗證資訊來驗證數位簽名。在一些實施例中,在製造積體電路12及/或系統10的製程期間,公開密鑰及/或公開密鑰的摘要(digest)可作為驗證資訊被提供至安全處理器12_4,且安全處理器12_4可基於所提供的公開密鑰及/或所提供的公開密鑰的摘要來驗證數位簽名。另外,在一些實施例中,安全處理器12_4亦可基於軟體影像中所包括的公開密鑰及/或公開密鑰的摘要來驗證數位簽名,所述軟體影像包括至少一個密鑰且被加載至系統記憶體40中,例如名稱為「用於軟體認證的裝置及方法(APPARATUS AND METHOD FOR AUTHENTICATION OF SOFTWARE)」且由與本申請案相同的申請者在相同的日期在韓國智慧財產局提出申請的韓國專利申請案第10-2020-0002691號中所揭露的密鑰串影像,所述申請案的揭露內容全文併入本案供參考。包括已通過驗證的數位簽名的程式影像(即經認證的程式影像)可為可靠的,且非安全處理器12_2可執行經認證的程式影像。
在一些實施例中,如以下參照圖8等所述,安全處理器12_4可自系統記憶體40讀取數位簽名,且可基於數位簽名產生密鑰。舉例而言,安全處理器12_4可基於已請求密鑰的程式影像中所包括的數位簽名來產生密鑰,且亦可基於與已請求密鑰的程式影像不同的程式影像中所包括的數位簽名來產生密鑰。
在一些實施例中,程式影像可包括數位簽名以及密鑰資訊作為關於用於數位簽名驗證的驗證資訊的資訊。舉例而言,如名稱為「用於軟體認證的裝置及方法」的韓國專利申請案第10-2020-0002691號中所揭露的,程式影像的數位簽名可由加載至系統記憶體40中的軟體影像中所包括的公開密鑰以及安全處理器12_4中所包括的公開密鑰來驗證,且密鑰資訊可包括關於用於程式影像中所包括的數位簽名的驗證的公開密鑰的資訊,所述程式影像包括數位簽名以及密鑰資訊。
圖5A及圖5B是分別示出根據示例性實施例的用於密鑰產生的資訊的實例的圖。具體而言,圖5A及圖5B分別示出程式影像的加載資訊及數位簽名的驗證資訊二者的實例。在以下關於圖5A及圖5B的說明中,將參照圖1且將省略重複的說明。
參照圖5A,安全非揮發性記憶體50a可儲存程式影像的加載資訊52a及數位簽名的驗證資訊54a(驗證資訊可包括公開密鑰)。在一些實施例中,與圖5A中所示的實例不同,安全非揮發性記憶體50a可僅儲存加載資訊52a及驗證資訊54a中的一者。
加載資訊52a可包括程式影像的辨識符以及與所述辨識符對應的位址及大小二者。舉例而言,如圖5A中所示,加載資訊52a可包括第一程式影像的辨識符ID1以及與辨識符ID1對應的第一位址ADDR1及第一大小SIZE1二者,且第一程式影像可儲存於系統記憶體14中的自第一位址ADDR1開始且與第一大小SIZE1對應的區中。在一些實施例中,ID1是程式影像的辨識符的實例。在一些實施例中,第一大小SIZE1可為自第一位址ADDR1至第一程式影像的結束位址的位址偏移。在一些實施例中,加載資訊52a可包括第一程式影像的結束位址,而非第一大小SIZE1。相似地,加載資訊52a可包括第二程式影像的辨識符ID2以及與辨識符ID2對應的第二位址ADDR2及第二大小SIZE2二者。安全處理器12_4可自安全非揮發性記憶體50a獲得位址及大小,位址及大小二者皆與自非安全處理器12_2提供的程式影像的辨識符對應。
驗證資訊54a可包括程式影像的辨識符及與所述辨識符對應的公開密鑰。舉例而言,如圖5A中所示,驗證資訊54a可包括第一程式影像的辨識符ID1及與辨識符ID1對應的第一公開密鑰KEY1pub ,且第一程式影像中所包括的數位簽名可由第一公開密鑰KEY1pub 驗證。相似地,驗證資訊54a可包括第二程式影像的辨識符ID2及與辨識符ID2對應的第二公開密鑰KEY2pub ,且第二程式影像中所包括的數位簽名可由第二公開密鑰KEY2pub 驗證。可將來自非安全處理器12_2的程式影像的辨識符提供至安全處理器12_4,且安全處理器12_4可自安全非揮發性記憶體50a獲得與所提供的辨識符對應的公開密鑰。
在一些實施例中,安全處理器12_4可自非安全處理器12_2獲得加載資訊52a及/或驗證資訊54a,且可將加載資訊52a及/或驗證資訊54a寫入至安全非揮發性記憶體50a。舉例而言,在製造系統10的製程期間,因應於系統10中所包括的初始設定,安全處理器12_4可將加載資訊52a及/或驗證資訊54a寫入至安全非揮發性記憶體50a。作為另一實例,因應於系統10的主重設(或工廠重設),安全處理器12_4可將加載資訊52a及/或驗證資訊54a寫入至安全非揮發性記憶體50a。作為另一實例,因應於在作業系統上安裝應用,安全處理器12_4可將加載資訊52a及/或驗證資訊54a寫入至安全非揮發性記憶體50a,加載資訊52a及驗證資訊54a二者皆對應於應用的程式影像。因此,安全非揮發性記憶體50a可儲存包括程式影像的加載資訊52b及數位簽名的驗證資訊54b的安全韌體影像50b。
參照圖5B,程式影像的加載資訊52b及數位簽名的驗證資訊54b可包括於由安全處理器12_4執行的安全韌體影像50b中。安全韌體影像50b可自安全非揮發性記憶體50a加載至內部記憶體(例如,圖3中的32_5)中。在一些實施例中,與圖5B中所示的實例不同,安全韌體影像50b可僅包括加載資訊52b及驗證資訊54b中的一者。可將來自非安全處理器12_2的程式影像的辨識符提供至安全處理器12_4,且安全處理器12_4可自安全韌體影像50b獲得位址及大小,位址及大小二者皆對應於所提供的辨識符。另外,可將來自非安全處理器12_2的程式影像的辨識符提供至安全處理器12_4,且安全處理器12_4可自安全韌體影像50b獲得與所提供的辨識符對應的公開密鑰。
圖6A及圖6B是分別示出根據示例性實施例的安全地管理密鑰的方法的實例的流程圖。具體而言,圖6A及圖6B所示流程圖分別示出圖2所示操作S40的實例。如以上參照圖2所述,在圖6A所示操作S40a及圖6B所示操作S40b中,可執行由安全處理器自系統記憶體讀取程式影像的至少一部分的操作。在一些實施例中,圖6A所示操作S40a及圖6B所示操作S40b可由圖1所示安全處理器12_4執行,且在以下關於圖6A及圖6B的說明中,將參照圖1且將省略重複的說明。
參照圖6A,操作S40a可包括操作S42a及操作S44a。在操作S42a中,可執行獲得程式影像的加載資訊的操作。舉例而言,安全處理器12_4可獲得要自系統記憶體14讀取的程式影像的辨識符,且可自安全非揮發性記憶體16及/或安全韌體影像獲得與所獲得的辨識符對應的加載資訊。
在操作S44a中,可執行自系統記憶體14讀取程式影像的至少一部分的操作。舉例而言,安全處理器12_4可基於在操作S42a中獲得的加載資訊而自系統記憶體14讀取程式影像的所述至少一部分。在一些實施例中,安全處理器12_4可讀取整個程式影像,且亦可讀取程式影像的一部分。另外,安全處理器12_4可讀取程式影像中所包括的數位簽名。
參照圖6B,與圖6A所示操作S40a相似,操作S40b可包括操作S42b及操作S44b,且操作S40b可更包括分別在操作S44b之前及操作S44b之後執行的操作S43b及操作S45b。在一些實施例中,可在執行操作S42b之前執行操作S43b。
在操作S42b中,可執行獲得程式影像的加載資訊的操作。接下來,在操作S43b中,可執行鎖定對程式影像的存取的操作。舉例而言,安全處理器12_4可執行鎖定對程式影像的存取的操作,使得程式影像在被自系統記憶體14讀取時不發生改變。在一些實施例中,安全處理器12_4可阻止非安全處理器12_2對系統記憶體14進行的存取。安全處理器12_4及非安全處理器12_2對系統記憶體14的存取可由記憶體存取控制器進行協同。在一些實施例中,圖12所示DRAM存取控制器122_4是記憶體存取控制器的實例。
可由安全處理器12_4協同記憶體存取控制器來實施對記憶體存取的阻止。在一些實施例中,安全處理器12_4可阻止非安全處理器12_2對要讀取的程式影像進行的存取。舉例而言,安全處理器12_4可藉由在記憶體存取控制器中設定旗標或者向記憶體存取控制器提供指令來阻止存取。接下來,在操作S44b中,可執行自系統記憶體14讀取程式影像的至少一部分的操作。
在操作S45b中,可執行容許對程式影像的存取的操作。在一些實施例中,安全處理器12_4可解鎖非安全處理器12_2對系統記憶體14的存取。在一些實施例中,安全處理器12_4可解鎖非安全處理器12_2對程式影像進行的存取。
圖7A及圖7B是分別示出根據示例性實施例的安全地管理密鑰的方法的實例的流程圖。具體而言,圖7A及圖7B所示流程圖分別示出圖2所示操作S50的實例。在一些實施例中,圖2所示操作S50可包括圖7A所示操作S50a及圖7B所示操作S50b二者。如以上參照圖2所述,在圖7A所示操作S50a及圖7B所示操作S50b中,可執行產生密鑰的操作。在一些實施例中,圖7A所示操作S50a及圖7B所示操作S50b可由圖1所示安全處理器12_4執行,且在以下關於圖7A及圖7B的說明中,將參照圖1且將省略重複的說明。
參照圖7A,操作S50a可包括操作S51及操作S52。在操作S51中,可執行為程式影像的至少一部分產生散列的操作。散列是散列函數的結果且可被稱為散列值、散列碼、散列核對和(checksum)等。散列函數可指用於將具有任意長度的資料映射至具有固定長度的資料的函數。安全處理器12_4可實施散列函數且可為自系統記憶體14讀取的程式影像的所述至少一部分產生散列。因此,發生改變的程式影像的散列可不同於原始程式影像的散列。
在操作S52中,可執行基於散列產生密鑰的操作。舉例而言,安全處理器12_4可將散列輸入至KDF。亦即,程式影像的所述至少一部分的散列可用作連結資訊。
參照圖7B,操作S50b可包括多個操作S53至S55。在操作S53中,可執行獲得數位簽名的驗證資訊的操作。舉例而言,安全處理器12_4可如以上參照圖5A所述般自安全非揮發性記憶體50a獲得驗證資訊,且亦可如以上參照圖5B所述般自安全韌體影像50b獲得驗證資訊。
在操作S54中,可執行驗證數位簽名的操作。舉例而言,安全處理器12_4可在操作S53中獲得公開密鑰作為驗證資訊,且可藉由使用公開密鑰來驗證數位簽名。因此,根據程式影像的真實性而定,數位簽名的驗證可能成功或者失敗。
在操作S55中,可執行基於驗證的結果產生密鑰的操作。舉例而言,安全處理器12_4可在操作S54中將驗證結果輸入至KDF。因此,在驗證成功的情形中產生的密鑰可不同於在驗證失敗的情形中產生的密鑰。
圖8是示出根據示例性實施例的安全地管理密鑰的方法的實例的圖。具體而言,圖8示出非安全處理器82及安全處理器84隨著時間推移的操作。在一些實施例中,安全處理器84可使用程式影像的驗證結果來產生由另一程式影像(即安全程式)請求的密鑰。在以下關於圖8的說明中,將省略參照上述各圖給出的重複說明。
在操作S81中,非安全處理器82可執行啟動加載程式(bootloader)。可在系統初始化製程期間(例如在其中包括非安全處理器82、安全處理器84及系統記憶體86的系統被供電或被重設的情形中)執行啟動加載程式。在一些實施例中,啟動加載程式可儲存於非安全處理器82中所包括的ROM(例如,圖12中的122_2)中,且可在加載至系統記憶體86中之後由非安全處理器82執行。在操作S82中,非安全處理器82可控制程式影像的加載。舉例而言,啟動加載程式可由非安全處理器82執行,進而將至少一個程式影像(例如,作業系統、內核等)加載至系統記憶體86中。在操作S83中,非安全處理器82可請求安全處理器84驗證數位簽名。由啟動加載程式加載的所述至少一個程式影像可包括數位簽名,且啟動加載程式可由非安全處理器82執行,進而請求對加載至系統記憶體86中的所述至少一個程式影像中所包括的數位簽名進行驗證。
在操作S84中,安全處理器84可自系統記憶體86讀取程式影像的至少一部分。舉例而言,安全處理器84可自儲存於系統記憶體86中的程式影像讀取數位簽名。在操作S85中,安全處理器84可驗證數位簽名且可儲存驗證的結果。舉例而言,安全處理器84可將數位簽名的驗證結果儲存於內部記憶體(例如,圖3中的32_5)中。在操作S86中,安全處理器84可將驗證結果提供至非安全處理器82。
在操作S87中,安全處理器84可執行安全程式。舉例而言,可將安全程式的程式影像加載至系統記憶體86中,且非安全處理器82可開始執行加載的程式影像。在操作S88中,非安全處理器82可自安全處理器84請求密鑰。舉例而言,非安全處理器82可執行安全程式,進而自安全處理器84請求密鑰。
在操作S89中,安全處理器84可基於數位簽名的驗證結果產生密鑰。舉例而言,安全處理器84可將在操作S85中產生的驗證結果輸入至KDF。因此,密鑰可依賴於啟動加載程式所請求驗證的數位簽名的驗證結果。在一些實施例中,安全處理器84可進一步基於自系統記憶體86讀取的安全程式的程式影像的所述至少一部分以及基於驗證結果來產生密鑰。在操作S90中,安全處理器84可將密鑰提供至非安全處理器82。
圖9是示出根據示例性實施例的積體電路的實例的方塊圖。具體而言,圖9所示方塊圖示出由安全處理器94執行的產生密鑰的操作的實例。如圖9中所示,積體電路90可包括非安全處理器92及安全處理器94,且安全處理器94可包括KDF模組94_2及加密模組94_4。
KDF模組94_2可接收影像資訊INFOIMG 、密鑰辨識符IDKEY 及硬體密鑰KEYHW ,且可產生取決於影像資訊INFOIMG 、密鑰辨識符IDKEY 及硬體密鑰KEYHW 的內部密鑰KEYINT 。在一些實施例中,內部密鑰是不在安全處理器94的外部提供的密鑰材料。在一些實施例中,KDF模組94_2的至少一部分可由安全處理器94中所包括的至少一個核心(例如,圖3中的32_2)以及由所述至少一個核心執行的一系列指令來實施。另外,在一些實施例中,KDF模組94_2的至少一部分可由安全處理器94中所包括的硬體加速器(例如,圖3中的32_4)來實施。
影像資訊INFOIMG 可指自程式影像的至少一部分產生的連結資訊,所述程式影像由安全處理器94自系統記憶體(例如,圖1中的14)讀取。舉例而言,影像資訊INFOIMG 可包括程式影像的散列、程式影像中所包括的數位簽名(或其散列)、或數位簽名的驗證結果。如以上參照上述各圖所述,影像資訊INFOIMG 可在安全處理器94的內部自安全處理器94直接讀取的程式影像產生,且因此可不暴露於安全處理器94的外部。因此,可達成提供改善的安全的密鑰連結。
如圖9中所示,可自非安全處理器92提供密鑰辨識符IDKEY 。舉例而言,由非安全處理器92執行的安全程式可使用多個密鑰且可藉由使用密鑰辨識符IDKEY 來辨識及管理所述多個密鑰。可經由專用物理匯流排(例如,圖1中的12_6)將密鑰辨識符IDKEY 自非安全處理器92傳送至安全處理器94。在一些實施例中,專用物理匯流排包括不被非安全處理器92用於與任何其他晶片或邏輯進行通訊的資料線與控制線的集合。在一些實施例中,密鑰辨識符IDKEY 可包括於對密鑰的請求中,所述請求自非安全處理器92提供至安全處理器94。
硬體密鑰KEYHW 可具有安全處理器94(或積體電路90)特有的值,且可被稱為根密鑰。硬體密鑰KEYHW 可不暴露於安全處理器94的外部。在一些實施例中,安全處理器94可包括一次性可程式化(one-time-programmable,OTP)記憶體(例如反熔絲陣列),且在製造積體電路90時可將硬體密鑰KEYHW 程式化至OTP記憶體中。在一些實施例中,安全處理器94可包括物理不可複製函數(physically unclonable function,PUF)區塊,且硬體密鑰KEYHW 可基於PUF區塊的輸出。PUF可指用於基於硬體的固有性質提供與硬體對應的唯一值(unique value)的函數。舉例而言,即使當例如半導體晶片等多個硬體是藉由相同的製程製造時,所述多個硬體可不在物理上彼此完全相同,且在所述多個硬體之間可存在微小的變化,即微小的製程變化。基於該些變化,可提取硬體的唯一值,且所提取的值可用於需要安全的操作(例如,安全通訊、安全資料處理、使用者辨識、韌體更新等)。PUF區塊可具有但不限於以下中的至少一者:基於儲存於SRAM胞元中的值的SRAM結構、基於頻率變化的環形振盪器結構、基於洩漏電流等的基於洩漏的結構、其中任意確定訊號路徑的仲裁器結構以及基於邏輯閘的臨限電平之間的差的結構。
加密模組94_4可自KDF模組94_2接收內部密鑰KEYINT ,且可基於內部密鑰KEYINT 執行加密及/或解密。舉例而言,如圖9中所示,加密模組94_4可自非安全處理器92接收解密資料DEC,且可藉由使用內部密鑰KEYINT 對解密資料DEC進行加密來將加密資料ENC提供至非安全處理器92。另外,如圖9中所示,加密模組94_4可自非安全處理器92接收加密資料ENC,且可藉由使用內部密鑰KEYINT 對加密資料ENC進行解密來將解密資料DEC提供至非安全處理器92。因此,非安全處理器92可使得安全處理器94能夠對需要安全的資料進行加密。舉例而言,為維護由非安全處理器92自身產生或使用的資料加密密鑰(data encryption key,DEK)的安全,非安全處理器92可將DEK提供至安全處理器94,可自安全處理器94接收藉由使用內部密鑰KEYINT 進行加密的DEK,且可將加密的DEK儲存於系統儲存器(例如,圖1中的18)中。亦即,非安全處理器92可接收加密的DEK作為由安全處理器94提供的密鑰,且加密的DEK亦可因內部密鑰KEYINT 而被連結。另外,對於基於DEK的安全操作,非安全處理器92可自系統儲存器讀取加密的DEK,可將加密的DEK提供至安全處理器94,且可自安全處理器94接收藉由使用內部密鑰KEYINT 解密的DEK。在一些實施例中,如圖9中的虛線所示,因應於非安全處理器92的請求,可將由KDF模組94_2產生的內部密鑰KEYINT 提供至非安全處理器92。
圖10是示出根據示例性實施例的積體電路的實例的方塊圖。如圖10中所示,積體電路100可包括非安全處理器102及安全處理器104,且可更包括感測來自積體電路100外部的攻擊的感測器106。在以下關於圖10的說明中,將省略參照上述各圖給出的重複說明。
感測器106可感測來自積體電路100外部的對安全處理器104的攻擊。攻擊者可對積體電路100進行物理攻擊,以自安全處理器104提取資訊。舉例而言,攻擊者可拆除積體電路100,可向拆除的積體電路100供電,且可試圖藉由探測來提取資訊。積體電路100可包括感測器106以偵測此種入侵性攻擊。
感測器106可具有用於偵測對安全處理器104的入侵性攻擊的任何結構。在一些實施例中,感測器106可包括感光性元件(例如光二極體),且可感測由積體電路100的拆卸引起的光的流入。另外,在一些實施例中,感測器106可包括屏蔽件,所述屏蔽件包括多個導電圖案且覆蓋安全處理器104,且感測器106可感測屏蔽件的特性(例如,電容或電阻)的改變或者通過屏蔽件的訊號的改變,所述改變是由積體電路100的拆卸引起的。在一些實施例中,與圖10中所示的實例不同,感測器106亦可偵測對非安全處理器102以及對安全處理器104的入侵性攻擊。以下將參照圖11闡述因應於感測器106感測到的攻擊而執行的操作的實例。
圖11是示出根據示例性實施例的安全地管理密鑰的方法的實例的流程圖。具體而言,圖11所示流程圖示出當圖10所示感測器106感測到對安全處理器104的入侵性攻擊時由安全處理器104執行的操作的實例。將參照圖10進行以下關於圖11的說明。
在操作S120中,可判斷是否出現攻擊。舉例而言,安全處理器104可接收感測器106的輸出訊號,且可基於輸出訊號判斷是否出現攻擊。如圖11中所示,當出現攻擊時,可在操作S140中執行免受攻擊的保護的操作。在一些實施例中,如圖11中所示,操作S140可包括多個操作S142、S144及S146,且在一些實施例中,與圖11中所示的實例不同,操作S140亦可僅包括所述多個操作S142、S144及S146中的一些操作。在一些實施例中,可並行執行所述多個操作S142、S144及S146中的至少兩者。應注意,安全處理器104因應於出現攻擊而執行的操作並非僅限於圖11中的實例。
在操作S142中,可終止正在執行的操作。舉例而言,安全處理器104可終止參照上述各圖所述的安全地管理密鑰的此種操作,由此可防止藉由探測估測安全處理器104的操作。在操作S144中,可執行將至少一個部件轉變成不可逆狀態的操作。舉例而言,安全處理器104可藉由向精細圖案施加強電性訊號來使精細圖案開路,且可阻止訊號經由開路圖案進行傳送。另外,安全處理器104可藉由對胞元進行程式化來將未在OTP記憶體中程式化的胞元轉變成不可逆狀態。在操作S146中,可執行淨化資料的操作。舉例而言,安全處理器104可藉由將任何資料(例如,全零資料)重新寫入至內部記憶體(例如,圖3中的32_5)及/或安全記憶體(例如,圖3中的36)來淨化資料。
圖12是示出根據示例性實施例的系統的實例的方塊圖。如圖12中所示,系統120可包括系統晶片122、DRAM 124、儲存器128及安全非揮發性記憶體126。在圖12所示系統120中,DRAM 124可用作系統記憶體,且儲存器128可用作系統儲存器。在以下關於圖12的說明中,將省略參照圖1給出的重複說明。
系統晶片122可指藉由半導體製程製造的積體電路,且各種硬體區塊被整合至所述積體電路中。如圖12中所示,系統晶片122可包括至少一個核心122_1、ROM 122_2、週邊裝置(peripheral)122_3、DRAM存取控制器122_4、儲存器控制器122_6及安全處理器122_7。以上參照各圖闡述的非安全處理器可包括所述至少一個核心122_1,且在一些實施例中可更包括除安全處理器122_7之外的其他組件。在一些實施例中,系統晶片122可更包括匯流排,所述至少一個核心122_1、ROM 122_2、週邊裝置122_3、DRAM存取控制器122_4及儲存器控制器122_6連接至所述匯流排。圖12中未示出所有的匯流排連接。
所述至少一個核心122_1可執行儲存於ROM 122_2中的指令及/或儲存於DRAM 124中的指令。舉例而言,所述至少一個核心122_1可包括快取記憶體,可將ROM 122_2及/或DRAM 124中所包括的指令複製至快取記憶體,且可執行儲存於快取記憶體中的指令。在一些實施例中,所述至少一個核心122_1可包括對稱或不對稱的多個核心。
ROM 122_2可儲存由所述至少一個核心122_1執行的指令。舉例而言,當系統120的初始化製程開始時,ROM 122_2可儲存啟動加載程式,且所述至少一個核心122_1可首先執行儲存於ROM 122_2中的指令(即啟動加載程式)。為此,在一些實施例中,啟動加載程式的至少一部分可被加載至DRAM 124中。另外,在一些實施例中,除儲存指令之外,ROM 122_2可更儲存不可變資料,當所述至少一個核心122_1執行指令時,所述不可變資料被所述至少一個核心122_1引用。
週邊裝置122_3可包括具有各種功能的硬體區塊。舉例而言,週邊裝置122_3可包括輸入/輸出(input/output,I/O)介面區塊,所述輸入/輸出介面區塊提供用於與系統晶片122外部的元件進行通訊的通訊通道,且週邊裝置122_3亦可包括被設計成高速執行操作(例如資料編碼/解碼等)的硬體加速器。
DRAM存取控制器122_4可藉由DRAM控制器122_5控制對DRAM 124的存取。舉例而言,作為系統記憶體的DRAM 124可被劃分成安全區及非安全區,且DRAM存取控制器122_4可限制對DRAM 124的安全區的存取。在一些實施例中,在讀取儲存於DRAM 124中的用於密鑰產生的程式影像的至少一部分期間,安全處理器122_7可藉由DRAM存取控制器122_4鎖定系統晶片122的其他組件對程式影像的存取,且在完成對程式影像的至少一部分的讀取之後,安全處理器122_7可藉由DRAM存取控制器122_4解鎖對程式影像的存取。
DRAM控制器122_5可提供用於存取DRAM 124的介面。另外,儲存器控制器122_6可提供用於存取儲存器128的介面。舉例而言,儲存器128可包括快閃記憶體元件,且儲存器控制器122_6可提供快閃記憶體的介面。
安全處理器122_7可經由專用物理匯流排與非安全處理器(例如,所述至少一個核心122_1)進行通訊,且為此,安全處理器122_7可包括至少一個暫存器(例如,圖3中的32_1)。另外,安全處理器122_7可只能專屬存取安全非揮發性記憶體126,且為此,安全處理器122_7可包括非揮發性記憶體控制器(例如,圖3中的32_6)。安全處理器122_7可藉由DRAM控制器122_5直接讀取儲存於DRAM 124中的程式影像的至少一部分,且可基於所讀取的程式影像的所述至少一部分產生連結資訊。安全處理器122_7可基於在安全處理器122_7的內部產生的連結資訊來產生密鑰,且因此可防止暴露出用於密鑰產生的連結資訊。
儘管已參照本文中的實施例具體示出並闡述了實施例,然而應理解,在不背離以下申請專利範圍的精神及範圍的條件下,可對本文進行形式及細節上的各種改變。
10、120:系統 12、90、100:積體電路 12_2、22、38、82、92、102:非安全處理器 12_4、24、32、84、94、104、122_7:安全處理器 12_6:專用物理匯流排 14、26、34、40、86:系統記憶體 16、36、50a、126:安全非揮發性記憶體 18:系統儲存器 32_1:暫存器 32_2、122_1:核心 32_3:直接記憶體存取(DMA)控制器 32_4:硬體(HW)加速器 32_5:內部記憶體 32_6:非揮發性記憶體(NVM)控制器 41、43、45:二進制資料 42、44:數位簽名 50b:安全韌體影像 52a、52b:加載資訊 54a、54b:驗證資訊 94_2:密鑰導出函數(KDF)模組 94_4:加密模組 106:感測器 122:系統晶片 122_2:唯讀記憶體(ROM) 122_3:週邊裝置 122_4:動態隨機存取記憶體(DRAM)存取控制器 122_5:動態隨機存取記憶體(DRAM)控制器 122_6:儲存器控制器 124:動態隨機存取記憶體(DRAM) 128:儲存器 ADDR1:第一位址 ADDR2:第二位址 APP1、APP2:應用 BL:啟動加載程式 DEC:解密資料 ENC:加密資料 ID1、ID2:辨識符 IDKEY :密鑰辨識符 IMG1:第一程式影像 IMG2:第二程式影像 IMG3:第三程式影像 INFOIMG :影像資訊 KEY1pub :第一公開密鑰 KEY2pub: 第二公開密鑰 KEYHW :硬體密鑰 KEYINT :內部密鑰 OS:作業系統 S10、S20、S30、S40、S40a、S40b、S42a、S42b、S43b、S44a、S44b、S45b、S50、S50a、S50b、S51、S52、S53、S54、S55、S60、S70、S81、S82、S83、S84、S85、S86、S87、S88、S89、S90、S120、S140、S142、S144、S146:操作 SIZE1:第一大小 SIZE2:第二大小
結合附圖根據以下詳細說明,將更清楚地理解本揭露的實施例,在附圖中:
圖1是示出根據示例性實施例的系統的實例的方塊圖。
圖2是示出根據示例性實施例的安全地管理密鑰的方法的實例的圖。
圖3是示出根據示例性實施例的安全處理器的實例的方塊圖。
圖4示出根據示例性實施例的儲存程式影像的系統記憶體的實例。
圖5A及圖5B是分別示出根據示例性實施例的用於密鑰產生的資訊的實例的圖。
圖6A及圖6B是分別示出根據示例性實施例的安全地管理密鑰的方法的實例的流程圖。
圖7A及圖7B是分別示出根據示例性實施例的安全地管理密鑰的方法的實例的流程圖。
圖8是示出根據示例性實施例的安全地管理密鑰的方法的實例的圖。
圖9是示出根據示例性實施例的積體電路的實例的方塊圖。
圖10是示出根據示例性實施例的積體電路的實例的方塊圖。
圖11是示出根據示例性實施例的安全地管理密鑰的方法的實例的流程圖。
圖12是示出根據示例性實施例的系統的實例的方塊圖。
10:系統
12:積體電路
12_2:非安全處理器
12_4:安全處理器
12_6:專用物理匯流排
14:系統記憶體
16:安全非揮發性記憶體
18:系統儲存器
APP1、APP2:應用
BL:啟動加載程式
OS:作業系統

Claims (20)

  1. 一種積體電路,包括: 第一處理器,被配置以執行第一程式影像以執行安全操作,所述第一程式影像儲存於系統記憶體中; 第二處理器,被配置以: 讀取第二程式影像的至少一部分,所述第二程式影像儲存於所述系統記憶體中,以及 基於所述第二程式影像的所述至少一部分產生密鑰;以及 專用通訊通道,用於所述第一處理器與所述第二處理器之間的通訊, 其中所述第一處理器更被配置以: 經由所述專用通訊通道接收所述密鑰,以及 基於所述密鑰執行所述安全操作。
  2. 如請求項1所述的積體電路,其中所述第二處理器更被配置以: 為所述第二程式影像的所述至少一部分產生散列,以及 基於所述散列產生所述密鑰。
  3. 如請求項1所述的積體電路,其中所述第二程式影像的所述至少一部分包括數位簽名,且 所述第二處理器更被配置以基於所述數位簽名產生所述密鑰。
  4. 如請求項3所述的積體電路,其中所述第二處理器更被配置以: 基於用於驗證所述數位簽名的驗證資訊驗證所述數位簽名,以及 基於所述驗證的結果產生所述密鑰。
  5. 如請求項4所述的積體電路,其中所述第二處理器更被配置以自只能專屬存取的非揮發性記憶體或由所述第二處理器執行的程式影像中的至少一者獲得所述驗證資訊。
  6. 如請求項1所述的積體電路,其中所述第一處理器、所述第二處理器及所述系統記憶體被配置以使得在所述第二處理器讀取所述第二程式影像的所述至少一部分的同時阻止所述第一處理器對所述第二程式影像的存取。
  7. 如請求項1所述的積體電路,其中所述第二處理器更被配置以因應於來自所述第一處理器的請求而產生所述密鑰,且 所述第一處理器更被配置以經由所述專用通訊通道將所述請求自所述第一處理器傳送至所述第二處理器。
  8. 如請求項7所述的積體電路,其中所述請求包括所述第二程式影像的辨識符,且 所述第二處理器更被配置以: 基於所述第二程式影像的所述辨識符,自只能專屬存取的非揮發性記憶體獲得所述第二程式影像的加載資訊,以及 基於所述加載資訊,自所述系統記憶體讀取所述第二程式影像的所述至少一部分。
  9. 如請求項7所述的積體電路,其中所述請求包括密鑰辨識符,且 所述第二處理器更被配置以基於所述密鑰辨識符產生所述密鑰。
  10. 如請求項1所述的積體電路,其中所述第一處理器更被配置以將資料經由所述專用通訊通道提供至所述第二處理器,且 所述第二處理器更被配置以: 基於所述第二程式影像的所述至少一部分產生內部密鑰,以及 藉由基於所述內部密鑰對所述資料進行解密或加密而產生所述密鑰。
  11. 如請求項1所述的積體電路,其中所述第一程式影像與所述第二程式影像相同。
  12. 如請求項1所述的積體電路,其中所述第二處理器更被配置以: 經由所述專用通訊通道自所述第一處理器接收所述第二程式影像的辨識符及加載資訊,以及 將所述辨識符及所述加載資訊寫入至只能專屬存取的非揮發性記憶體。
  13. 如請求項1所述的積體電路,其中所述第二處理器更被配置以: 自所述第二處理器的內部獲得硬體密鑰,以及 基於所述硬體密鑰產生所述密鑰。
  14. 如請求項1所述的積體電路,其中所述第二處理器包括直接記憶體存取(DMA)控制器,所述直接記憶體存取控制器被配置以自所述系統記憶體讀取所述第二程式影像的所述至少一部分。
  15. 如請求項1所述的積體電路,更包括感測器,所述感測器被配置以感測對所述第二處理器的物理攻擊。
  16. 一種用於安全地管理用於資料安全的多個密鑰的系統,所述系統包括: 積體電路,包括第一處理器及第二處理器,其中所述第一處理器及所述第二處理器被配置以經由專用通訊通道彼此進行通訊; 系統記憶體,被配置以儲存能夠由所述第一處理器執行的程式影像;以及 非揮發性記憶體,被配置以只能由所述第二處理器專屬存取,且儲存所述程式影像的加載資訊, 其中所述第二處理器更被配置以: 基於所述加載資訊,自所述系統記憶體讀取所述程式影像的至少一部分; 基於所述程式影像的所述至少一部分產生密鑰,以及 將所述密鑰提供至所述第一處理器,且 所述第一處理器更被配置以基於所述密鑰執行安全操作。
  17. 如請求項16所述的系統,其中所述程式影像的所述至少一部分包括數位簽名,且 所述第二處理器更被配置以基於所述數位簽名產生所述密鑰。
  18. 如請求項17所述的系統,其中所述非揮發性記憶體更被配置以儲存用於驗證所述數位簽名的驗證資訊,且 所述第二處理器更被配置以: 基於所述驗證資訊驗證所述數位簽名,以及 基於所述驗證的結果產生所述密鑰。
  19. 如請求項16所述的系統,其中所述第二處理器更被配置以因應於以下中的至少一者而將所述加載資訊寫入至所述非揮發性記憶體:在所述系統的製造製程期間所述系統中的初始設定,所述系統的主重設,以及所述第一處理器將與所述程式影像對應的應用安裝至作業系統上。
  20. 一種由積體電路執行的方法,所述積體電路包括第一處理器及第二處理器,所述方法包括: 由所述第二處理器自系統記憶體讀取程式影像的至少一部分,所述程式影像能夠由所述第一處理器執行; 由所述第二處理器基於所述程式影像的所述至少一部分產生密鑰;以及 由所述第一處理器基於所述密鑰執行安全操作。
TW109132804A 2020-01-08 2020-09-23 積體電路、用於安全地管理用於資料安全的多個密鑰的系統以及由積體電路執行的方法 TW202147100A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0002692 2020-01-08
KR1020200002692A KR20210089486A (ko) 2020-01-08 2020-01-08 키를 안전하게 관리하기 위한 장치 및 방법

Publications (1)

Publication Number Publication Date
TW202147100A true TW202147100A (zh) 2021-12-16

Family

ID=76432389

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109132804A TW202147100A (zh) 2020-01-08 2020-09-23 積體電路、用於安全地管理用於資料安全的多個密鑰的系統以及由積體電路執行的方法

Country Status (5)

Country Link
US (1) US11533172B2 (zh)
KR (1) KR20210089486A (zh)
CN (1) CN113094720A (zh)
DE (1) DE102020119389A1 (zh)
TW (1) TW202147100A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018127330A1 (de) * 2018-11-01 2020-05-07 Infineon Technologies Ag System-on-Chip und Verfahren zum Betreiben eines System-on-Chip
CN114996725B (zh) * 2022-05-06 2023-07-28 北京中科昊芯科技有限公司 一种保护开发程序的方法以及处理器

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014049830A1 (ja) * 2012-09-28 2014-04-03 富士通株式会社 情報処理装置および半導体装置
US9008304B2 (en) 2012-12-28 2015-04-14 Intel Corporation Content protection key management
JP6099418B2 (ja) * 2013-02-01 2017-03-22 ルネサスエレクトロニクス株式会社 半導体装置及びそのデータ処理方法
KR101508439B1 (ko) 2013-10-28 2015-04-08 포항공과대학교 산학협력단 데이터 기밀성 보장 방법, 이를 이용하는 데이터 공유 방법 및 시스템
US9686077B2 (en) 2014-03-06 2017-06-20 Microsoft Technology Licensing, Llc Secure hardware for cross-device trusted applications
EP2955872B1 (en) 2014-06-12 2016-10-12 Nxp B.V. Method for configuring a secure element, key derivation program, computer program product and configurable secure element
KR20160058375A (ko) 2014-11-14 2016-05-25 삼성전자주식회사 단말 내장형 보안 요소와의 안전한 통신
JP6357091B2 (ja) 2014-12-03 2018-07-11 Kddi株式会社 情報処理装置、及びコンピュータプログラム
US9621342B2 (en) 2015-04-06 2017-04-11 Qualcomm Incorporated System and method for hierarchical cryptographic key generation using biometric data
US10482036B2 (en) 2016-09-18 2019-11-19 Winbond Electronics Corporation Securely binding between memory chip and host
US10776522B1 (en) * 2018-02-20 2020-09-15 Xilinx, Inc. Asymmetric protection of circuit designs
JP7009270B2 (ja) * 2018-03-14 2022-01-25 キヤノン株式会社 情報処理装置及びプログラムの検証方法
CN110655922B (zh) 2018-06-29 2024-02-27 昭荣化学工业株式会社 使用In3+盐作为掺杂剂的ZnSe量子点的波长调谐
US11011614B2 (en) 2018-06-29 2021-05-18 Taiwan Semiconductor Manufacturing Company, Ltd. High electron mobility transistor (HEMT) device and method of forming same
US11055105B2 (en) * 2018-08-31 2021-07-06 Micron Technology, Inc. Concurrent image measurement and execution
IT201900005020A1 (it) * 2019-04-03 2020-10-03 Stmicroelectronics Application Gmbh Sistema di elaborazione, relativo circuito integrato, dispositivo e procedimento
KR20210089485A (ko) 2020-01-08 2021-07-16 삼성전자주식회사 소프트웨어의 인증을 위한 장치 및 방법

Also Published As

Publication number Publication date
DE102020119389A1 (de) 2021-07-08
US20210211281A1 (en) 2021-07-08
KR20210089486A (ko) 2021-07-16
CN113094720A (zh) 2021-07-09
US11533172B2 (en) 2022-12-20

Similar Documents

Publication Publication Date Title
KR100792287B1 (ko) 자체 생성한 암호화키를 이용한 보안방법 및 이를 적용한보안장치
JP5537742B2 (ja) 多ユーザ機密コードおよびデータを保護するためのアーキテクチャを含む方法および装置
KR102013841B1 (ko) 데이터의 안전한 저장을 위한 키 관리 방법 및 그 장치
TWI489308B (zh) 未知安全金鑰下開機影像之安全更新
CN104252881B (zh) 半导体集成电路及系统
TWI581630B (zh) 保全金鑰產生裝置和方法、主機元件以及儲存元件
JP4616345B2 (ja) 配布cdを用いて直接証明秘密鍵を装置に配布する方法
KR20050008847A (ko) 휴면 보호
JP2005227995A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2011522469A (ja) 保護されたソフトウエアイメージを有する集積回路及びそのための方法
KR20160004308A (ko) 보안 파라미터들에 기초한 작업 보안 키의 생성
TW201203092A (en) Recording apparatus, writing apparatus, reading apparatus, and method of controlling recording apparatus
JP2007512787A (ja) トラステッド・モバイル・プラットフォーム・アーキテクチャ
TW200937249A (en) Handling of secure storage key in always on domain
CN109445705B (zh) 固件认证方法及固态硬盘
JP7406013B2 (ja) 構成設定の安全な署名
JP2020030527A (ja) 記憶装置及びプログラム
US11829464B2 (en) Apparatus and method for authentication of software
TW202147100A (zh) 積體電路、用於安全地管理用於資料安全的多個密鑰的系統以及由積體電路執行的方法
KR102068485B1 (ko) 불 휘발성 메모리 모듈 및 그것의 동작 방법
JP2022527069A (ja) ランタイムコード実行検証
US10452565B2 (en) Secure electronic device
US11874928B2 (en) Security device, electronic device, secure boot management system, method for generating boot image, and method for executing boot chain
KR20210134053A (ko) 오버-디-에어 업데이트 유효성 확인 방법
CN115062330B (zh) 基于tpm的智能密码钥匙密码应用接口的实现方法