TWI440351B - 可檢驗的、對洩漏有抵抗性的加密與解密 - Google Patents
可檢驗的、對洩漏有抵抗性的加密與解密 Download PDFInfo
- Publication number
- TWI440351B TWI440351B TW099142160A TW99142160A TWI440351B TW I440351 B TWI440351 B TW I440351B TW 099142160 A TW099142160 A TW 099142160A TW 99142160 A TW99142160 A TW 99142160A TW I440351 B TWI440351 B TW I440351B
- Authority
- TW
- Taiwan
- Prior art keywords
- key
- message
- cryptographic
- encrypted
- hash
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/556—Detecting local intrusion or implementing counter-measures involving covert channels, i.e. data leakage between processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/76—Protecting 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
- H04L9/16—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3271—Cryptographic 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 challenge-response
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/75—Protecting 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 by inhibiting the analysis of circuitry or operation
- G06F21/755—Protecting 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 by inhibiting the analysis of circuitry or operation with measures against power attack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/40—Specific encoding of data in memory or cache
- G06F2212/402—Encrypted data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2107—File encryption
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2125—Just-in-time application of countermeasures, e.g., on-the-fly decryption, just-in-time obfuscation or de-obfuscation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2145—Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/061—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying further key derivation, e.g. deriving traffic keys from a pair-wise master key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本專利係關於用於處理加密的資料輸入的技術,且更明確而言,係關於針對外部監控的攻擊保護此等系統及資料。
運算敏感資料的系統需要針對由攻擊者揭露或改變的此等資料的未授權的存取而作保護。得到對密碼金鑰及其他機密的存取的攻擊者可能竊取或竄改敏感資料,導致嚴重的後果,例如透過引進未授權的命令而顛覆系統的關鍵運算,及暴露機密的或所有人的資訊。一個受連累的元件亦可用於發動進一步攻擊,使得系統的其他元件遭到危險。更明確而言,先前研究已顯示一攻擊者可監控一裝置的外部特性,例如運算時間點、功率消耗及/或電磁輻射,且使用此額外的資訊以提取用於裝置中的機密金鑰。舉例而言,如Kocher等人所述(見P.Kocher,J. Jaffe,B. Jun,「Differential Power Analysis」Advances in Cryptology-Crypto 99 Proceedings,Lecture Notes In Computer Science Vol. 1666,Springer-Verlag,1999),本領域中眾所周知一裝置的外部監控對不同資料使用相同組的金鑰實行一連串的密碼運算可導致金鑰的洩漏。
因為外部監控攻擊係典型地消極且非侵入性,所以傳統的基於抑制實體存取或偵測不適當使用情形的抗竄改的防衛不足以或無法切實針對此等攻擊提供保護。舉例而言,使用實體保衛、良好防護的房間的管理機密金鑰的方法係在先前技術領域中為已知的。然而,在許多應用中,要求密碼系統在其給定的預期運算的環境中,以維持實體隔絕設備係並非可行的。此外,此等設備在建造及運作上係為昂貴的,且其能力可能仍非完美得避免洩漏至敵手的小量的資訊。
當然,先前技術領域已知的其他方法可避免監控攻擊而減輕資訊洩漏的問題,無須依賴實體防護。此包括用於減少資訊的量(或比率)從交易洩漏、修改密碼演算法實施以隨機計算中間值、及/或在功率消耗及運算時間點導入雜訊的方法。
舉例而言,美國專利號6539092,名為「Leak-Resistant Cryptographic Indexed Key Update」,提供一種用於將一分享的主要金鑰及一索引值(例如,一計數器)轉換成一交易金鑰,其中推導係針對外部監控攻擊而作保護。該等方法在針對外部監控攻擊可貢獻至交易金鑰的推導的裝置的應用中很成功。舉例而言,’092專利說明一智慧型卡可如何維持在各交易中增加的一索引計數器,接著使用索引計數器於金鑰推導中。
然而,存在某些應用,其中在一協定中的參與者應針對外部監控攻擊而被保護,但如’092專利中所述,其缺乏儲存一連串計數器及更新的金鑰的能力。舉例而言,考慮一裝置需要定期處理相同輸入資料的情況,例如包含一固定且不變的植入的金鑰的一裝置,其重複地被使用以任意的順序解密密文。韌體加密係為此一應用的一範例;可製造一微處理器在使用者空間檔案系統中具有一植入的金鑰,且在每一次重啟動中,微處理器需要從一非信任的外部快閃記憶體重新解密其韌體影像。韌體影像可偶然地被更新,但相同的密文亦可重複地被解密。因此,應用需求及實體製造限制兩者(例如歸因於一次性可程式化使用者空間檔案系統的使用以持有金鑰而無法修改儲存的金鑰)可使其對裝置限制解密金鑰將被使用的次數係為不切實際的。韌體發佈者可使用’092專利中所述的方法,其在每次釋出一新的加密的韌體影像時具有一新的索引值,但解密裝置無法在各重啟動上使用一不同的索引值,因為將索引值改變成不同於加密裝置所使用的一個值將導致一不正確的解密。因此,一攻擊者可潛在地供應具有竄改的資料組的解密裝置,接著嘗試在裝置處理(例如,解密等等)此等密文的同時藉由監控外部特性而恢復機密金鑰。統計側通道攻擊,例如差動功率分析(DPA),可推論來自一組量測的一機密金鑰,該組量測係在一裝置重複地使用相同金鑰以運算於不同輸入值時被收集(例如,在上述範例中的不同韌體密文或相同韌體密文的竄改的版本)。來自一單一長訊息的量測(例如,包含許多區塊加密(block cipher)輸入)或合理訊息的一收集(例如,多重韌體版本)亦可提供足夠的資料用於一側通道攻擊,即使密文訊息並無被竄改。
當然,在一裝置對每一交易使用相同的金鑰的某些情況中,裝置理論上可實施一封鎖(lock-out)(例如,若超出一交易或失敗臨界,則藉由自我破壞而實施)以限制一敵手可觀察到的交易的數量。然而,封鎖機制導入數種實際的問題,例如可靠度問題及與儲存一失敗的計數器相關聯的困難(例如,許多半導體製造處理缺乏晶片上非揮發性儲存的保衛,且晶片外儲存係難以保衛)。
有鑑於所有以上所述,一種對裝置提供一可檢驗保衛方式以通訊且交換資料的方法,而針對外部監控攻擊保護且對裝置有能力拒絕非真實資料的方法將為有益的。
本專利說明針對外部監控攻擊使用機密密碼金鑰保衛裝置的方式,以及針對蒐集關聯於裝置的內部運算的資訊的傳統密碼分析及其他攻擊(例如,DPA及外部監控攻擊的其他形式)提供改善的安全性。用於加密敏感資料的各種範例實施例被揭露於說明書中。
儘管此等各種實施例在其細節中可能相當程度的改變,但其均包含於以下一般技術中,而可立即相對於說明書中所述的各種實施例被檢驗:相對於加密,待加密的各組資料係與一訊息識別符相關聯(例如,一交易/訊息計數器、明文的一雜湊、一隨機值、或另一獨特或半獨特的值)。加密裝置使用訊息識別符及與加密裝置分享的一初始機密內部狀態推導一訊息金鑰。此推導以反覆的方式透過連續的一或多個中間金鑰而實行,從至少一部份分享的機密內部狀態開始且引導至訊息金鑰,其中,在各重複中,下一個金鑰取決於至少一個先前金鑰及至少一部份的訊息識別符。明文可被分解成一或多個片段。各明文片段以一或多個機密金鑰加密,機密金鑰可包括訊息金鑰或進一步從訊息金鑰推導出的金鑰,以創造相對應的加密的片段。典型地,各片段使用不同的金鑰(或不同組的金鑰)。
加密裝置接著使用與解密裝置分享的一機密金鑰(例如,訊息金鑰、機密內部機密、一不同的金鑰、從以上推導出的金鑰等等)以計算至少一個確認符。確認符的推導可使用與用於產生訊息金鑰類似的一重複處理而實行,其中一連串的變換式被應用至機密金鑰以產生連續值(舉例而言,各中間值的生成包括雜湊其親屬值)。
加密裝置輸出一或多個加密的片段及一或多個確認符。亦可如所需的輸出額外的資訊,以使得接受者可決定訊息識別符。
在相對應的加密處理期間,一解密裝置接收一或多個加密的片段、一或多個確認符、及相對應於加密的片段的訊息識別符。解密裝置接著使用一或多個確認符檢驗待解密的至少第一加密的片段並無被修改。確認符的檢驗可包括從與加密裝置分享的一機密開始計算一連串連續的中間值,且其中各中間值係其親屬的雜湊(且特定雜湊運算取決於該加密的片段的一部份雜湊)。典型地,唯若檢驗出片段並未被修改時,准許進行對一加密的片段的解密處理。若檢驗成功,解密裝置使用與加密裝置分享的機密內部狀態,藉由跟隨由加密裝置所跟隨的相同反覆金鑰推導處理(即,從至少一部份分享的機密內部狀態開始,透過一連串中間金鑰,引導至最終訊息金鑰,其中於各步驟下一個金鑰取決於至少一部份的訊息識別符及至少一個先前金鑰),而計算訊息金鑰(若並未被推導)。各加密的片段(若決定為未被修改的)以從訊息金鑰推導出的一或多個相對應的機密金鑰解密,而恢復相對應的明文片段。
此專利中所述的技術使得多方能夠針對外部監控攻擊而以增進的安全性通訊密碼保護的敏感資料。雖然範例實施例牽涉兩方說明,典型地稱為一「加密裝置」及一「解密裝置」,但是「裝置」一詞係為了方便起見而選擇,且無須直接相對應至一系統設計中的任何特定角色。舉例而言,加密及解密裝置兩者可均為可攜式硬體裝置。或者,加密裝置可為運算於一設備中運行於一伺服器上一軟體應用程式,同時解密裝置可為一可攜式硬體裝置(反之亦然)。再者,雖然大多密碼運算牽涉兩方,但是此專利的技術當然可應用於僅牽涉一方的環境中(例如,在保衛記憶體或儲存系統中,其中兩者的角色係受到一單一方及/或裝置的控制,例如,第8圖中圖示的範例環境中),或應用於牽涉兩者以上的多方及/或裝置的環境中(例如,第10圖中圖示的範例實施例中)。
熵重新分佈運算
如此處所使用,一「熵重新分佈運算」(或「熵分佈運算」)係混合其輸入的一運算,使得關於輸入位元的未知資訊在輸出位元之間重新分佈。舉例而言,假設x
位元密碼金鑰K0
係以一熵重新分佈運算f反覆地處理,使得金鑰Ki
=f(Ki-1
),其中各個i>1。接著,假設一敵手獲得關於n個不同金鑰Ki
之各者的資訊的y
位元(例如,被獲得為一嘗試的外部監控攻擊的部份),提供充分足夠的資訊以解出金鑰K0
(例如,y
*n
>x
)。熵分佈運算f的使用可使得此解決方案計算上為不可行的。一密碼雜湊函數H係運算的一範例,其可被使用作為一熵重新分佈運算。舉例而言,考慮產生一256位元結果的一強的雜湊函數H。給定一隨機256位元初始金鑰K0
,使得Ki
=H(Ki-1
)其中各個i>1。具有(舉例而言)各K0
…K999,999
的最不重要位元的知識的一敵手具有關於K0
的1,000,000位元資料。具有無限計算能力的一假設性敵手可藉由對K0
測試所有可能的2256
值而找到K0
,以識別與最不重要的位元的已知序列一致的一值。然而,實際敵手具有有限計算能力,且熵重新分佈運算避免在給定透過嘗試的外部監控攻擊所洩漏的資訊下被以一計算上實際方式解出K0
(或任何其他Ki
)。
熵重新分佈運算可(而非限於)使用密碼雜湊函數實施,運算使用區塊加密(例如AES)、擬隨機變換、擬隨機排列、其他密碼運算、或以上之結合而建構。為了方便起見,某些範例實施例以一雜湊敘述,但本領域中之技藝人士將瞭解依照以上敘述,亦可替代使用或額外使用其他熵重新分佈函數。
亦可從一基本運算建構多重熵重新分佈運算。藉由範例的方式,若需要兩個256位元的熵重新分佈運算f0
()及f1
(),則f0
()可包含將SHA-256密碼雜湊函數應用至與對f0
()的輸入連鎖的運算識別符字串「f0」,同時f1
()可包含將SHA-256密碼雜湊函數應用至與對f1
()的輸入連鎖的運算識別符字串「f1」。熵重新分佈運算可使用已知AES區塊加密(block cipher)建構。舉例而言,為了實施f0
()...fb-1
(),各fi
()可使用其輸入作為AES-256金鑰以加密在0...b-1的選擇中獨特的一對128位元輸入區塊,而產生256位元的輸出。基於雜湊函數及MAC建構的各種區塊加密(block cipher)亦為先前技術領域中已知且亦可被利用。
分享的密碼值及運算
此段說明某些密碼值及/或運算,由加密裝置及其相對應的解密裝置兩者分享,用於實行如此專利中所說明的可檢驗抗洩漏密碼運算。
加密裝置及解密裝置被設定,使得其各者可存取一基本分享的機密密碼狀態值,例如標示為KROOT
的一機密金鑰。舉例而言,此機密狀態可儲存於EEPROM、快閃、使用者空間檔案系統、或在一抗竄改晶片上的其他儲存之一或多者中,且可全部或部份從其他值或處理推導出,或可外部地獲得。此等裝置之各者獲得KROOT
的方法可包括(但不限於)其各者以KROOT
製造、裝置彼此直接溝通KROOT
,或透過第三方溝通(例如,使用利用RSA、Diffie-Hellman、或其他公眾密碼技術的協定,或對稱技術)、透過一實體鍵入介面接收KROOT
、隨機產生KROOT
(例如,若加密及解密裝置係為相同的)等等。
此外,加密裝置及解密裝置兩者亦能夠計算一組非線性密碼熵重新分佈運算f0
(),f1
()...fb-1
(),其中b>1係為一正整數。此等b個熵重新分佈函數可配置於一樹狀結構中。舉例而言,具有高度為Q的一單純b相關的樹狀結構(即,具有從0至Q的Q+1層級)可使用b個相異熵分佈函數f0
()...fb-1
()創造,以於樹的各節點代表此b相關的樹的b個可能分支,各節點代表一可能的推導的金鑰。在此一樹中,從一根密碼金鑰KSTART
開始(其於層級0處),可於層級1處計算b個可能推導的金鑰:最左邊的分支為f0
(KSTART
);下一個分支為f1
(KSTART
);且繼續直到最右邊的分支為fb-1
(KSTART
)。於層級2處,可推導b2
個可能金鑰,因為f0
()...fb-1
()之各者可應用至b個可能層級1金鑰之各者。當然,計算一特定層級2節點僅需要二的計算結果,而非b2
(即,不在路徑上的節點並不被計算)。樹繼續用於連續的層級1至Q,其中一先前層級的各可能金鑰(即,一不同的節點)可藉由依序應用f0
()...fb-1
()而處理,以推導b個額外可能推導的金鑰。整體的金鑰樹具有Q+1個層級,以於層級0處的一單一節點開始,繼續於層級i處的bi
節點,且結束於層級Q處的bQ
節點。因此,存在從層級0處的根節點至層級Q處的bQ
最終節點的bQ
個可能路徑。各此等可能的路徑(相對應於應用於不同層級的一獨特連串函數)可以一連串Q個整數代表,各整數係選自(0...b-1)。
舉例而言,在一範例實施例中,b=2。因此,使用兩個熵重新分佈運算f0
()及f1
()(且可從一基本運算建構,例如上述)。若Q=128(即,高度係為128),則可能有2128
個路徑且需要128個熵重新分佈函數計算結果以從層級0節點(即,開始金鑰)推導層級Q金鑰。
作為一變化,實施例可牽涉更多種b的選擇,例如在層級之間改變b的值,及/或基於一特定層級採取的路由改變b。同樣地,亦可改變熵重新分佈運算,例如藉由使得熵重新分佈運算fi
()於不同層級處不同,或使得此等運算取決於一特定層級所採取的序列。
加密及解密裝置亦能夠實行一密碼的、非線性金鑰鏈運算g(),其可與函數fi
()相異(但並非必定的)。舉例而言,在一個實施例中,g()由一密碼雜湊運算組成。各種實施例可對g()的不同應用使用不同的函數,包括從一基本函數建構的變數(例如,以一計數器或代表g()的應用的另一值雜湊輸入資料)。
加密裝置及解密裝置亦具有一密碼的、抗衝突、單向雜湊函數h()(例如,利用為一片段雜湊函數)而與運算fi
()及g()相異。
在一範例實施例中,運算fi
()、g()及h()之各者係藉由計算各運算為一運算識別符及輸入資料的密碼雜湊而從一通用密碼雜湊函數建構。舉例而言,運算識別符可為零終結字串,由「f#」、「g」或「h」組成,其中#係為對給定的fi
()的i的值,使得對f0
()的運算識別符將為「f0」。使用輸入作為金鑰的一運算識別符的HMAC亦可被用於實施此等運算。可與此專利的技術一起使用的雜湊函數包括,但非限於MD5、SHA-1、SHA-256、SHA-512、任何SHA3候選、以及上述的結合及使用上述而建構(例如,HMAC)。如此處所使用,函數BLAKE、Blue Midnight Wish、CubeHash、ECHO、Fugue、Grostl、Hamsi、JH、Keccak、LANE、Luffa、Shabal、SHAvite-3、SIMD及Skein之各者係為一「SHA3候選運算」。在其他實施例中,使用其他眾所周知的建構推導雜湊函數,例如但非限於Matyas-Meyer-Oseas、Davies-Meyer、Miyaguchi-Preneel、Merke-Damgard等等,其將諸如AES、DEA或其他加密的區塊加密(block cipher)轉換成一雜湊函數。非抗衝突的變換(例如,MD5、雜湊變換的減少的迴圈變數、或其他混合的運算)亦可重新分佈呈現於輸入中的熵,但對用於單向函數h()將為較不具吸引力的。
儘管如此,其他實施例可在實施熵重新分佈運算f0
...fb-1
()中使用串流加密(stream cipher),潛在地包括輕量及潛在地密碼弱串流加密。舉例而言,可利用串流加密RC4,其中熵重新分佈運算輸入係用作RC4金鑰,且RC4輸出位元係用作(或被使用以形成)熵重新分佈運算輸出。
加密裝置及解密裝置具有一相對應解密函數DEC()的一機密金鑰加密函數(或函數組)ENC()。在某些實施例中,諸如具有固定長度的訊息中,ENC()及DEC()可使用諸如ECB或CBC模式中的AES的傳統加密建構。對其他實施例的ENC()及DEC()建構係分別相對於第13圖及第14圖如後說明。
在第1及2圖中的範例實施例
此段說明用於可檢驗抗洩漏的加密及解密的大致技術的一範例實施例。此第一範例實施例使用金鑰鏈及密文雜湊鏈。
熵
為了方便起見,隨著密碼學中的傳統命名,吾人使用「明文」一詞指稱待加密的資料。技藝人士將瞭解,此並非必定意味著輸入資料係為人可解讀的,且實際上,並不排除此資料本身在被此專利的技術保護之前,被壓縮、編碼、或甚至被加密。類似地,技藝人士將瞭解「資料」一詞包含經處理的任何數量,且可包括但非限於內容、資料、軟體、程式碼、及任何其他類型的資訊。
給定待保護的一敏感明文資料訊息D,且具有一分享的基本機密密碼值KROOT
的知識,加密裝置實行如第1圖中所概述的以下步驟。首先將敏感明文資料D分解成一連串L片段D1
、...、DL
(步驟100),其中(L≧1),其各者足夠小以符合至記憶體中用於將片段輸入接收器中。此外,此等片段之各者的尺寸應足夠小以滿足應用及實施的洩漏要求。片段可為但非必定具有相同尺寸。此外,其他變數亦可藉由改變金鑰(例如,在ENC()及DEC()中)支援未限定尺寸的片段,如將顯示於以下相對於第13及14圖。
加密裝置亦產生(步驟101)一偽隨機數N(將顯示於以下),其可使用作為一訊息識別符(或一前導)用於與D的加密連接。舉例而言,偽隨機數(nonce)可使用一真隨機數產生器、一偽隨機數產生器、真及偽隨機數產生器的某些結合、一計數器值或其他(較佳地為獨特的或極少重複的)參數而產生,或藉由從金鑰及/或加密裝置可取得的資料(包括但不限於D,例如,藉由設定N為部份或所有的D的雜湊)推導N而產生。在第1圖中,對一給定的KROOT
,用於加密一特定訊息的N的值較佳地不用於加密任何其他訊息(或若然,則任何重複使用應被限制為不容易的及/或不常的)。
在以下的範例實施例中,使用偽隨機數N形成一訊息識別符H1
。在最直截了當的實施中,N供應作為訊息識別符,H1
可簡單地等於N。如另一範例,N供應作為對訊息識別符的一前導,加密裝置可使用函數h()計算H1
(步驟102)為N的雜湊。在吾人希望產生一固定尺寸的訊息識別符的情況中,雜湊係為有用的,舉例而言,當為了計算結果效率而運算於較短的數量時准許併入較長資料值(例如,文字字串),或為了計算結果簡化而將可改變長度的資料值轉換為一統一長度訊息識別符,或減少敵手可具有以影響H1
的選擇的任何可能性。當然,雜湊僅為產生訊息識別符的一種方式,且技藝人士將理解可利用不同於h的函數產生H1
。
在計算H1
之後,加密裝置使用分享的基本機密密碼值KROOT
及H1
作為輸入一抗洩漏、基於金鑰樹的金鑰推導處理而計算一訊息金鑰KMESSAGE
(103)。為了討論的方便,金鑰推導處理在此處呈現為加密的上下文(例如,由加密裝置實行),且更具體而言,在第1圖的第一範例加密處理的上下文中。然而,相同的金鑰推導處理亦將被用於第4圖的第一範例解密處理中,在此情況中將藉由解密裝置實行。類似地,金鑰推導處理亦將被用於與其他處理連接,包括第5、11及13圖的範例加密處理,及第6、12及14圖的範例解密處理。
一範例金鑰推導處理係圖解於第2圖中。處理從樹的一開始點起始,其標示為KSTART
(201)及一路徑P1
...PQ
(202)。舉例而言,在上述第1圖的步驟103,KSTART
係為分享的機密金鑰KROOT
的值且路徑P1
...PQ
(202)係藉由H1
決定。(以下討論將H1
轉換為P1
...PQ
)。路徑表明應用至KSTART
的一連續的熵重新分佈運算。
在一範例實施例中,訊息識別符H1
被分解為Q個部份:P1
、P2
、...、PQ
。在一範例分解中,各部份Pi
係為從0至(b-1)的一整數(例如,若b=4,則各Pi
係為兩個位元的值(0、1、2、或3))。同樣地,若b=2,則各Pi
係為一單一位元(0或1)。因此,路徑部份P1
...PQ
可用於藉由應用函數f0
()、f1
()、...、fb-1
()而產生多個中間金鑰引導至如下的KSTART,PATH
來表明從KSTART
至KSTART,PATH
的一特定路徑。首先,將函數應用至KSTART
(203)以生成一中間金鑰,接著藉由將應用至以生成中間金鑰(204),且依此類推,直到最終將應用至中間金鑰(205)以生成最終推導的金鑰(206)。注意各中間金鑰的推導取決於至少一個前趨金鑰(predecessor key)(例如,在第2圖的情況中的中間親屬)及訊息識別符的相關部份。為了方便起見,吾人將標示此最終推導的金鑰為標誌KSTART,PATH
(指示由KSTART
開始且跟隨PATH所達成的金鑰)。同樣地,在第1圖步驟103的情況中,最終推導的金鑰(指派至KMESSAGE
的訊息金鑰)係標示為,因為開始金鑰實際上係為KROOT
,且路徑實際上係為P1
、P2
、...、PQ
,其係為H1
的簡單分解。(在替代實施例中,KMESSAGE
可從推導出,例如藉由。以任一方式,KMESSAGE
係基於)。
於步驟104,資料片段使用基於該訊息金鑰KMESSAGE
的至少一個密碼金鑰加密,從輸入片段D=D1
、...、DL
產生密文E=E1
、...、EL
。用於步驟104的一範例實施例係顯示於第3圖中,其描繪牽涉計算加密的片段E1
、...、EL
的步驟及狀態。
第3圖的處理使用KMESSAGE
計算L個個別片段加密金鑰Ki
(i=1至L),各金鑰被用於加密機密訊息資料D的一相對應片段Di
(i=1至L)。首先,將函數g()應用至KMESSAGE
以生成用於第一片段的加密金鑰K1
(302)。接著,將函數g()應用至K1
以生成用於第二片段的加密金鑰K2
(303),且依此類推。最終,將函數g()應用至KL-1
以生成用於最終片段的加密金鑰KL
(305)。吾人稱此類型的處理為金鑰鏈,因為加密金鑰一個接著一個被鏈鎖。
在對加密L個片段決定L個金鑰K1
、...、KL
之後,片段的加密如下繼續進行。最終(L’th)片段係首先被進行,其中對ENC()函數的明文輸入(306)係為L’th資料片段DL
,與藉由密碼雜湊的整體明文D1
...DL
計算的訊息完整值連鎖。(D1
...DL
的雜湊的包含係為可選地;實施例可省略此,或連鎖諸如一連串「0」位元或填充的某些其他形式的其他資料)。此L’th明文片段係藉由金鑰KL
加密以生成加密的片段EL
(307)。
接著,第L-1’th的片段係藉由將雜湊函數h()應用至EL
、將此雜湊值附加至資料片段DL-1
、且使用該結果作為對L-1’th片段的加密輸入而於(308)處理。於(309),L-1’th明文片段接著使用金鑰KL-1
加密以生成加密的片段EL-1
。此處理對其他片段重複進行。舉例而言,相對應至第二明文片段的加密輸入(310)係由第二資料片段D2
跟隨著h(E3
)及第三加密的片段的雜湊而構成,且輸入(310)接著使用金鑰K2
加密以生成加密的片段E2
(311)。最終,相對應於第一明文片段的加密輸入(312)係由第一資料片段D1
跟隨著h(E2
)及第二加密的片段的雜湊(311)而構成,且輸入(311)接著使用金鑰K1
加密以生成加密的片段E1
(313)。(接續的片段雜湊無須被加密而作為以上的一變數,例如,Ei
可藉由加密Di
而接著將加密結果與Ei+1
的雜湊連鎖而形成)。
加密的片段E1
...EL
形成密文E。第1圖中的步驟104接著被完成。使用Ei
的計算結果中的各Ei+1
的雜湊有效率地將加密的值鏈在一起,其供以使得解密裝置能夠在解密有缺陷的片段之前偵測經修改(或有缺陷)的密文片段。吾人將此稱之為「密文雜湊鏈」。在以上所顯示的範例中,各密文片段Ei
(1<i<L)取決於下一個密文片段的雜湊,例如,一確認符V係用以鑑別第一密文片段(E1
)的雜湊,接著E1
(若為必須則在對D1
解密之後)生成預期的E2
的雜湊。同樣地,E2
(若為必須則在解密之後)生成片段E3
的雜湊,且依此類推。
應注意,當所有的資料係在一個片段中(即,L=1)(例如,因為輸入訊息係為小的,或利用諸如第13圖中所顯示的處理的一加密處理ENC())時,第3圖的處理仍可實行。對於L=1的情況,僅需要K1
且K1
=g(KMESSAGE
)。或者,KMESSAGE
可直接使用作為K1
,而在此情況中運算g()可全部一起被省略。如上所述,D1
...DL
的雜湊(其在此情況中,因為L=1所以僅為D1
)被包括係為可選地。因為此係僅有的片段,所以處理的結果E=E1
。
回頭參照第1圖,在資料片段Di
已被計算之後,計算一確認符V,其將使得加密的訊息的認證的接收器在解密之前能夠鑑別密文。首先,計算一值H2
(105)作為第一加密的片段E1
的雜湊。回想第一片段E1
併入所有其他片段的雜湊。因此,E1
的雜湊實際上反應所有片段的內容,包括片段E1
,且可被用於檢驗並無片段被改變。(可選地,除了E1
之外,對雜湊產生的H2
的輸入亦可包括關於訊息的額外資訊,例如長度、版本號、發送者身份、N的值等等)。
接著,加密裝置使用一機密金鑰以計算V(106),其係為訊息識別符及密文片段Ei
的一確認符。確認符V使用至少一個密文片段的雜湊(例如,雜湊H2
=h(E1
))及一初始機密(例如,KMESSAGE
,或如以下段落中所述的其他值)計算。V的計算可使用第2圖中所述的抗洩漏、基於金鑰樹的推導處理而實行,其具有開始金鑰KSTART
係為KMESSAGE
且路徑係使用H2
(106)決定。因此,V的推導包括計算多個中間值引導至V,其各者取決於至少一個前趨(predecessor)(例如,在第2圖的情況係為其親屬值)及雜湊的相關部份(例如,H2
)。應注意函數fi
()、值b等等可為(但非必須為)與(103)中使用的相同。此處理導致金鑰的推導,其係為(或進一步被處理以形成)確認符V。
以上說明以KMESSAGE
開始著手推導確認符,但替代實施例可以一不同的值開始。舉例而言,於步驟104的金鑰KMESSAGE
及於步驟106的金鑰KMESSAGE
可彼此不同,但兩者均從推導出。同樣地,於步驟106使用的金鑰可從於步驟104使用的KMESSAGE
推導出,或反之亦然,或可利用不同的基本金鑰(除了KROOT
之外)作為KSTART
。當然,KROOT
本身亦可使用作為KSTART
(例如,若H2
係為N的一雜湊及/或H1
及一或多個密文片段)。
如此專利所使用的確認符係一可檢驗密碼證明,其某些推定的密文係為與一特定訊息識別符相關聯的某些明文訊息資料的一加密的未修改版本,且已經藉由可存取一機密密碼值的一實體產生。建構於步驟106的確認符可藉由一接收器(例如一解密裝置)以避免對差動功率分析及相關的外部監控攻擊的易感受性的方式方而便地證實。此外,確認符創造處理(即,步驟106的性能)亦使得加密裝置能夠避免對差動功率分析及相關的外部監控攻擊的易感受性。
在計算確認符之後,加密處理便完成。於步驟107,結果係為輸出。輸出資料係由必須的資訊(若有任何,例如,偽隨機數N)所組成,使得一接收器能夠推導訊息識別符、確認符V、及加密的結果E(包含加密的片段E1
、...、EN
)。藉由結合金鑰鏈及密文雜湊鏈,此類型的加密處理能夠生成具有訊息認證的強的密碼的輸出,同時針對加密裝置促進差動功率分析及相關的攻擊的方式,以避免位於加密裝置中機密金鑰的重複使用。加密的結果係以一形式創造,該形式使得一解密裝置能夠以針對解密裝置促進差動功率分析及相關的攻擊的方式,實行解密而無須重複使用機密金鑰。金鑰樹處理限制金鑰以KMESSAGE
及確認符V的形式重複使用,同時密文雜湊鏈方法限制資料加密中所使用的金鑰的使用。
下一段解釋輸出資料如何可接續地由解密裝置解密。
解密
第4圖顯示相對應於第1及3圖的範例加密處理的一範例解密處理。如早先所述,此需要解密裝置及加密裝置兩者具有推導相同的訊息識別符(例如,因為各裝置已知偽隨機數N,所以其可計算H1
)、基本機密密碼值KROOT
、密碼函數f()、g()及h()的能力。範例解密處理將使用第2圖中描繪的相同的金鑰推導處理(及金鑰鏈)。
範例加密處理於步驟400起始,該步驟為獲得(例如,在一非信任的數位介面上)加密推定的結果(即,訊息識別符(例如,偽隨機數N)、確認符V、及包含片段E1
、...、EN
的加密的結果E)。於步驟401,裝置接著藉由雜湊接收到的偽隨機數N計算值H1
。應注意,除非不正確地接收到偽隨機數,推導的H1
將等於用於加密處理中的H1
。於步驟402,解密裝置藉由雜湊片段E1
計算值H2
(且若先前在加密期間使用,則關於訊息的其他資訊已經被併入H2
的推導中)。於步驟403,裝置以KSTART
=KROOT
及PATH=H1
,嘗試使用第2圖中所述的抗洩漏、基於金鑰樹的金鑰推導處理,計算訊息金鑰KMESSAGE
。於步驟404,裝置藉由使用與加密裝置相同的抗洩漏、基於金鑰樹的金鑰推導處理(例如,第2圖中的處理使用金鑰KSTART
=KMESSAGE
及PATH=H2
),計算預期的確認符V’。於步驟405,計算的值V’與接收的確認符V作比較。若預期的確認符V’並非與提供的確認符V相匹配,則處理以一錯誤終結(步驟406),因為提供的資料可能已經被毀壞或惡意地修改,或已經發生某些其他錯誤。
若於步驟405的檢查係為成功的,則處理移至步驟407,其中一計數器i係從值1初始,一金鑰記錄器K係以計算g(KMESSAGE
)的結果初始,其中g(KMESSAGE
)的結果係為用於解密第一加密的片段E1
的金鑰(即,K1
的值,其在第3圖中標記為302)。亦於步驟407,一可變H係以H2
初始。以下運算接著以第4圖所顯示的一迴圈實行。首先,待解密的下一個密文片段的雜湊(即,h(Ei
))係被計算且與期望的雜湊H作比較(步驟408)。若比較失敗,解密的片段已經被改變,所以處理以一錯誤(409)終結且不實行進一步解密。若於步驟408的比較成功,則片段Ei
於步驟410使用解密函數DEC(),以金鑰K解密,來生成解密的片段,其被詮釋為含有跟隨著下一個密文片段的聲稱的雜湊的明文Di
。H被設定為此聲稱的雜湊值。接著於步驟411,實行一檢查以確保是否所有的L片段已經被解密(即,是否計數器i等於L)。若計數器並未達到L,則於步驟412,增加計數器i且藉由計算K=g(K)更新記錄器K為用於下一個片段的解密金鑰,且處理從步驟408向前重複。若步驟411決定i已經達到L,則於步驟413實行一檢查以確保是否H等於預期的填充資料(例如,D1
...DL
的雜湊)。若此檢查失敗,則解密以一失敗條件(414)結束。若檢查成功,則解密處理成功且恢復的解密的輸出D=D1
、...、DL
於步驟415返回。
應注意在此實施例中,解密處理可以一串流的方式完成(即,解密裝置初始可獲得N、V及E1
,且接著一次接收一個剩餘片段E2
、...、EL
),且仍能夠執行以上概述的步驟。舉例而言,若解密裝置缺乏足夠的記憶體來持有整個訊息,或若解密的資料部份需要在所有資料被接收及解密之前被取得,則串流運算係為實用的。
第二範例實施例
此段說明用於可檢驗抗洩漏的加密及解密的大致技術的一第二範例實施例。相對於使用密文雜湊鏈的第一範例實施例,此第二範例實施例使用明文雜湊鏈。然而,在兩者情況中,金鑰的重複使用於加密裝置及解密裝置兩者被控制,以避免差動功率分析及相關的攻擊。
熵
第二範例實施例由加密裝置的加密係顯示於第5圖中,其為了簡潔起見,以一結合的處理圖表及狀態圖表描繪。加密裝置創造或獲得訊息以加密D及一訊息識別符N,其可為一計數器、隨機產生的值、明文雜湊等等。
輸入訊息D被劃分成一連串片段D1
、...、DL
(儘管准許L=1),且此等片段被用於創造如以下的明文片段B1
、...、BL
。首先,片段B1
(501)藉由將訊息片段D1
與任何所欲的訊息資料的雜湊連鎖而形成(標示為X,其可包括諸如長度L、訊息識別符N、一交易識別符或計數器等等的元素)。接著,藉由將D2
與h(B1
)(即,B1
的雜湊)連鎖而形成B2
(502)。各個接續至BL-1
的Bi
接著藉由將Di
與Bi-1
的雜湊連鎖而形成。最終,最後的明文片段BL
(504)係藉由將DL
與h(BL-1
)連鎖而形成。
處理的接下來的步驟(505-508)使用一金鑰鏈處理對明文片段之各者產生加密金鑰,使得(類似於第一範例實施例)各加密金鑰係直接或間接的基於訊息金鑰。在第二範例實施例中,第一加密金鑰係單純地設定成藉由計算h(N)推導出(505)訊息金鑰KMESSAGE
的值,且接著使用如第2圖中所述的抗洩漏、基於金鑰樹的金鑰推導處理,以KSTART
=KROOT
及PATH=h(N)計算K1
=KMESSAGE
=KROOT,h(N)
。i>1的金鑰Ki
被計算為g(Ki-1
),其中g()。因此,第二金鑰K2
係為計算g(K1
)(506)的結果。反覆此處理使得L-1’th的金鑰(KL-1
)係計算為g(KL-2
)(507),且最終片段金鑰KL
係計算為g(KL-1
)(508)。因此,每一金鑰Ki
係基於訊息金鑰KMESSAGE
(例如,等於或由訊息金鑰KMESSAGE
推導出)。
處理中的下一步驟係以相對應金鑰K1
、...、KL
加密明文片段B1
、...、BL
之各者,以生成加密的片段E1
、...、EL
。舉例而言,加密的片段E1
係藉由以K1
加密B1
而創造(509),E2
係藉由以K2
加密B2
而創造(510),且依此類推,EL-1
係藉由以KL-1
加密BL-1
而創造(511),EL
係藉由以KL
加密BL
而創造(512)。加密的結果E係由片段E1
、...、EL
所組成。
處理中的下一步驟係對加密計算確認符V(513)。首先,雜湊函數h()係用以計算h(N∥E1
∥...∥EL
)∥h(BL
)),其中「∥」標示連鎖。接著,計算Z=h(N∥E1
∥...∥EL
∥h(BL
)),接著使用抗洩漏基於金鑰樹的金鑰推導處理計算KROOT,Z
(例如,如第2圖中所述,以KSTART
=KROOT
及PATH=Z)。接著計算確認符V作為金鑰樹結果的雜湊(即,h(KROOT,Z
))。最終,提供加密處理的結果,包含N、h(BL
)、E及確認符V(514)。
以上的加密處理可利用於系統中,其中輸入資料D藉由串流達成,或因為其他原因而D無法一次全部被處理(例如,因為記憶體的限制)。在此情況中,加密裝置藉由獲得N、h(X)及K1
而開始著手。此外一運行雜湊計算係以N初始。
1. 創造或獲得N
2. 初始運行雜湊計算
3. 使得H=h(X)
4. 使得K=KROOT,h(N)
5. 以N更新運行雜湊計算
6. 使得i=1
7. 接收輸入資料Di
(例如,串流進入)
8. 創造Bi
=Di
及H的連鎖
9. 使得H=h(Bi
)
10. 創造Ei
=ENC(K,Di
)
11. 以Ei
更新運行雜湊計算
12. 輸出Ei
13. 增加i
14. 若存在更多輸入資料,則回到步驟7
15. 以H更新運行雜湊計算
16. 最終運行雜湊計算且儲存於Z
17. 計算V=h(KROOT,Z
)
18. 輸出H(其等於h(BL
))、N、V
解密
解密的處理係圖示於第6圖中。於步驟600,解密裝置(典型地從一非信任介面)接收加密處理的聲稱的結果,即E、h(BL
)、偽隨機數N、及確認符V。解密裝置將E劃分成E1
、...、EL
,將一計數器i初始為1,且將一記錄器H設定成接收的值雜湊h(BL
)。亦接收或決定訊息L的長度(例如,若使用1千位元的一片段尺寸,但最後的片段可少於1千位元,則L係為以千位元捨進的訊息的長度)。於步驟605,加密裝置計算Z=h(N∥E1
∥...∥EL
∥H),其中「∥」標示連鎖。於步驟(610),加密裝置使用第2圖中所述的抗洩漏基於金鑰樹的金鑰推導處理計算KROOT,Z
的值,其中根係為KSTART
=KROOT
且PATH=Z,且接著雜湊結果以生成h(KROOT,Z
)。於步驟620,將h(KROOT,Z
)與接收的確認符V作比較。若結果不等於V,則存在資料毀壞且處理停止於611而不實行任何解密。若檢查成功,則於步驟620,解密裝置計算h(N),接著以計算KROOT,h(N)
的結果使用第2圖中所述的抗洩漏基於金鑰樹的金鑰推導處理初始金鑰記錄器K,其中KSTART
=KROOT
且PATH=h(N),且將一計數器i設定成1。
接下來,以下運算以一迴圈實行:於步驟630,以在金鑰記錄器K中的金鑰加密片段Ei
來產生由一資料片段Di
及一雜湊值組成的一明文片段Bi
。於步驟640,檢查來自解密的目前片段的雜湊。對於第一片段(即,i=1),雜湊針對h(X)作比較,其中X由與X在加密期間相同的欄位組成。對於在第一者之後的片段(即,i>1),來自Bi
的雜湊相對於先前片段的雜湊作比較(即,h(Bi-1
))。若比較失敗。則解密處理於步驟641失敗。否則於步驟650,Bi
的訊息部份(即,Di
)被添加至輸出暫存器(例如,在RAM中),且金鑰記錄器K藉由計算g(K)而被推進至下一片段金鑰,接著儲存結果於K中。計數器i亦增加1。於步驟660,i的值與L作比較,且若i的值不超過L,則解密處理迴圈回到步驟630。否則,解密處理於步驟670完成,其中最後明文片段(即,h(BL
))的雜湊係與接收的雜湊H作比較。若於步驟670的比較失敗(即,該等值並不相等),則發生一錯誤且解密失敗(步驟671)。否則,結果資料D1
、...、DL
於步驟680輸出。
在此實施例中,明文的雜湊以含有明文Bi-1
的雜湊的明文片段Bi
鏈鎖住。儘管並非絕對必要的抗洩漏,此鏈提供可偵測在解密處理期間發生的任何缺陷額外的特性,因為明文被檢驗為與已經加密者相同。因此,此實施例係有益於用於毀壞的解密處理的潛在可能的環境中。
系統、應用、及變數
至目前為止,本專利已說明用於抗洩漏加密及解密的一大致技術,及與此技術一起的某些範例實施例。此段將說明某些範例系統及/或應用,其中可使用上述技術,以及上述的範例實施例的態樣的額外變數。
安全韌體的載入
第7圖顯示用於安全地在一中央處理單元(CPU)上載入敏感韌體的可檢驗抗洩漏密碼的應用,例如,稱之為一晶片上系統(SoC)的部份。為了方便起見,取決於上下文,元件符號可代表一處理中的步驟及/或代表由此等處理步驟使用(或產生)的數量。在此實施例中,SoC係由一單一整合電路(700)組成,含有一CPU(703)及各種類型的記憶體。記憶體可包括但非限於程式碼可執行於其上的隨機存取記憶體(RAM)(701)、含有信任的啟動程式碼的唯讀記憶體(ROM)(704)、及持有一分享的密碼機密KROOT
的一機密狀態儲存記憶體(702)。金鑰儲存記憶體可使用各種技術實施,例如但非限於使用者空間檔案系統/抗使用者空間檔案系統、備有電池的RAM、及EEPROM。SoC可具有一外部功率輸入(707),其可從一非信任的來源接收功率(例如,潛在地受到敵手的控制及/或觀察)。亦可接收一外部供應的時鐘(708)(且可與PLLs一起使用以形成額外的時鐘)。SoC具有一AES引擎的一密碼硬體組件(705)用於資料加密及解密、諸如但非限於基於SHA-1或SHA-256或AES的雜湊函數引擎的一雜湊函數引擎、及抗洩漏的一實施、基於第2圖的基於金鑰樹金鑰推導處理,具有使用雜湊函數及/或AES函數或其他變數實施的函數f0
()、...、fb-1
()。對技藝人士而言,在其他實施例中,密碼硬體組件(705)的整體功能或其某些子集可藉由在軟體中(例如,藉由CPU)實行應為顯而易見的。
在從ROM中的信任的啟動程式進行啟動程式之後,SoC在一非信任介面(706)上從一外部、非信任儲存裝置載入其敏感軟體/資料,其在此實施例中係為快閃記憶體(709)。為了保護敏感軟體/資料避免揭露或未授權的修改,藉由製造商或其他程式碼發行者使用分享的機密密碼值KROOT
,而使用可檢驗抗洩漏技術加密(例如,如第1或5圖中所顯示)。加密結果係儲存於快閃記憶體(709)中。SoC首先從快閃記憶體(709)將加密的程式碼/資料載入其內部RAM(701)。SoC接著實行抗洩漏解密(例如,如第4圖中所顯示),其中處理係實施於ROM(704)密碼硬體組件(705)中的信任的啟動程式的程式碼庫中,且使用來自金鑰庫(702)的分享的機密金鑰KROOT
實行。若成功,則此處理在RAM記憶體(701)中創造一確認的且加密的敏感程式碼/資料影像,其可接著被執行。在解密處理失敗的情況中,RAM中加密的程式碼/資料(及任何部份解密的程式碼/資料)被刷新且當需要時運算從起始處重新開始。
在此實施例的一可選增強中,安全性係藉由在使用者空間檔案系統中儲存一最小可接受軟體版本號碼、備有電池的記憶體、或其上載入軟體的裝置的其他本端儲存而完成。待載入裝置中的所有軟體載有一版本號碼,且裝置將僅接受具有比最小值更大的一版本號碼的軟體。此外,某些軟體版本應明確地指示SoC更新最小可接受軟體版本號碼,從而避免軟體惡意轉返(rollback)至視為無法接受的一先前版本。上述抗轉返方法可獨立於(即,為附加的)可檢驗抗洩漏運算而實施。或者,抗轉返方法可實施為訊息識別符、確認符、或用於可檢驗抗洩漏運算中的其他安全的數量的部份。
該等技藝人士將輕易地認知SoC應用並非限於此處所呈現的特定架構,且可保護具有不同於第7圖呈現的實施例的內部架構及/或組件的SoCs或其他裝置。
舉例而言,第8圖顯示對一安全處理器架構(800)的可檢驗抗洩漏密碼的應用。為了方便起見,取決於上下文,元件符號可代表一處理中的步驟及/或由此等處理步驟使用(或產生)的數量。在此設定中,此裝置包含一CPU、持有包括一基本機密密碼金鑰KROOT
的內部機密狀態的一金鑰庫。諸如但非限於使用者空間檔案系統(801)的非揮發性儲存可用於儲存內部機密狀態。密碼硬體子組件(804)加密及/或整體保護及/或重演保護移出晶片上資料/指令快取(803)至外部非安全RAM記憶體(806)的所有資料,且解密及/或整體檢查及/或重演檢查從外部非安全RAM記憶體所取得的所有資料。此外,所有程式碼均以形成於非安全快閃(805)中的加密及整體保護而儲存,且當被帶入晶片上資料/指令快取(803)時被解密及整體檢查。先前技術的範例處理器架構(其安全性可透過額外的可檢驗抗洩漏密碼改善)包括但非限於來自IBM的Secure Blue設計(2006年6月6日發佈於IBM媒體名為「IBM Extends Enhanced Data Security to Consumer Electronics Products」)及來自MIT的AEGIS設計(敘述於AEGIS:用於Tamper-evident and Tamper-resistant Processing的架構,超級計算的第17次年度年會的活動,2003年第160-171頁)。
可檢驗抗洩漏密碼的使用實質上藉由針對監控攻擊提供保護而改善現有處理器設計的安全性。具體而言,此實施例增強密碼硬體子組件(804)以包括一雜湊函數及一金鑰樹處理能力,其重複使用(例如,AES)一現有安全處理器設計的加密能力,且實施第一範例實施例的步驟及方法,以創造一安全抗洩漏的安全處理器。具體而言,從快取(803)對RAM記憶體(806)寫入的任何資料使用抗洩漏加密處理(例如,如第1圖中所顯示)加密,且從非信任快閃(805)及非信任RAM讀取的程式碼使用第4圖中概述的抗洩漏解密處理解密。當資料被寫入一特定片段時,增加相對應於片段的計數器,且計數器的值被併入片段的加密及/或整體檢查創造處理,從而使得牽涉舊資料取代的攻擊能夠被偵測。
FPGA位元串流載入
載入一現場可程式閘陣列(FPGA)的邏輯通常包含高度敏感商業機密、密碼機密、及/或需要被保護避免揭露或複製的其他敏感資訊。此載入的邏輯或更新的邏輯典型地供應至FPGA作為來自一外部來源的一位元串流,例如但非限於一快閃記憶體裝置或一CPU或某些其他來源(907)。某些FPGAs含有用於儲存配置資料的非揮發性記憶體,而其他則必須在每一次晶片通電時重新被載入。現有的FPGAs具有解密位元串流的能力,典型地使用持有一備有電池的記憶體或本端儲存的一金鑰(例如,使用晶片上快閃、EEPROM、或使用者空間檔案系統)。在將其安裝至呈現於FPGA中的可程式化層中之前(或同時),FPGA解密供應的加密的位元串流。差動功率分析攻擊及相關的外部監控攻擊可針對位元串流解密處理作嘗試,引起如一成功的攻擊可導致的位元串流解密金鑰的揭露及/或位元串流本身的一連串安全性風險。
參照第9圖,可檢驗抗洩漏密碼可用於在一FPGA上創造一安全位元串流解密功能。在解密之前,敏感位元串流藉由一外部裝置(使用軟體、硬體或某些其結合)使用一抗洩漏加密處理(例如,如第一範例實施例中所述)而加密,產生加密的位元串流。加密的位元串流可被載入(907)一非信任記憶體,例如一外部快閃或硬碟,或從諸如一CPU等等的一非信任來源檢索。
在FPGA之中,用於抗洩漏解密的密碼機密KROOT
被保持於金鑰庫(902)中,其儲存內部機密狀態,且其可使用諸如但非限於使用者空間檔案系統、備有電池的RAM(902、903)、EEPROM、快閃等等的技術實施。FPGA(900)在介面(906)上接收加密的位元串流。舉例而言,此位元串流可能已經使用第一實施例或第二範例實施例(相對應於第1及5圖)任一者加密。
若使用第1圖的實施例加密,則FPGA首先接收偽隨機數N、確認符V、長度L、及初始片段E1
。E1
被儲存於加密的片段暫存器(905)中。使用如上述的一抗洩漏解密處理(例如,見第4圖),計算E1
的雜湊,且以KROOT
、L、及雜湊檢驗確認符V,(若成功)生成KMESSAGE
或一致命錯誤(在此情況中處理停止)。若成功,則FPGA使用片段解密處理組件(904)以在E1
上實行抗洩漏解密處理。E1
的解密生成片段E2的雜湊,其被載入、檢驗、且解密。處理一次在一個片段上繼續,直到最終片段被解密且檢驗。若一錯誤發生,則處理停止且所有部份FPGA解密的資料被去除。(在失敗時處理可從起始再次重新開始)。使用一或多個狀態記錄器910以追蹤位元串流的狀態的載入處理(例如,追蹤處理是否正在進行處理、失敗、或完成)。狀態亦可被輸出用於診斷的目的且由外部組件使用。一旦所有的片段已經被成功的載入,則FPGA即刻被配置且可被使用(例如,FPGA即刻可准許I/O、時鐘等等應用至載入的位元串流影像)。可防止FPGA運算直到位元串流完全被載入(例如,避免透露關於不完整的FPGA影像的資訊且避免從不正確FPGA配置所生的整體電路的不可預期行為)。
若第5圖的第二實施例被用於加密,則FPGA首先接收E、V、N、及h(BL
),且儲存E於一暫存器中。FPGA的片段解密處理組件904接著使用第6圖中所述的方法以檢驗及解密所提供的加密的片段。狀態記錄器910被用於追蹤位元串流載入、確認、及解密處理的狀態,及處理停止所導致的任何嚴重的錯誤,及任何部份解密的資料的去除。
網路通訊及其他基於封包的應用
第10圖顯示可檢驗抗洩漏密碼的應用,以保護網路通訊避免外部監控攻擊。在此實施例中,諸如裝置A(1000)、裝置B(1030)及裝置C、D、E等等(1040)的多重網路裝置彼此在一網路(1020)上通訊。某些或所有此等通訊可含有敏感資訊,使其值得用於加密及鑑別資料。再者,某些此等裝置(例如,此實施例中的裝置A)需要保護其密碼計算結果及金鑰避免外部監控攻擊。
裝置A具有一金鑰庫(1001)以儲存必須與其通訊的其他裝置分享的密碼根金鑰的一表。此等金鑰早先可能已經被儲存,或可被協商(例如,使用公用金鑰密碼)。使用公用金鑰密碼以協商金鑰的方法係為先前技術領域中眾所周知的,且被用於諸如SSL及IPSEC的協定中。此實施例可輕易地被整合至此等或其他協定中。
待加密的帶外封包或資料片段原始來自一應用程式、操作系統、驅動程式、或其他組件(1002)且進入明文封包暫存器(1003)中。各封包接著使用片段加密/解密處理組件(1004)處理,其使用一可檢驗抗洩漏加密方法(例如,如第1圖中所述)加密。用於此加密的根金鑰係為裝置A及目的裝置分享的金鑰,其從金鑰庫(1001)獲得。對此處理,訊息識別符偽隨機數N可為任何(較佳地)獨特值,包括一計數器。舉例而言,偽隨機數可等於一封包識別符、具有可能併入額外最重要位元以避免溢流的一TCP數列、一值的雜湊、一隨機值等等。對各封包,抗洩漏加密運算產生一加密的片段及一確認符V。偽隨機數可被傳送或可為隱含的(例如,基於早先接收的封包號)。加密的片段、V、及任何其他所需的資料被聚集成一外出封包,且移至網路介面組件(1006),且接著至網路(1020)用於路由至適當的目的裝置。
對於帶內加密的封包,假設發送裝置已經實行如上述的加密。此等封包藉由網路介面組件(1006)從網路(1020)被接收,且接著移至密文封包暫存器(1005)。各封包接著藉由片段加密/解密處理組件(1004)處理,其中實行一抗洩漏解密處理(例如,如第4圖中所述)。對於此解密處理,(i)介於接收及發送裝置之間的分享的金鑰(例如,KROOT
或用於推導KROOT
的一前導)係從金鑰庫(1001)獲得,(ii)偽隨機數N係從封包恢復,否則被決定,(iii)確認符係針對N及加密的封包檢驗,(iv)若確認符正確,則封包資料被解密。裝置A及發送裝置之間的分享的密碼機密可使用作為KROOT
。若解密或確認符失敗,則封包被中斷。否則,在成功解密之後,解密的結果可被提供至應用程式、操作系統、驅動程式等等。
此處理係概述於第11及12圖中。第11圖圖示可檢驗封包層級抗洩漏加密處理,且第12圖圖示相對應的解密處理。可檢驗封包層級抗洩漏加密處理係為以下步驟:給定具有分享一基本密碼值的KROOT
來源及目的之一輸入封包資料D(1100),則在步驟1101中產生一訊息識別符(例如,使用在封包D中呈現的一隨機來源及/或資訊,及/或諸如與通訊協定相關聯的一序號某些封包識別符)。對於TCP/IP通訊,N可從一分區識別符、序號(可選地附加額外地最重要位元以避免翻覆)、來源埠、目的埠、及/或其他值而建構。接著於步驟1102,計算N的雜湊。(可選地,此步驟可被省略,且可使用N取代在KMESSAGE
推導中的h(N))。接續在步驟1103中,使用第2圖中所述的抗洩漏基於金鑰樹的金鑰推導處理以KSTART
=KROOT
及PATH=h(N)計算KMESSAGE
=KROOT,h(N)
。輸入封包資料D以金鑰KMESSAGE
加密來生成加密的結果E(1104)。
接著計算E的雜湊(1105)(例如,使用SHA-256)。接著,使用第2圖中概述的抗洩漏基於金鑰樹的推導處理,以KSTART
=KMESSAGE
及PATH=h(E)計算用於加密的確認符V作為KMESSAGE,h(E)
(1106)。最終,形成包括V、E、及N的輸出封包(或任何其他資訊,若為任何必須而能夠接收以修復N)(1107)。輸出資料E接著以一封包傳輸至一遠端裝置(例如,在網際網路上的一遠端電腦)。
如一可選的最佳化,若加密裝置具有多重封包被暫存用於發送,則其同時可加密多重封包,使得僅需要單一確認符用於所有的封包。舉例而言,可實行加密處理如第3圖中所顯示,其中各片段Di
係為一封包。以此方式結合封包減少金鑰樹必須用於發送者及接收者兩者的運算的次數。
第12圖中圖示一相對應可檢驗封包層級抗洩漏解密處理。給定包括V、E、N的一加密的封包(或足夠修復N的資料,例如,一序號)及分享的密碼機密KROOT
(1200),解密處理如以下進行:首先,計算h(N)的值(1201)(或,若加密裝置直接使用N,則此步驟被省略)。接著計算E的雜湊(1202)。接下來於步驟1203,使用第2圖中所繪的抗洩漏基於金鑰的方式,以KSTART
=KROOT
及PATH=h(N)計算KMESSAGE
=KROOT,h(N)
(1204)。接下來使用第2圖中概述的抗洩漏金鑰樹處理,以KSTART
=KMESSAGE
及PATH=h(E)計算V’=KMESSAGE,h(E)
。接續地,解密裝置檢查是否V’=V(1205)。若其並非相等,則處理停止於此封包且封包被丟棄(1206)。若檢查成功,則E以KMESSAGE
解密來生成明文封包D(1207)(例如,使用第14圖所顯示的DEC()處理)。
智慧卡運用
可檢驗抗洩漏加密及解密可實施於智慧卡中(例如,與協定連接,其中智慧卡必須以保衛差動功率分析及相關的外部監控攻擊的方式實行加密及/或解密)。此等系統及協定的範例包括但不限於用於付費電視訊號的解密的金鑰(控制碼字)的推導、付費(包括離線付費)、識別/確認網路登入、行動電話SIM卡、及轉乘車票。此專利中所揭露的範例密碼技術可用於確保智慧卡中的機密金鑰被保護以避免外部監控攻擊,同時實行此協定。智慧卡亦可用於實施較大系統中所利用的部份或全部的抗洩漏加密或解密處理,例如,若智慧卡實施第3圖的基於金鑰樹的金鑰推導處理,使得KSTART
絕對無須離開智慧卡。
互相鑑別應用
在許多應用中,兩個以上的裝置需要彼此鑑別及/或在其之間交換敏感資訊。此等協定的範例應用包括但不限於:(i)一印表機及一墨水匣之間的鑑別以確保兩者裝置均為真的且並非偽冒的;(ii)一數控器(set-top box)及一智慧卡之間的鑑別以確保組件係為真實的(例如,避免偷取的視訊解密金鑰的導入);(iii)一車庫門及一開啟器之間的鑑別;(iv)無金鑰入口系統(例如,可用於汽車中),其鑑別金鑰(例如,在解鎖門或發動引擎之前);(v)由經常被偷的物品實行的鑑別協定(例如,汽車音響、GPS單元、手機等等)以避免被偷或從操作中被竄改裝置;及(vi)入口系統,例如可在安全建築物中找到者,其在准許進入之前鑑別金鑰/票卷。在此等應用中,介於裝置之間的挑戰回應協定傳統上被用於互相鑑別及設定一分享的機密金鑰兩者,用於敏感資訊的交換。單純的協定實行此等鑑別,同時抗拒的DPA可使用此專利的方法建構以實行任何所需的加密及解密運算。舉例而言,一裝置可透過其能力使用此專利中揭露的技術證實其鑑別性以供應一有效的確認符及/或解密一訊息。
以內部片段金鑰改變的片段加密及解密
此段說明ENC()及DEC()運算的範例變數,其可代替傳統加密處理(例如,在ECB或CBC模式中的AES)被用於實施範例實施例(例如,如第3圖的步驟320、第4圖的步驟410、第5圖的步驟509、第6圖的步驟630、第11圖的步驟1104、第12圖的步驟1207所顯示)。分別顯示於第13及14圖的ENC()及DEC()中的變數,密碼金鑰經常改變,用於更甚的安全性。特定而言,額外的密碼金鑰更新在將一資料片段Di
加密為Ei
時發生(反之亦然)。因此,吾人將此等變數稱之為實施內部片段金鑰改變。
除了對ENC()及DEC()的改變之外,第一及第二範例實施例中運算的餘數可如先前所述實施。舉例而言且非限制,涉及初始訊息金鑰KMESSAGE
、確認符V、等等的運算無須被改變。
第13圖顯示用於加密資料片段的一ENC()運算的一範例實施例。第14圖顯示一DEC()運算的一相對應範例實施例。在此實施例中,使用區塊密文AES以密文區塊鏈(CBC)模式建立運算,但技藝人士應清楚亦可使用其他區塊密文或原始加密/解密或加密模式。
對片段i加密處理的輸入係為片段金鑰Ki
(1301)及資料片段Di
(1310)。輸入資料片段Di
(1310)被劃分為子片段Di,1
(1311)、Di,2
(1312)等等。第13及14圖顯示資料片段D被劃分為3 AES區塊的子片段,然而亦可使用其他尺寸,且當然亦可利用有別於AES的其他演算法。(較小的子片段增加總運算結果,然而較大的子片段造成金鑰被用於更多運算,增加資訊洩漏的可能性)。片段金鑰Ki
以一雜湊運算m()變換,生成Ki,1
(1302),其係為第一子片段Di,1
的金鑰。若使用一初始向量(IV)(1314),則其以Di,1
的第一AES區塊XORed。(若不使用IV,則此XOR步驟可省略。若使用IV,則其可被鑑別,例如,藉由將其併入確認符運算,或藉由從諸如一訊息識別符的一確認的值推導的IV)。(Di
XOR IV)的第一位元使用片段金鑰Ki,1
(1302)以AES(1315)加密,形成密文子片段Ei,1
(1320)的第一部份。此密文部份亦以子片段Di,1
(1311)的下一個位元XORed,而生成另一AES輸入,其接續著使用片段金鑰Ki,1
(1302)加密,以產生子片段Di,1
(1311)的下一個部份。實行一相似的密文區塊鏈以形成第三AES加密的輸入,其亦以金鑰Ki,1
實行。此等三個AES運算的結果係為密文子片段Ei,1
(1320)。第四個AES運算係實行於下一個資料子片段Di,2
(1312)的第一區塊上,且使用標示為Ki,2
(1303)的一新的金鑰,其藉由將m()應用至Ki,1
(1302)而推導出。從處理Di,1
的最終密文成為用於Di,2
(1312)的第一部份的IV(1317)。加密處理繼續直到已經加密所有s資料子片段的所有區塊,終極生成加密的子片段Ei,2
(1321)、...、Ei,s
(1322),且其中對各子片段使用m()推導一新的金鑰。最終,密文子片段被集合以形成最終密文片段Ei
(1330)。
參照第14圖,解密處理DEC()係為相反的ENC()處理。子金鑰Ki,1
(1402)、Ki,2
(1403)等等係從金鑰Ki
(1401)透過如上述用於加密的相同處理使用m()推導出。加密的片段Ei
被劃分成子片段,其各者包含以子金鑰解密的一或多個AES輸入。在各解密運算之後,適當的IV(若有)或先前密文以資料XORed。最終資料被集合以形成子片段(1420、1421、1432等等),其依序集合以形成Di
(1430)。
以上的ENC()及DEC()處理係為涉及驟然金鑰改變的範例,以便提供更大的洩漏忍耐度。可使用其他片段加密及解密方法,包括在ECB、CBC、或計數器(例如,Galois計數器)模式中串流密文及/或區塊密文(例如,RC4、SEAL、AES、DES、三重DES等等)的應用。對於將相同的金鑰應用至一片段中的所有資料的此等運算,其可具有在加密之前限制各片段的尺寸的益處(例如,藉由如第3圖所顯示將資料劃分成子片段),以便限制以各金鑰實行的運算的次數,從而減少一敵手可以各金鑰實行而觀察的運算的次數。
通訊通道
此處所述的資料交換可以一廣泛的可能方式完成。舉例而言但非限制,可使用傳統匯流排/介面(例如,I2C、JTAG、PCI、串聯I/O(包括USB)、PCI快速模組、乙太網路等等)、無線協定(例如,802.11群、藍牙、細胞服務電話協定、ISO14443等等)、及晶片內連接(例如,APB、與其他正反器直接連接等等)所有。對於以上之各者,發送裝置及接收裝置將具有適當的介面(例如,上述類型的介面),其可發送、接收、或(適當地)發送及接收。
解密之前資料確認的替代形式
至此呈現的範例實施例已使用抗洩漏基於金鑰樹的金鑰推導處理(例如,如第2圖所圖示)來計算密文的一確認符,其可在解密之前安全地被檢驗。儘管此處理係良好合適於一廣範圍的應用,用於創造一值的其他技術可供相似的作用,且在某些設定中可為適當的。舉例而言在某些實施例中,加密處理無須抵抗外部監控(但解密處理需要此抵抗力)及/或可呈現演算法層級對策用於公共金鑰數位簽署處理(例如美國專利6,304,658中所述者)。對於此等系統,數位簽署(數位簽章)運算可用以建構在解密時可被檢驗的一值,來確保密文未被修改。舉例而言,數位簽章可鑑別訊息識別符及至少一個加密的片段。公共金鑰數位簽署演算法的範例包括但非限於RSA、DSA、及橢圓曲線DSA變數(包括但非限於EC-DSA)。一數位簽章的檢驗無須任何敏感資訊,且因此可在解密之前實行。然而,此彈性必須付出在加密裝置中需要公共金鑰簽署邏輯且在解密裝置中需要公共金鑰檢驗邏輯的代價。一確認符(或確認符替代物)亦可能包含多重對稱確認符、公共金鑰簽章、或其他元素。
非連續的片段金鑰推導
片段金鑰(例如,第3圖中的K1
、K2
、...、KL
)及子片段金鑰(第13圖中的Ki,1
、Ki,2
等等)並非必須被連續推導。舉例而言,金鑰可以一階層式金鑰圖案推導,或更一般地可為任何先前金鑰的一函數,或可使用金鑰樹建構從KROOT
獨立地推導出,或金鑰可使用其他金鑰及金鑰樹建構的某些結合而推導出。
資料變換及計算的記錄
資料變換及運算的順序可被改變。舉例而言,在第1、3及4圖中所述的第一範例實施例顯示加密處理從最後片段DL
進行至第一片段D1
,其具有各片段Di
含有i+1’th片段的加密結果Ei+1
的雜湊。對第一加密的片段E1
計算一分開的確認符(例如,見步驟106)。此方式可具有對第4圖中所顯示的解密裝置的益處,因為其無須在解密之前暫存整體的加密結果,然而加密裝置卻必須如此。
或者,加密裝置可從D1
開始加密片段且結束於DL
,其中各片段Di+1
含有早先片段的加密Ei
的雜湊。在此範例中,片段D1
(舉例而言)由等於雜湊函數的輸出長度的尺寸的0的一字串延伸,以表明其為第一片段。接著使用PATH=h(EL
)計算使用金鑰樹創造的一確認符。對於此變數,解密處理係與第4圖相似,但以相反的方向從最後加密的片段至第一者而進行。因此,加密裝置不再需要暫存資料片段,儘管解密裝置如今卻必須如此。
用於雜湊的額外確認符的替換
儘管某些範例顯示雜湊為鑑別接續加密的片段的資料片段,但接續的片段可取而代之的承載其自身的獨立確認符、舉例而言,第3圖顯示第一資料片段(312)承載一雜湊h(E2
)以確認片段E2
未被改變。然而,此雜湊並非總是必須的,且在某些情況中可被省略(例如,若下一個片段取而代之的承載一確認符)。此某種程度上簡化加密,但增加計算時間,因為需要計算且檢查更多確認符。在串流應用或若儲存/記憶體被限制,則額外的付出計算可為有道理的,而給予避免接續資料必須可取得且暫存的優點。
雜湊的變化
在某些圖示中,諸如第3圖中的h()的一單一運算被多次運用及/或被用於不同用途。此等運算一般無須均為相同函數。舉例而言,不同步驟可利用不同雜湊函數。
雜湊函數的輸出可被縮短,與其他雜湊函數輸出結合,或者透過後處理修改。舉例而言,SHA-2產生一256位元輸出雜湊,但欲使用一較短的訊息識別符(例如,160-、128-、80-或64-位元)。函數h()內部可使用SHA-2且僅返回其結果的某些位元。
運算順序的變化
某些範例實施例標明資料元素被連鎖或結合的一特定順序。舉例而言,第3圖中的步驟303-312,資料Di
以雜湊h(Ei+1
)連鎖。資料片段在被雜湊之前連鎖成一連串的其他範例包括第5圖,元素501-504及513、第3圖的步驟306。此等特定順序僅為一可能順序的一個範例,且可在替代實施例中使用各種其他資料順序。
基於金鑰樹的推導的變化
若運算(例如fi
)係為不可逆轉的,則可能使用除了金鑰樹的頂端的一值作為開始值。相似地,計算的值可被快取(例如,若訊息識別符係一計數器,則初始運算通常將不從一個訊息改變至下一者,所以無須重新計算)。
錯誤偵測及/或修正
本技術領域中眾所周知在一密碼裝置的運算中產生為注入缺點的一結果的不正確輸出可生成有關敏感資料及金鑰的資訊。在實際操作中,可檢查密碼運算以幫助避免不正確計算結果的釋放,其可洩漏機密。舉例而言,一簡單且有效的技術係為實行密碼運算兩次,理想地使用兩個(或更多)獨立硬體處理及實施,具有一比較器檢驗兩者(或所有)產生完全相同的結果。若由單元產生的結果不匹配,則比較器將避免任一結果被使用及/或觸發其他錯誤條件。在個別密碼運算中(例如雜湊步驟),錯誤偵測及/或錯誤修正邏輯亦可被利用以幫助避免或偵測密碼運算不正確地實行的情況。
本專利所揭露的技術可額外地針對在加密及解密處理上的缺點注入攻擊的某些類型提供某些固有的抵抗。在加密處理期間,於基於金鑰樹的金鑰推導處理期間導入的一限制或部份缺點,歸因於在此處理中的熵重新分佈函數的使用,而將產生隨機、不可預期的結果。具體而言,訛誤的中間值將典型地藉由接續熵重新分佈函數混合,其將限制敵手使用缺陷結果發動攻擊的能力。
相同的,在解密期間,在密文或訊息識別符處理中導入的缺點或錯誤將大致導致確認符被拒絕。具有明文雜湊鏈的第二實施例提供進一步抵抗,因為明文片段被獨立地鑑別在輸出之前修正。當然,可額外地使用運算的檢查及其他眾所周知的缺點偵測技術。
亦可併入諸如一POST(通電自我測試)及隨機號碼測試的自我診斷函數,以檢驗密碼函數及隨機號碼產生能力未受損。
額外主機環境及形式因素
以上已經說明使用可檢驗抗洩漏密碼的數種範例系統及應用。然而技藝人士將理解,上述的技術並非限於特定主機環境或形式因素。更確切地,其可被用於廣泛的各種應用,包括但非限於:特定應用積體電路(ASICs)、現場可程式閘陣列(FPGAs)、晶片上系統(SoC)、微處理器、安全處理器、安全網路裝置、所有類別的密碼智慧卡(包括但非限於與ISO 7816-1、ISO 7816-2、及ISO 7816-3(「ISO 7816-相容的智慧卡」)實質上相容的智慧卡);非接觸且基於靠近的智慧卡及密碼卷(包括但非限於與ISO 14443實質上相容的智慧卡);儲存值的卡及系統;密碼安全的信用及金融卡;顧客忠誠卡及系統;密碼鑑別的信用卡;密碼加速器;賭博及賭注系統;安全密碼晶片;抗竄改的微處理器;軟體程式(包括但非限於用於個人電腦、處理器等等上的程式,及可載入或安裝於密碼裝置上的程式);金鑰管理裝置;銀行金鑰管理系統;安全網頁伺服器;防衛系統;電子付款系統;微付款系統及計量器;電話預付卡;密碼識別卡及其他識別檢驗系統;用於電子匯款的系統;自動出納機器;銷售站的點;發證系統;電子證章;門入口系統;使用密碼金鑰的所有類別的實體鎖;用於解密電視訊號的系統(包括但非限於廣播電視、衛星電視、及有線電視);用於解密加密的音樂及其他音頻內容的系統(包括在電腦網路上分佈的音樂);用於保護所有類型視頻訊號的系統;內容保護及複製保護系統(例如,用於避免未授權複製或使用電影、音頻內容、電腦程式、電子遊戲、影像、文字、資料庫等等);手機拌碼及鑑別系統(包括電話鑑別智慧卡);安全電話(包括用於此電話的金鑰儲存裝置);密碼PCMCIA卡;可攜式密碼卷;及密碼資料審核系統。
以上所有描繪範例實施例及可檢驗抗洩漏密碼的應用,其中相關的變化、加強及修改將從所揭露的精神及範疇的上下文而為顯而易見的。因此,由此專利所保護的發明不應限於以上揭露,而應由此處隨附的申請專利範圍推斷。
700...整合電路
701...隨機存取記憶體
702...機密狀態儲存記憶體
703...CPU
704...唯讀記憶體
705...密碼硬體組件
706...非信任介面
707...外部功率輸入
708...外部供應時鐘
709...快閃記憶體
800...安全處理器架構
801...使用者空間檔案系統
803...晶片上資料/指令快取
804...密碼硬體子組件
805...非安全快閃
806...非安全RAM記憶體
900...FPGA
902...RAM
903...電池
904...片段解密處理組件
905...片段暫存器
906...介面
907...其他來源
910...狀態記錄器
1000...裝置A
1001...金鑰庫
1002...其他組件
1003...明文封包暫存器
1004...片段加密/解密處理組件
1005...密文封包暫存器
1006...網路介面組件
1020...網路
1030...裝置B
1040...裝置C、D、E
第1圖顯示使用金鑰及密文雜湊鏈的可檢驗、抗洩漏加密的整體處理的一範例實施例。
第2圖顯示從一分享的密碼機密KSTART
開始,且繼續通過一路徑P1
...PQ
的一抗洩漏、基於金鑰樹的金鑰推導處理的一範例實施例。第2圖的金鑰推導處理係可用於與第1及3圖的第一範例加密處理及第4圖的第一範例解密處理連接。其亦可用於與第5、11及13圖的其他範例加密處理及第6、12及14圖的其他範例解密處理連接。
第3圖顯示用於加密的一抗洩漏金鑰及雜湊鏈處理的一範例實施例(例如,包含第1圖中所顯示的整體加密處理的部份)。
第4圖顯示使用相對應於第1圖(及第3圖)的加密處理的金鑰及密文雜湊鏈的一可檢驗、抗洩漏解密處理的一範例實施例。
第5圖顯示使用金鑰及明文雜湊鏈的可檢驗、抗洩漏加密的一範例實施例。
第6圖顯示使用相對應於第5圖的加密處理的金鑰及明文雜湊鏈的可檢驗、抗洩漏加密的一範例實施例。
第7圖顯示一環境,其中可檢驗、抗洩漏密碼運算被用於將韌體載入一晶片上的一系統。
第8圖顯示一環境,其中可檢驗、抗洩漏密碼運算被用於一保衛CPU晶片之中,其中諸如快閃記憶體及/或RAM的外部記憶體係為非信任的。
第9圖顯示一環境,其中可檢驗、抗洩漏密碼運算被用於將一位元流影像載入一現場可程式閘陣列。
第10圖顯示一環境,其中可檢驗、抗洩漏密碼運算被用於基於封包的網路通訊裝置中。
第11圖顯示用於可檢驗封包層級抗洩漏加密的一處理的一範例實施例,其可用於第10圖所述的環境中,以及其他實施例中。
第12圖顯示相對應於第11圖所述的加密處理的可檢驗封包層級抗洩漏加密的一處理的一範例實施例。
第13圖顯示一範例ENC()運算的一範例實施例,使用具有內部片段金鑰變化的加密區塊鏈(cipher block chaining,CBC)。
第14圖顯示一範例DNC()運算的一範例實施例,相對應於第13圖的加密運算,使用具有內部片段金鑰變化的加密區塊鏈(CBC)。
100-107...步驟
Claims (21)
- 一種用於加密明文資料同時限制密碼金鑰的重複使用的裝置,其包含:一硬體單元,其經配置以(a)藉由計算多個連續的中間金鑰,從一內部機密狀態及一訊息識別符推導一訊息金鑰,該多個連續的中間金鑰係以至少一部分該內部機密狀態開始且引導至該訊息金鑰,待推導的各連續金鑰係基於至少一部分的該訊息識別符及一先前金鑰;(b)基於至少該訊息金鑰使用該一或多個密碼金鑰,以加密該明文資料的一或多個片段,來產生一或多個加密的資料片段;(c)從至少一個該加密的資料片段計算一密碼雜湊;(d)從至少一機密值及該密碼雜湊推導一確認符,其中該推導之步驟包括以下步驟:從該機密值開始計算多個連續中間值,各連續值係為至少基於該等值的一先前一個及該密碼雜湊的一部分;及(e)輸出該一或多個加密的資料片段及該確認符。
- 如申請專利範圍第1項之裝置,其中在(a)步驟中的各該中間金鑰的該推導經配置成包括以下步驟:選擇一熵分佈運算,接著應用該熵分佈運算至該先前金鑰。
- 如申請專利範圍第2項之裝置,配置成該熵分佈運算係為取決於以下至少一者的一密碼雜湊運算:(i)該先前金鑰;及(ii)相對應於至少一部分該訊息識別符的一值。
- 如申請專利範圍第1項之裝置,配置成(a)步驟中的該訊息金鑰係藉由跟隨一路徑通過一金鑰樹(key tree)而計算,該路徑包含該訊息識別符。
- 如申請專利範圍第1項之裝置,配置成(b)步驟包括以下步驟:從該訊息金鑰藉由實行多個熵分佈運算而推導多個該等密碼金鑰;且配置成:(i)該等密碼金鑰之一者係藉由應用一熵分佈函數至該訊息金鑰而計算;及(ii)多個連續的密碼金鑰之各者係藉由應用一熵分佈函數至該等密碼金鑰之一先前一者而計算。
- 如申請專利範圍第1項之裝置,配置成各該連續的中間值係為一密碼雜湊運算的結果,該密碼雜湊運算僅由以下作決定:(1)該連續中間值的該直系親屬值;及(2)該加密的資料片段雜湊的一或兩個位元。
- 一種用於加密明文資料同時限制密碼金鑰的重複使用的裝置,其包含:一硬體單元,其經配置以(a)藉由計算多個連續的中間金鑰,從該內部機密狀態及一訊息識別符推導一訊息金鑰,該多個連續的中間金鑰係以至少一部分該內部機密狀態開始且引導至該訊息金鑰,待推導的各連續金鑰係基於至少一部分的該訊息識別符及一先前金鑰;(b)基於至少該訊息金鑰使用該一或多個密碼金鑰,以加密該明文資料的一或多個片段,來產生一或多個加密的資料片段; (c)至少基於一或多個該加密的資料片段使用一機密金鑰以計算一密碼檢驗值,且可用於檢驗一或多個該加密的資料片段;及(d)輸出該一或多個加密的資料片段及該密碼檢驗值。
- 如申請專利範圍第7項之裝置,配置成該密碼檢驗值係為一數位簽章,其鑑別該等加密的資料片段之至少一者。
- 一種用於加密資料同時限制密碼金鑰的重複使用的裝置,其包含:一硬體單元,其經配置以(a)接收一或多個加密的資料片段及一密碼檢驗值,且獲得與其相對應的一訊息識別符;(b)檢驗該密碼檢驗值以決定訊息識別符或至少一個該等加密的資料片段是否已經被修改,包括以下步驟:(i)從至少一個該加密的資料片段計算一密碼雜湊;(ii)從至少一機密值及該密碼雜湊推導出一預期的確認符,其中該推導的步驟包括以下步驟:從該機密值開始計算多個連續的中間值,其中各連續值係至少基於該等值的一先前一者及該密碼雜湊的一部分;及(iii)將該推導出的預期的候選確認符與該接收的密碼檢驗值作比較;(c)藉由計算多個連續的中間金鑰,從該內部機密狀態 及該訊息識別符推導一訊息金鑰,該多個連續的中間金鑰係以至少一部分該內部機密狀態開始且引導至該訊息金鑰,其中各連續金鑰係基於至少一部分該訊息識別符及一先前金鑰而推導出;及(d)基於至少該訊息金鑰使用該一或多個密碼金鑰以解密該加密的資料的一或多個經檢驗的片段,來產生一或多個明文資料片段。
- 如申請專利範圍第9項之裝置,其中(c)步驟中的各該中間金鑰的該推導係配置成包括以下步驟:選擇一熵分佈運算,接著應用該熵分佈運算至該先前金鑰。
- 如申請專利範圍第10項之裝置,配置成該熵分佈運算係為取決於以下至少一者的一密碼雜湊運算:(i)該先前金鑰;及(ii)相對應於至少一部分該訊息識別符的一值。
- 如申請專利範圍第9項之裝置,配置成(c)步驟中的該訊息金鑰係藉由跟隨一路徑通過一金鑰樹(key tree)而計算,該路徑包含該訊息識別符。
- 如申請專利範圍第9項之裝置,配置成(d)步驟包括從該訊息金鑰藉由實行多個熵分佈運算而推導多個該等密碼金鑰;且配置成:(i)該等密碼金鑰之一者係藉由應用一熵分佈函數至該訊息金鑰而計算;及(ii)多個連續的密碼金鑰之各者係藉由應用一熵分佈函數至該等密碼金鑰之一先前一者而計算。
- 如申請專利範圍第9項之裝置,配置成各該連續的中間值係為一密碼雜湊運算的結果,該密碼雜湊運算僅由以 下作決定:(1)該連續中間值的該直系親屬值;及(2)該加密的資料片段雜湊的一或兩個位元。
- 如申請專利範圍第9項之裝置,配置成存在僅一個明文資料片段及僅一個加密的資料片段,且配置成該密碼雜湊計算結果進一步包括一資料片段長度。
- 如申請專利範圍第9項之裝置,配置成該預期的確認符確認一雜湊,其中:(i)該雜湊係取決於併入一第二加密的資料片段的該雜湊的一第一加密的資料片段;及(ii)該等第二及接續的加密的資料片段係各配置成併入該下一個加密的資料片段的該雜湊。
- 如申請專利範圍第9項之裝置,其中該裝置係一FPGA,且其中該裝置係配置成該明文資料包括一FPGA位元流。
- 如申請專利範圍第9項之裝置,進一步配置成使用收容於該裝置中的一處理器以執行至少一部分該明文資料。
- 如申請專利範圍第9項之裝置,其中該裝置係包含一處理器的一晶片,且其中該裝置係配置成藉由該晶片保衛待載入的資料避免一外部記憶體進入一晶片上快取,且其中該資料被載入為由該晶片先前加密者。
- 一種用於加密明文資料同時限制密碼金鑰的重複使用的裝置,其包含:一硬體單元,其經配置以(a)藉由計算多個連續的中間金鑰,從該內部機密狀態及一訊息識別符推導一訊息金鑰,該多個連續的中間金鑰係以至少一部分該內部機密狀態開始且引 導至該訊息金鑰,待推導的各連續金鑰係基於至少一部分的該訊息識別符及一先前金鑰;(b)基於至少該訊息金鑰使用該一或多個密碼金鑰,以加密該明文資料的一或多個片段,來產生一或多個加密的資料片段;(c)至少基於一或多個該加密的資料片段使用一機密金鑰以計算一密碼檢驗值,且可用於檢驗一或多個該加密的資料片段;及(d)輸出該一或多個加密的資料片段及該密碼檢驗值。
- 如申請專利範圍第20項之裝置,配置成該密碼檢驗值係為一數位簽章,其鑑別該等加密的資料片段之至少一者。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US26694809P | 2009-12-04 | 2009-12-04 | |
US12/958,570 US8386800B2 (en) | 2009-12-04 | 2010-12-02 | Verifiable, leak-resistant encryption and decryption |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201141173A TW201141173A (en) | 2011-11-16 |
TWI440351B true TWI440351B (zh) | 2014-06-01 |
Family
ID=44083176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099142160A TWI440351B (zh) | 2009-12-04 | 2010-12-03 | 可檢驗的、對洩漏有抵抗性的加密與解密 |
Country Status (8)
Country | Link |
---|---|
US (10) | US8386800B2 (zh) |
EP (2) | EP3537653B1 (zh) |
JP (2) | JP5552541B2 (zh) |
KR (1) | KR101714108B1 (zh) |
CN (1) | CN102725737B (zh) |
IL (1) | IL219906A (zh) |
TW (1) | TWI440351B (zh) |
WO (1) | WO2011068996A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI689828B (zh) * | 2017-10-31 | 2020-04-01 | 香港商阿里巴巴集團服務有限公司 | 資料統計方法和裝置 |
TWI806577B (zh) * | 2022-04-28 | 2023-06-21 | 瑞昱半導體股份有限公司 | 數位簽章方法及數位簽章的驗證方法 |
Families Citing this family (274)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10181953B1 (en) | 2013-09-16 | 2019-01-15 | Amazon Technologies, Inc. | Trusted data verification |
US7587044B2 (en) | 1998-01-02 | 2009-09-08 | Cryptography Research, Inc. | Differential power analysis method and apparatus |
US8874477B2 (en) | 2005-10-04 | 2014-10-28 | Steven Mark Hoffberg | Multifactorial optimization system and method |
US20090307140A1 (en) * | 2008-06-06 | 2009-12-10 | Upendra Mardikar | Mobile device over-the-air (ota) registration and point-of-sale (pos) payment |
US9680637B2 (en) | 2009-05-01 | 2017-06-13 | Harris Corporation | Secure hashing device using multiple different SHA variants and related methods |
US10454674B1 (en) * | 2009-11-16 | 2019-10-22 | Arm Limited | System, method, and device of authenticated encryption of messages |
CN102725737B (zh) | 2009-12-04 | 2016-04-20 | 密码研究公司 | 可验证防泄漏的加密和解密 |
US9219936B2 (en) | 2010-02-05 | 2015-12-22 | Maxlinear, Inc. | Conditional access integration in a SOC for mobile TV applications |
US9177152B2 (en) | 2010-03-26 | 2015-11-03 | Maxlinear, Inc. | Firmware authentication and deciphering for secure TV receiver |
WO2011123561A1 (en) | 2010-03-30 | 2011-10-06 | Maxlinear, Inc. | Control word obfuscation in secure tv receiver |
US9602277B2 (en) | 2010-06-07 | 2017-03-21 | Protected Mobilty, Llc | User interface systems and methods for secure message oriented communications |
US8984271B2 (en) | 2010-06-07 | 2015-03-17 | Protected Mobility, Llc | User interface systems and methods for input and display of secure and insecure message oriented communications |
US9172680B2 (en) | 2010-06-07 | 2015-10-27 | Protected Mobility, Llc | Systems and methods for enabling secure messaging, command, and control of remote devices, communicated via a short message service or other message oriented communications mediums |
US9143324B2 (en) * | 2010-06-07 | 2015-09-22 | Protected Mobility, Llc | Secure messaging |
US8892855B2 (en) * | 2010-08-10 | 2014-11-18 | Maxlinear, Inc. | Encryption keys distribution for conditional access software in TV receiver SOC |
CN101925060A (zh) * | 2010-08-27 | 2010-12-22 | 西安西电捷通无线网络通信股份有限公司 | 一种资源受限网络的实体鉴别方法及系统 |
CN102014386B (zh) * | 2010-10-15 | 2012-05-09 | 西安西电捷通无线网络通信股份有限公司 | 一种基于对称密码算法的实体鉴别方法及系统 |
US8924706B2 (en) | 2010-11-05 | 2014-12-30 | Protected Mobility, Llc | Systems and methods using one time pads during the exchange of cryptographic material |
US9237155B1 (en) | 2010-12-06 | 2016-01-12 | Amazon Technologies, Inc. | Distributed policy enforcement with optimizing policy transformations |
JP2012169756A (ja) * | 2011-02-10 | 2012-09-06 | Hitachi Ltd | 暗号化通信検査システム |
JP5286380B2 (ja) * | 2011-03-07 | 2013-09-11 | 株式会社東芝 | データ送信装置および送信方法 |
EP2523385B1 (en) * | 2011-05-05 | 2017-07-12 | Proton World International N.V. | Method and circuit for cryptographic operation |
US9438418B1 (en) * | 2011-05-06 | 2016-09-06 | Altera Corporation | Systems and methods for generating a key difficult to clone |
US8769642B1 (en) | 2011-05-31 | 2014-07-01 | Amazon Technologies, Inc. | Techniques for delegation of access privileges |
IL213497A0 (en) * | 2011-06-12 | 2011-08-31 | Eliphaz Hibshoosh | Light public key cryptography |
EP2535804A1 (en) * | 2011-06-17 | 2012-12-19 | Thomson Licensing | Fault-resistant exponentiation algorithm |
US8862767B2 (en) | 2011-09-02 | 2014-10-14 | Ebay Inc. | Secure elements broker (SEB) for application communication channel selector optimization |
FR2980607B1 (fr) * | 2011-09-27 | 2014-04-25 | Proton World Int Nv | Procede de derivation de cles dans un circuit integre |
US9203613B2 (en) | 2011-09-29 | 2015-12-01 | Amazon Technologies, Inc. | Techniques for client constructed sessions |
US9178701B2 (en) | 2011-09-29 | 2015-11-03 | Amazon Technologies, Inc. | Parameter based key derivation |
US9197409B2 (en) | 2011-09-29 | 2015-11-24 | Amazon Technologies, Inc. | Key derivation techniques |
US10797864B2 (en) | 2011-11-21 | 2020-10-06 | Combined Conditional Access Development And Support, Llc | System and method for authenticating data while minimizing bandwidth |
US9553725B2 (en) * | 2011-11-21 | 2017-01-24 | Combined Conditional Access Development And Support, Llc | System and method for authenticating data |
US8627488B2 (en) * | 2011-12-05 | 2014-01-07 | At&T Intellectual Property I, L.P. | Methods and apparatus to anonymize a dataset of spatial data |
US20180083930A1 (en) * | 2011-12-12 | 2018-03-22 | International Business Machines Corporation | Reads for dispersed computation jobs |
US10360106B2 (en) | 2011-12-12 | 2019-07-23 | International Business Machines Corporation | Throttled real-time writes |
US9674155B2 (en) | 2011-12-12 | 2017-06-06 | International Business Machines Corporation | Encrypting segmented data in a distributed computing system |
US9772845B2 (en) | 2011-12-13 | 2017-09-26 | Intel Corporation | Method and apparatus to process KECCAK secure hashing algorithm |
US8984273B2 (en) | 2011-12-16 | 2015-03-17 | Protected Mobility, Llc | Method to provide secure multimedia messaging between peer systems |
US9405537B2 (en) | 2011-12-22 | 2016-08-02 | Intel Corporation | Apparatus and method of execution unit for calculating multiple rounds of a skein hashing algorithm |
KR101264286B1 (ko) | 2012-01-13 | 2013-05-22 | 고려대학교 산학협력단 | 데이터베이스 암호화 시스템 및 방법 |
US10419907B2 (en) | 2012-02-22 | 2019-09-17 | Qualcomm Incorporated | Proximity application discovery and provisioning |
US9544075B2 (en) | 2012-02-22 | 2017-01-10 | Qualcomm Incorporated | Platform for wireless identity transmitter and system using short range wireless broadcast |
US9329879B2 (en) * | 2012-02-23 | 2016-05-03 | Qualcomm Innovation Center, Inc. | Device, method, and system to enable secure distribution of javascripts |
JP5612006B2 (ja) | 2012-03-13 | 2014-10-22 | 株式会社東芝 | データ送信装置、データ受信装置、及びプログラム |
TWI451741B (zh) * | 2012-03-19 | 2014-09-01 | Chiou Haun Lee | 以xor運算於三方通訊之加解密方法 |
US8892865B1 (en) * | 2012-03-27 | 2014-11-18 | Amazon Technologies, Inc. | Multiple authority key derivation |
US8739308B1 (en) | 2012-03-27 | 2014-05-27 | Amazon Technologies, Inc. | Source identification for unauthorized copies of content |
US9215076B1 (en) | 2012-03-27 | 2015-12-15 | Amazon Technologies, Inc. | Key generation for hierarchical data access |
DE102012206272A1 (de) * | 2012-04-17 | 2013-10-17 | Beckhoff Automation Gmbh | Feldbus-Datenübertragung |
US10360593B2 (en) | 2012-04-24 | 2019-07-23 | Qualcomm Incorporated | Retail proximity marketing |
US10621044B2 (en) | 2012-04-25 | 2020-04-14 | Pure Storage, Inc. | Mapping slice groupings in a dispersed storage network |
US10795766B2 (en) | 2012-04-25 | 2020-10-06 | Pure Storage, Inc. | Mapping slice groupings in a dispersed storage network |
US9380032B2 (en) * | 2012-04-25 | 2016-06-28 | International Business Machines Corporation | Encrypting data for storage in a dispersed storage network |
US9660972B1 (en) | 2012-06-25 | 2017-05-23 | Amazon Technologies, Inc. | Protection from data security threats |
US9258118B1 (en) | 2012-06-25 | 2016-02-09 | Amazon Technologies, Inc. | Decentralized verification in a distributed system |
US9160719B2 (en) | 2012-07-20 | 2015-10-13 | Protected Mobility, Llc | Hiding ciphertext using a linguistics algorithm with dictionaries |
US8917868B2 (en) * | 2012-08-22 | 2014-12-23 | Vixs Systems, Inc. | Adaptable encryption device and methods for use therewith |
US11126418B2 (en) * | 2012-10-11 | 2021-09-21 | Mcafee, Llc | Efficient shared image deployment |
US9189225B2 (en) | 2012-10-16 | 2015-11-17 | Imprivata, Inc. | Secure, non-disruptive firmware updating |
KR20140052243A (ko) * | 2012-10-23 | 2014-05-07 | 한국전자통신연구원 | 네트워크 데이터 서비스 장치 및 방법, 네트워크 데이터 서비스를 위한 클라이언트 단말 장치 |
US8886926B2 (en) * | 2012-11-07 | 2014-11-11 | Centri Technology, Inc. | Single-pass data compression and encryption |
JP6366595B2 (ja) * | 2012-11-12 | 2018-08-01 | クリプトグラフィ リサーチ, インコーポレイテッド | 耐グリッチ性暗号離散対数ベースの署名のための方法及びシステム |
CN103023635B (zh) * | 2012-12-03 | 2015-10-07 | 广东欧珀移动通信有限公司 | 一种信息备份的方法及装置 |
CN103023653B (zh) * | 2012-12-07 | 2017-03-29 | 哈尔滨工业大学深圳研究生院 | 低功耗的物联网安全组通信方法及装置 |
US9690759B2 (en) * | 2013-01-03 | 2017-06-27 | Cable Television Laboratories, Inc. | Content linking |
US9124434B2 (en) * | 2013-02-01 | 2015-09-01 | Microsoft Technology Licensing, Llc | Securing a computing device accessory |
JP6238774B2 (ja) | 2013-02-21 | 2017-11-29 | キヤノン株式会社 | ハッシュ値生成装置 |
JP6113091B2 (ja) * | 2013-03-07 | 2017-04-12 | キヤノン株式会社 | ハッシュ値生成装置 |
US9813235B2 (en) | 2013-03-11 | 2017-11-07 | Indian Institute of Technology Kharagpur | Resistance to cache timing attacks on block cipher encryption |
US9425967B2 (en) | 2013-03-20 | 2016-08-23 | Industrial Technology Research Institute | Method for certificate generation and revocation with privacy preservation |
JP5931797B2 (ja) * | 2013-05-27 | 2016-06-08 | 日本電信電話株式会社 | 署名システム及び方法、署名生成装置並びに署名検証装置 |
US9763067B2 (en) | 2013-05-28 | 2017-09-12 | Protected Mobility, Llc | Methods and apparatus for long-short wave, low-high frequency radio secure message service |
KR101416447B1 (ko) * | 2013-06-17 | 2014-07-10 | (주)씽크에이티 | 전화인증 기반의 정보유출 방지방법 및 시스템 |
FR3007168B1 (fr) * | 2013-06-18 | 2016-10-07 | Stmicroelectronics Rousset | Mecanisme de verification de l'authenticite d'un produit |
FR3007169B1 (fr) | 2013-06-18 | 2016-10-07 | Stmicroelectronics Rousset | Procede de verification de l'authenticite d'un produit |
US9407440B2 (en) | 2013-06-20 | 2016-08-02 | Amazon Technologies, Inc. | Multiple authority data security and access |
GB2513669B (en) | 2013-06-21 | 2016-07-20 | Visa Europe Ltd | Enabling access to data |
TWI510046B (zh) * | 2013-07-04 | 2015-11-21 | Univ Nat Cheng Kung | 認證式加解密方法 |
US9521000B1 (en) | 2013-07-17 | 2016-12-13 | Amazon Technologies, Inc. | Complete forward access sessions |
US9160525B2 (en) * | 2013-07-19 | 2015-10-13 | Qualcomm Incorporated | Apparatus and method for key update for use in a block cipher algorithm |
US9736181B2 (en) * | 2013-07-26 | 2017-08-15 | Intel Corporation | Hardening data transmissions against power side channel analysis |
US10403173B2 (en) * | 2013-08-13 | 2019-09-03 | Fiske Software, Llc | NADO cryptography using one-way functions |
US9485222B2 (en) * | 2013-08-20 | 2016-11-01 | Hewlett-Packard Development Company, L.P. | Data stream traffic control |
US9053325B2 (en) * | 2013-08-22 | 2015-06-09 | Freescale Semiconductor, Inc. | Decryption key management system |
US9189638B1 (en) * | 2013-08-25 | 2015-11-17 | Google Inc. | Systems and methods for multi-function and multi-purpose cryptography |
TWI631462B (zh) * | 2013-09-10 | 2018-08-01 | 系微股份有限公司 | 確保機板上匯流排交易安全的計算系統和計算設備實現的方法以及非暫時性的電腦可讀取媒體 |
US9311500B2 (en) | 2013-09-25 | 2016-04-12 | Amazon Technologies, Inc. | Data security using request-supplied keys |
US9237019B2 (en) | 2013-09-25 | 2016-01-12 | Amazon Technologies, Inc. | Resource locators with keys |
US9218235B2 (en) * | 2013-09-25 | 2015-12-22 | Lexmark International, Inc. | Systems and methods of verifying operational information associated with an imaging device |
CN103761456B (zh) * | 2013-10-12 | 2016-05-11 | 利尔达科技集团股份有限公司 | 一种单片机核心代码防破解的方法 |
FR3012234B1 (fr) * | 2013-10-23 | 2017-02-24 | Proton World Int Nv | Protection de l'execution d'un algorithme contre des attaques par canaux caches |
US10243945B1 (en) | 2013-10-28 | 2019-03-26 | Amazon Technologies, Inc. | Managed identity federation |
US9420007B1 (en) | 2013-12-04 | 2016-08-16 | Amazon Technologies, Inc. | Access control using impersonization |
EP2884692B1 (en) * | 2013-12-13 | 2020-05-20 | Nxp B.V. | Updating software on a secure element |
CN103729602B (zh) * | 2013-12-18 | 2016-08-17 | 东莞市乐升电子有限公司 | 利用电源管理控制器对系统进行加密保护的方法 |
CN104753661A (zh) * | 2013-12-30 | 2015-07-01 | 上海格尔软件股份有限公司 | 一种用于商用密码设备的密钥描述文件 |
US9292711B1 (en) | 2014-01-07 | 2016-03-22 | Amazon Technologies, Inc. | Hardware secret usage limits |
US9374368B1 (en) | 2014-01-07 | 2016-06-21 | Amazon Technologies, Inc. | Distributed passcode verification system |
US9369461B1 (en) | 2014-01-07 | 2016-06-14 | Amazon Technologies, Inc. | Passcode verification using hardware secrets |
US9270662B1 (en) | 2014-01-13 | 2016-02-23 | Amazon Technologies, Inc. | Adaptive client-aware session security |
EP2902934B1 (en) * | 2014-02-03 | 2019-04-10 | Nxp B.V. | Portable Security Device, Method for Securing a Data Exchange and Computer Program Product |
US20150242620A1 (en) * | 2014-02-27 | 2015-08-27 | Microsemi SoC Corporation | Methods for controlling the use of intellectual property in individual integrated circuit devices |
US10771255B1 (en) | 2014-03-25 | 2020-09-08 | Amazon Technologies, Inc. | Authenticated storage operations |
WO2015144764A1 (de) * | 2014-03-26 | 2015-10-01 | Continental Teves Ag & Co. Ohg | Verfahren und system zur verbesserung der datensicherheit bei einem kommunikationsvorgang |
US9473296B2 (en) * | 2014-03-27 | 2016-10-18 | Intel Corporation | Instruction and logic for a simon block cipher |
KR20170005850A (ko) | 2014-05-14 | 2017-01-16 | 미쓰비시덴키 가부시키가이샤 | 암호 장치, 기억 시스템, 복호 장치, 암호 방법, 복호 방법, 암호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 |
US9871651B2 (en) | 2014-06-16 | 2018-01-16 | Cisco Technology, Inc. | Differential power analysis countermeasures |
EP3158556A4 (en) * | 2014-06-18 | 2018-01-10 | James Collier | Methods and apparatus for cryptography |
US10114369B2 (en) | 2014-06-24 | 2018-10-30 | Microsemi SoC Corporation | Identifying integrated circuit origin using tooling signature |
US9258117B1 (en) | 2014-06-26 | 2016-02-09 | Amazon Technologies, Inc. | Mutual authentication with symmetric secrets and signatures |
US10326597B1 (en) | 2014-06-27 | 2019-06-18 | Amazon Technologies, Inc. | Dynamic response signing capability in a distributed system |
US8990556B1 (en) | 2014-08-13 | 2015-03-24 | Gimbal, Inc. | Sharing beacons |
US9571465B1 (en) | 2014-09-18 | 2017-02-14 | Amazon Technologies, Inc. | Security verification by message interception and modification |
US10115467B2 (en) * | 2014-09-30 | 2018-10-30 | Jonker Llc | One time accessible (OTA) non-volatile memory |
US10061738B2 (en) | 2014-09-30 | 2018-08-28 | Jonker Llc | Ephemeral peripheral device |
US10839086B2 (en) * | 2014-09-30 | 2020-11-17 | Jonker Llc | Method of operating ephemeral peripheral device |
CN106716344B (zh) * | 2014-10-03 | 2021-04-30 | 密码研究公司 | 用于密码运算的指数分裂 |
US9288043B1 (en) * | 2014-10-17 | 2016-03-15 | Motorola Solutions, Inc. | Methods and systems for providing high-security cryptographic keys to mobile radios |
US10353638B2 (en) | 2014-11-18 | 2019-07-16 | Microsemi SoC Corporation | Security method and apparatus to prevent replay of external memory data to integrated circuits having only one-time programmable non-volatile memory |
WO2016087395A1 (en) * | 2014-12-03 | 2016-06-09 | Nagravision S.A. | Block cryptographic method for encrypting/decrypting messages and cryptographic devices for implementing this method |
DE102015201298A1 (de) * | 2015-01-26 | 2016-07-28 | Robert Bosch Gmbh | Verfahren zum kryptographischen Bearbeiten von Daten |
US10013363B2 (en) | 2015-02-09 | 2018-07-03 | Honeywell International Inc. | Encryption using entropy-based key derivation |
JP6273225B2 (ja) * | 2015-02-26 | 2018-01-31 | 日本電信電話株式会社 | 暗号化システム、暗号化装置、復号装置、暗号化方法、暗号化プログラム、復号プログラム |
JP6273226B2 (ja) * | 2015-02-26 | 2018-01-31 | 日本電信電話株式会社 | 暗号化システム、認証システム、暗号化装置、復号装置、認証子生成装置、検証装置、暗号化方法、認証方法 |
US9832022B1 (en) | 2015-02-26 | 2017-11-28 | Altera Corporation | Systems and methods for performing reverse order cryptographic operations on data streams |
JP6273223B2 (ja) * | 2015-02-26 | 2018-01-31 | 日本電信電話株式会社 | 暗号化システム、暗号化装置、復号装置、暗号化方法、暗号化プログラム、復号プログラム |
CN104602209A (zh) * | 2015-02-27 | 2015-05-06 | 中国科学院大学 | 一种基于rsa和流密码算法的联合信源短信加密解密方法 |
US9107152B1 (en) | 2015-03-11 | 2015-08-11 | Gimbal, Inc. | Beacon protocol advertising bi-directional communication availability window |
CN108064381B (zh) * | 2015-03-30 | 2021-06-18 | 爱迪德技术有限公司 | 用于数据保护的方法 |
US9697359B2 (en) | 2015-04-15 | 2017-07-04 | Qualcomm Incorporated | Secure software authentication and verification |
US9703973B2 (en) | 2015-04-28 | 2017-07-11 | International Business Machines Corporation | Customer load of field programmable gate arrays |
EP3089398B1 (en) * | 2015-04-30 | 2017-10-11 | Nxp B.V. | Securing a cryptographic device |
US10979553B2 (en) | 2015-05-15 | 2021-04-13 | Overhead Door Corporation | Near field communications activated door access panel |
US9697340B2 (en) * | 2015-06-14 | 2017-07-04 | Guardtime IP Holdings, Ltd. | System and methods with assured one-time, replay-resistant passwords |
US10122692B2 (en) | 2015-06-16 | 2018-11-06 | Amazon Technologies, Inc. | Handshake offload |
US10122689B2 (en) | 2015-06-16 | 2018-11-06 | Amazon Technologies, Inc. | Load balancing with handshake offload |
DE102015211540A1 (de) * | 2015-06-23 | 2016-12-29 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren, Server, Firewall, Steuergerät, und System zur Programmierung eines Steuergeräts eines Fahrzeugs |
US10642962B2 (en) | 2015-07-28 | 2020-05-05 | Western Digital Technologies, Inc. | Licensable function for securing stored data |
EP3346455B1 (en) * | 2015-08-31 | 2020-09-30 | Nec Corporation | Secret calculation system, secret calculation apparatus, and secret calculation method |
US9660803B2 (en) | 2015-09-15 | 2017-05-23 | Global Risk Advisors | Device and method for resonant cryptography |
CN105224831B (zh) * | 2015-09-29 | 2018-06-15 | 深圳市九洲电器有限公司 | 终端设备标识数据写入方法及系统 |
EP3262515B1 (en) * | 2015-09-30 | 2019-08-07 | Hewlett-Packard Enterprise Development LP | Cryptographic-based initialization of memory content |
US10025600B2 (en) * | 2015-10-02 | 2018-07-17 | Google Llc | NAND-based verified boot |
US9876641B2 (en) * | 2015-10-08 | 2018-01-23 | The Boeing Company | Data dependent authentication keys for differential power analysis resistant authentication |
CN105376053B (zh) * | 2015-10-26 | 2019-10-18 | 宁波大学 | 基于Keccak杂凑算法的图像密钥生成方法 |
GB201519612D0 (en) * | 2015-11-06 | 2015-12-23 | Nagravision Sa | Key sequence generation for cryptographic operations |
AT517983B1 (de) * | 2015-11-18 | 2018-11-15 | Siemens Ag Oesterreich | Schutz eines Computersystems vor Seitenkanalattacken |
EP3179668B1 (en) * | 2015-12-11 | 2019-05-22 | Institut Mines-Télécom | Methods and devices for estimating secret values |
CN108370310B (zh) * | 2015-12-16 | 2021-11-30 | 密码研究公司 | 生成加密密钥的方法、集成电路和计算机可读介质 |
EP3185464B1 (en) | 2015-12-21 | 2020-05-20 | Hewlett-Packard Development Company, L.P. | Key generation information trees |
US9930021B2 (en) * | 2016-01-05 | 2018-03-27 | Intel Corporation | Secure devices using entropy multiplexing |
US10382210B2 (en) | 2016-01-10 | 2019-08-13 | Apple Inc. | Secure device pairing |
KR101772554B1 (ko) | 2016-02-02 | 2017-08-30 | 주식회사 코인플러그 | 파일에 대한 노터리 서비스를 제공하고 상기 노터리 서비스를 사용하여 기록된 파일에 대한 검증을 수행하는 방법 및 서버 |
EP3208788B1 (en) * | 2016-02-22 | 2020-06-03 | Eshard | Method of protecting a circuit against a side-channel analysis |
US9946890B2 (en) | 2016-03-18 | 2018-04-17 | Uber Technologies, Inc. | Secure start system for an autonomous vehicle |
US20190305927A1 (en) * | 2016-03-18 | 2019-10-03 | University Of Florida Research Foundation Incorporated | Bitstream security based on node locking |
US10089116B2 (en) * | 2016-03-18 | 2018-10-02 | Uber Technologies, Inc. | Secure start system for an autonomous vehicle |
EP3437248A4 (en) * | 2016-03-30 | 2019-11-06 | The Athena Group, Inc. | KEY UPDATE FOR KEY MASTERS |
US10456699B2 (en) * | 2016-03-31 | 2019-10-29 | Shenzhen Bell Creative Sccience And Education Co., Ltd. | Modular assembly system |
ES2957712T3 (es) * | 2016-04-07 | 2024-01-24 | Nagravision Sarl | Dispositivo criptográfico flexible |
NL2016671B1 (en) * | 2016-04-25 | 2017-11-07 | Fugro N V | GNSS Message Authentication. |
DE102016107913A1 (de) * | 2016-04-28 | 2017-11-16 | Deutscher Genossenschafts-Verlag Eg | Verfahren zur Übertragung von vertraulichen Nachrichten |
US9916452B2 (en) | 2016-05-18 | 2018-03-13 | Microsoft Technology Licensing, Llc | Self-contained cryptographic boot policy validation |
CN106201352B (zh) * | 2016-07-07 | 2019-11-29 | 广东高云半导体科技股份有限公司 | 非易失性fpga片上数据流文件的保密系统及解密方法 |
WO2018020383A1 (en) * | 2016-07-25 | 2018-02-01 | Mobeewave, Inc. | System for and method of authenticating a component of an electronic device |
US10116440B1 (en) | 2016-08-09 | 2018-10-30 | Amazon Technologies, Inc. | Cryptographic key management for imported cryptographic keys |
US10348502B2 (en) * | 2016-09-02 | 2019-07-09 | Blackberry Limited | Encrypting and decrypting data on an electronic device |
US10341102B2 (en) * | 2016-09-02 | 2019-07-02 | Blackberry Limited | Decrypting encrypted data on an electronic device |
US11496285B2 (en) * | 2016-09-08 | 2022-11-08 | International Business Machines Corporation | Cryptographic side channel resistance using permutation networks |
US10528765B2 (en) * | 2016-09-16 | 2020-01-07 | Intel Corporation | Technologies for secure boot provisioning and management of field-programmable gate array images |
CH712947B1 (fr) * | 2016-09-23 | 2021-01-29 | Vidoni Pierino | Dispositif et méthode de sécurisation de transmission de données entre un émetteur et un récepteur. |
US10318748B2 (en) * | 2016-09-30 | 2019-06-11 | Intel Corporation | Techniques to protect fuses against non-destructive attacks |
KR101825838B1 (ko) * | 2016-10-14 | 2018-02-06 | 영남대학교 산학협력단 | 데이터의 부분 암호화 방법, 데이터의 부분 복호화 방법 및 부분 암호화된 데이터를 복호화하는 프로그램을 저장하는 저장매체 |
EP3338143B1 (en) * | 2016-10-27 | 2019-02-20 | Hewlett-Packard Development Company | Replaceable item authentication |
US10708073B2 (en) | 2016-11-08 | 2020-07-07 | Honeywell International Inc. | Configuration based cryptographic key generation |
US10547460B2 (en) | 2016-11-18 | 2020-01-28 | Qualcomm Incorporated | Message-based key generation using physical unclonable function (PUF) |
CN106712929A (zh) * | 2016-12-30 | 2017-05-24 | 桂林电子科技大学 | 一种大数据的加密方法 |
US11190344B2 (en) * | 2017-01-25 | 2021-11-30 | Salesforce.Com, Inc. | Secure user authentication based on multiple asymmetric cryptography key pairs |
US20180234839A1 (en) | 2017-02-13 | 2018-08-16 | Futurewei Technologies, Inc. | System and Method for User Equipment Identification and Communications |
WO2018153486A1 (en) * | 2017-02-24 | 2018-08-30 | NEC Laboratories Europe GmbH | Method for signing a new block in a decentralized blockchain consensus network |
CN106686008B (zh) * | 2017-03-03 | 2019-01-11 | 腾讯科技(深圳)有限公司 | 信息存储方法及装置 |
GB2560587A (en) * | 2017-03-17 | 2018-09-19 | Univ Oxford Innovation Ltd | Secure data exchange |
US11128452B2 (en) * | 2017-03-25 | 2021-09-21 | AVAST Software s.r.o. | Encrypted data sharing with a hierarchical key structure |
CN108733311B (zh) * | 2017-04-17 | 2021-09-10 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和设备 |
US10984136B2 (en) | 2017-04-21 | 2021-04-20 | Micron Technology, Inc. | Secure memory device with unique identifier for authentication |
US10924261B2 (en) | 2017-05-22 | 2021-02-16 | Arm Limited | Efficient power distribution |
US10997322B2 (en) | 2017-05-22 | 2021-05-04 | Arm Limited | Efficient power distribution |
WO2019016181A1 (en) * | 2017-07-18 | 2019-01-24 | Legic Identsystems Ag | METHOD AND DEVICES USED TO VERIFY AUTHORIZATION OF AN ELECTRONIC DEVICE |
US10469272B2 (en) * | 2017-07-28 | 2019-11-05 | Netapp, Inc. | Methods for facilitating secure cloud compute environments and devices thereof |
US10733313B2 (en) | 2018-02-09 | 2020-08-04 | Arm Limited | Counter integrity tree for memory security |
CN107609405B (zh) * | 2017-08-03 | 2020-08-18 | 海光信息技术有限公司 | 一种外部安全内存装置及系统级芯片soc |
US10540297B2 (en) * | 2017-08-03 | 2020-01-21 | Arm Limited | Memory organization for security and reliability |
US10397000B2 (en) | 2017-08-14 | 2019-08-27 | Raytheon Company | Multi-level authentication for secure supply chain asset management |
WO2019043921A1 (ja) * | 2017-09-01 | 2019-03-07 | 三菱電機株式会社 | 暗号化装置、復号装置、暗号化方法、復号方法、暗号化プログラム及び復号プログラム |
US10808280B2 (en) * | 2017-09-14 | 2020-10-20 | Colossio, Inc. | Computational phylogenetic analysis |
US10924263B2 (en) * | 2017-09-25 | 2021-02-16 | The Boeing Company | Systems and methods for facilitating iterative key generation and data encryption and decryption |
US10965456B2 (en) | 2017-09-25 | 2021-03-30 | The Boeing Company | Systems and methods for facilitating data encryption and decryption and erasing of associated information |
US10860403B2 (en) | 2017-09-25 | 2020-12-08 | The Boeing Company | Systems and methods for facilitating truly random bit generation |
CN107911210B (zh) * | 2017-10-20 | 2019-01-22 | 广东省南方数字电视无线传播有限公司 | 视频切片加密、解密方法及相应装置 |
CN108063756B (zh) * | 2017-11-21 | 2020-07-03 | 阿里巴巴集团控股有限公司 | 一种密钥管理方法、装置及设备 |
DE102018100357A1 (de) * | 2018-01-09 | 2019-07-11 | Infineon Technologies Ag | Chip und verfahren zum sicheren speichern von geheimen daten |
US10706179B2 (en) * | 2018-01-10 | 2020-07-07 | General Electric Company | Secure provisioning of secrets into MPSoC devices using untrusted third-party systems |
FR3076925B1 (fr) | 2018-01-16 | 2020-01-24 | Proton World International N.V. | Fonction cryptographique |
US10719607B2 (en) * | 2018-03-19 | 2020-07-21 | Nxp B.V. | Data integrity verification in a non-volatile memory |
CN108521325B (zh) * | 2018-03-27 | 2021-09-21 | 林喆昊 | 一种适用于系统数据全生命周期的防侧信道攻击方法 |
US10826694B2 (en) | 2018-04-23 | 2020-11-03 | International Business Machines Corporation | Method for leakage-resilient distributed function evaluation with CPU-enclaves |
US10673617B1 (en) * | 2018-04-24 | 2020-06-02 | George Antoniou | Methods, system and point-to-point encryption device microchip for AES-sea 512-bit key using identity access management utilizing blockchain ecosystem to improve cybersecurity |
US10256974B1 (en) * | 2018-04-25 | 2019-04-09 | Blockchain Asics Llc | Cryptographic ASIC for key hierarchy enforcement |
CN112437924A (zh) * | 2018-05-11 | 2021-03-02 | 美国莱迪思半导体公司 | 用于可编程逻辑器件的安全引导系统和方法 |
WO2019217925A1 (en) | 2018-05-11 | 2019-11-14 | Lattice Semiconductor Corporation | Key provisioning systems and methods for programmable logic devices |
US11496445B2 (en) * | 2018-05-23 | 2022-11-08 | Sideassure, Inc. | Electronic device for secure communications with an automobile |
US10892903B2 (en) * | 2018-05-29 | 2021-01-12 | Ememory Technology Inc. | Communication system capable of preserving a chip-to-chip integrity |
CN108830207A (zh) * | 2018-06-06 | 2018-11-16 | 成都邑教云信息技术有限公司 | 一种互联网教育告警系统 |
US11005663B2 (en) * | 2018-08-13 | 2021-05-11 | Seagate Technology Llc | Secure audit scheme in a distributed data storage system |
WO2020034118A1 (zh) * | 2018-08-15 | 2020-02-20 | 华为技术有限公司 | 一种安全的数据转移装置、系统和方法 |
CN109460309B (zh) * | 2018-09-26 | 2020-09-22 | 华南理工大学 | 一种基于FPGA的Keccak算法故障检测系统 |
CN109471675B (zh) * | 2018-10-30 | 2021-11-19 | 北京无限自在文化传媒股份有限公司 | 一种对于硬件执行改变的方法及其系统 |
RU2710669C1 (ru) * | 2018-11-06 | 2019-12-30 | Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" | Способ шифрования данных |
US10887100B2 (en) * | 2018-11-09 | 2021-01-05 | Ares Technologies, Inc. | Systems and methods for distributed key storage |
CN109286501B (zh) * | 2018-11-13 | 2021-07-13 | 北京深思数盾科技股份有限公司 | 用于加密机的认证方法以及加密机 |
CN109558759B (zh) * | 2018-11-20 | 2021-05-14 | 电子科技大学 | 一种用于非接触式智能卡电磁攻击的模拟信号调理电路 |
EP3661243A1 (en) * | 2018-11-29 | 2020-06-03 | Nagravision S.A. | Secure beacons |
CN109617867B (zh) * | 2018-12-04 | 2020-08-14 | 海南高信通科技有限公司 | 一种用于家居设备控制的智能网关系统 |
KR102567097B1 (ko) * | 2018-12-05 | 2023-08-14 | 삼성전자주식회사 | 임베디드 시스템의 부트 롬 업데이트 방법 및 부팅 방법 |
ES2927668T3 (es) * | 2018-12-20 | 2022-11-10 | Merck Patent Gmbh | Métodos y sistemas para preparar y realizar una autenticación de objeto |
US11055409B2 (en) * | 2019-01-06 | 2021-07-06 | Nuvoton Technology Corporation | Protected system |
EP3697020A1 (de) * | 2019-02-15 | 2020-08-19 | Siemens Aktiengesellschaft | Verfahren zum betreiben von im zähler-modus betriebenen schlüsselstromgeneratoren zur sicheren datenübertragung, schlüsselstromgenerator mit zähler-modus-betrieb zur sicheren datenübertragung und computer-programm-produkt zur schlüsselstromerzeugung |
KR102621645B1 (ko) * | 2019-03-12 | 2024-01-05 | 삼성전자주식회사 | 보안 집적 회로를 포함하는 전자 장치 |
DE102019109341B4 (de) * | 2019-04-09 | 2023-07-20 | Nicolai Roider | Verfahren zum sicheren Austausch von verschlüsselten Nachrichten |
CN110213228B (zh) * | 2019-04-25 | 2021-09-07 | 平安科技(深圳)有限公司 | 一种认证通信的方法、装置、存储介质及计算机设备 |
US11128471B2 (en) * | 2019-04-25 | 2021-09-21 | Microsoft Technology Licensing, Llc | Accessibility controls in distributed data systems |
US10554637B1 (en) * | 2019-05-01 | 2020-02-04 | Cyberark Software Ltd. | Secure and reconstructible distribution of data among network resources |
US11645393B2 (en) | 2019-06-28 | 2023-05-09 | Seagate Technology Llc | Secure booting in a data storage device with front end bus |
CN110321737B (zh) * | 2019-06-28 | 2020-12-11 | 兆讯恒达科技股份有限公司 | 一种数据加密标准协处理器防注入式攻击的方法 |
EP3767849A1 (en) * | 2019-07-18 | 2021-01-20 | Nagravision SA | A hardware component and a method for implementing a camouflage of current traces generated by a digital system |
WO2021041793A2 (en) * | 2019-08-29 | 2021-03-04 | Carnegie Mellon University | Method for securing logic circuits |
TWI720694B (zh) * | 2019-11-18 | 2021-03-01 | 中華電信股份有限公司 | 具時間序列演算之燒錄認證裝置及方法 |
US11582021B1 (en) * | 2019-11-20 | 2023-02-14 | Xilinx, Inc. | Protection against differential power analysis attacks involving initialization vectors |
KR102094705B1 (ko) * | 2020-01-17 | 2020-03-30 | 주식회사 에프엔에스벨류 | 블록 체인을 기반으로 한 다중 노드 인증 방법 및 이를 위한 장치 |
US11403433B2 (en) | 2020-01-17 | 2022-08-02 | Visa International Service Association | System, method, and computer program product for encrypting sensitive data using a field programmable gate array |
JP7238212B2 (ja) * | 2020-01-19 | 2023-03-13 | モービルアイ ビジョン テクノロジーズ リミテッド | 有権限メンバのグループからのデータの匿名収集 |
EP3860035A1 (en) * | 2020-01-29 | 2021-08-04 | Sebastien Armleder | Storing and determining a data element |
FR3106909B1 (fr) * | 2020-01-31 | 2022-02-18 | St Microelectronics Grenoble 2 | Circuit intégré configuré pour réaliser des opérations de chiffrement symétrique avec protection de clé secrète |
US11265144B2 (en) | 2020-03-09 | 2022-03-01 | International Business Machines Corporation | Consistent ciphertext creation |
EP3893431A1 (de) * | 2020-04-06 | 2021-10-13 | Siemens Aktiengesellschaft | Authentifizierung einer konfiguration einer feldprogrammierbaren logikgatter-anordnung |
US11573929B2 (en) * | 2020-04-09 | 2023-02-07 | Kyndryl, Inc. | Deduplication of encrypted data using multiple keys |
WO2021212339A1 (en) * | 2020-04-21 | 2021-10-28 | Citrix Systems, Inc. | Secure translation of sensitive content |
US11368287B2 (en) | 2020-05-19 | 2022-06-21 | International Business Machines Corporation | Identification of a creator of an encrypted object |
US20210367794A1 (en) * | 2020-05-21 | 2021-11-25 | Cryptotronix, LLC | Device provisioning system |
US11416621B2 (en) | 2020-06-18 | 2022-08-16 | Micron Technology, Inc. | Authenticating software images |
US11599679B2 (en) * | 2020-06-23 | 2023-03-07 | Arm Limited | Electromagnetic and power noise injection for hardware operation concealment |
US11416639B2 (en) * | 2020-06-29 | 2022-08-16 | Nuvoton Technology Corporation | PQA unlock |
US11789565B2 (en) | 2020-08-18 | 2023-10-17 | Intel Corporation | Lid controller hub architecture for improved touch experiences |
CN112333698B (zh) * | 2020-11-18 | 2021-08-24 | 深圳大师科技有限公司 | 一种手游终端加密认证方法及装置 |
CN112668039A (zh) * | 2020-12-11 | 2021-04-16 | 国网信通亿力科技有限责任公司 | 一种电网数据的隐私保护高效聚合及访问控制方法 |
US11809493B2 (en) * | 2021-01-19 | 2023-11-07 | Micro Focus Llc | System and method for tokenization of data |
US11501027B2 (en) * | 2021-02-08 | 2022-11-15 | Micron Technology, Inc. | Mechanism to support writing files into a file system mounted in a secure memory device |
US11539503B2 (en) | 2021-03-03 | 2022-12-27 | Red Hat, Inc. | Container management for cryptanalysis attack protection |
US11929992B2 (en) * | 2021-03-31 | 2024-03-12 | Sophos Limited | Encrypted cache protection |
US11394308B1 (en) | 2021-05-05 | 2022-07-19 | Arm Limited | Apparatuses and methods for power isolation |
US11574079B2 (en) | 2021-05-27 | 2023-02-07 | Nuvoton Technology Corporation | Multi-stage provisioning of secret data |
US11494330B2 (en) * | 2021-06-22 | 2022-11-08 | Intel Corporation | Fuse recipe update mechanism |
CN113591089B (zh) * | 2021-08-12 | 2024-06-11 | 上海观安信息技术股份有限公司 | 一种数据混淆加密方法 |
CN113703838B (zh) * | 2021-08-30 | 2024-01-05 | 远景智能国际私人投资有限公司 | 设备控制方法、装置、设备及存储介质 |
US12088715B2 (en) * | 2021-09-29 | 2024-09-10 | Richard D'Souza | System and method to enable a secure communication |
CN113901503A (zh) * | 2021-10-26 | 2022-01-07 | 北京云迹科技有限公司 | 一种加密方法、加密装置和解密方法、解密装置 |
US11783043B2 (en) * | 2021-11-23 | 2023-10-10 | ZT Group Int'l, Inc. | Methods for authentication of firmware images in embedded systems |
US20230269065A1 (en) * | 2022-02-24 | 2023-08-24 | FortifyIQ, Inc. | Carry-based differential power analysis and its application to testing for vulnerability of sha-2 and hmac-sha-2 to side channel attack |
TWI819516B (zh) * | 2022-03-09 | 2023-10-21 | 瑞昱半導體股份有限公司 | 基於消息驗證的金鑰擴展的處理方法與電路 |
US20240004556A1 (en) * | 2022-06-29 | 2024-01-04 | Western Digital Technologies, Inc. | Asynchronous operation completion notification |
CN115361140B (zh) * | 2022-08-19 | 2023-11-24 | 广州万协通信息技术有限公司 | 安全芯片密钥验证方法及装置 |
WO2024201955A1 (ja) * | 2023-03-30 | 2024-10-03 | 日本電信電話株式会社 | 送信装置、受信装置、通信システム、送信方法、及びプログラム |
CN118094608B (zh) * | 2024-04-29 | 2024-08-30 | 山东水文印务有限公司 | 水文数据管理方法 |
Family Cites Families (179)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20338A (en) * | 1858-05-25 | Window-spring | ||
US4694491A (en) | 1985-03-11 | 1987-09-15 | General Instrument Corp. | Cryptographic system using interchangeable key blocks and selectable key fragments |
US4972472A (en) | 1985-03-15 | 1990-11-20 | Tandem Computers Incorporated | Method and apparatus for changing the master key in a cryptographic system |
JPH01114995A (ja) | 1987-10-29 | 1989-05-08 | Toppan Printing Co Ltd | Icカード |
JP2698588B2 (ja) | 1987-11-13 | 1998-01-19 | 株式会社東芝 | 携帯可能電子装置 |
US5115133A (en) | 1990-04-19 | 1992-05-19 | Inomet, Inc. | Testing of body fluid constituents through measuring light reflected from tympanic membrane |
JPH04251186A (ja) | 1991-01-08 | 1992-09-07 | Kobe Steel Ltd | 液体処理用マイクロ波溶融炉 |
US5268962A (en) * | 1992-07-21 | 1993-12-07 | Digital Equipment Corporation | Computer network with modified host-to-host encryption keys |
US5297207A (en) | 1993-05-24 | 1994-03-22 | Degele Steven T | Machine generation of cryptographic keys by non-linear processes similar to processes normally associated with encryption of data |
US5454037A (en) | 1993-10-28 | 1995-09-26 | Grayline International Limited | Portable secure-telephone communications module |
US5513261A (en) * | 1993-12-29 | 1996-04-30 | At&T Corp. | Key management scheme for use with electronic cards |
US5491749A (en) | 1993-12-30 | 1996-02-13 | International Business Machines Corporation | Method and apparatus for entity authentication and key distribution secure against off-line adversarial attacks |
UA41387C2 (uk) | 1994-01-13 | 2001-09-17 | Сертко, Інк | Спосіб установлення вірогідного перевірюваного зв'язку, спосіб захищеного зв'язку, спосіб оновлення мікропрограмного забезпечення, спосіб здійснення шифрованого зв'язку та спосіб надання перевіреному на справжність пристрою права на проведення електронної транзакції |
US5511123A (en) | 1994-08-04 | 1996-04-23 | Northern Telecom Limited | Symmetric cryptographic system for data encryption |
US5754659A (en) | 1995-12-22 | 1998-05-19 | General Instrument Corporation Of Delaware | Generation of cryptographic signatures using hash keys |
FR2745924B1 (fr) | 1996-03-07 | 1998-12-11 | Bull Cp8 | Circuit integre perfectionne et procede d'utilisation d'un tel circuit integre |
US6901509B1 (en) * | 1996-05-14 | 2005-05-31 | Tumbleweed Communications Corp. | Apparatus and method for demonstrating and confirming the status of a digital certificates and other data |
US6587563B1 (en) | 1997-02-15 | 2003-07-01 | Apple Computer, Inc. | Cryptographic system using chaotic dynamics |
US5991415A (en) * | 1997-05-12 | 1999-11-23 | Yeda Research And Development Co. Ltd. At The Weizmann Institute Of Science | Method and apparatus for protecting public key schemes from timing and fault attacks |
US5978475A (en) * | 1997-07-18 | 1999-11-02 | Counterpane Internet Security, Inc. | Event auditing system |
US6704871B1 (en) * | 1997-09-16 | 2004-03-09 | Safenet, Inc. | Cryptographic co-processor |
US6304658B1 (en) | 1998-01-02 | 2001-10-16 | Cryptography Research, Inc. | Leak-resistant cryptographic method and apparatus |
US7587044B2 (en) * | 1998-01-02 | 2009-09-08 | Cryptography Research, Inc. | Differential power analysis method and apparatus |
US6049878A (en) * | 1998-01-20 | 2000-04-11 | Sun Microsystems, Inc. | Efficient, secure multicasting with global knowledge |
US7809138B2 (en) * | 1999-03-16 | 2010-10-05 | Intertrust Technologies Corporation | Methods and apparatus for persistent control and protection of content |
EP2280502B1 (en) | 1998-06-03 | 2018-05-02 | Cryptography Research, Inc. | Using unpredictable information to Resist Discovery of Secrets by External Monitoring |
WO1999067766A2 (en) | 1998-06-03 | 1999-12-29 | Cryptography Research, Inc. | Balanced cryptographic computational method and apparatus for leak minimization in smartcards and other cryptosystems |
DE69940117D1 (de) | 1998-06-03 | 2009-01-29 | Cryptography Res Inc | Gesicherte moduläre potenzierung mit leckminimierung für chipkarten und andere kryptosysteme |
CA2333095C (en) | 1998-06-03 | 2005-05-10 | Cryptography Research, Inc. | Improved des and other cryptographic processes with leak minimization for smartcards and other cryptosystems |
JP4216475B2 (ja) * | 1998-07-02 | 2009-01-28 | クリプターグラフィー リサーチ インコーポレイテッド | 漏洩抵抗力を有する暗号索引付き鍵の更新方法及びデバイス |
US6816968B1 (en) * | 1998-07-10 | 2004-11-09 | Silverbrook Research Pty Ltd | Consumable authentication protocol and system |
US6385727B1 (en) * | 1998-09-25 | 2002-05-07 | Hughes Electronics Corporation | Apparatus for providing a secure processing environment |
US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
US6188987B1 (en) * | 1998-11-17 | 2001-02-13 | Dolby Laboratories Licensing Corporation | Providing auxiliary information with frame-based encoded audio information |
WO2000046967A1 (en) * | 1999-02-04 | 2000-08-10 | Meteora System Co., Ltd. | Ip key management mechanism with divergence barrier increasing entropy against computational crypto-analyses |
US6654889B1 (en) | 1999-02-19 | 2003-11-25 | Xilinx, Inc. | Method and apparatus for protecting proprietary configuration data for programmable logic devices |
US6735313B1 (en) * | 1999-05-07 | 2004-05-11 | Lucent Technologies Inc. | Cryptographic method and apparatus for restricting access to transmitted programming content using hash functions and program identifiers |
EP1075108A1 (en) * | 1999-07-23 | 2001-02-07 | BRITISH TELECOMMUNICATIONS public limited company | Cryptographic data distribution |
US6289455B1 (en) * | 1999-09-02 | 2001-09-11 | Crypotography Research, Inc. | Method and apparatus for preventing piracy of digital content |
US7434046B1 (en) * | 1999-09-10 | 2008-10-07 | Cisco Technology, Inc. | Method and apparatus providing secure multicast group communication |
US6724894B1 (en) | 1999-11-05 | 2004-04-20 | Pitney Bowes Inc. | Cryptographic device having reduced vulnerability to side-channel attack and method of operating same |
EP1267515A3 (en) * | 2000-01-21 | 2004-04-07 | Sony Computer Entertainment Inc. | Method and apparatus for symmetric encryption/decryption of recorded data |
JP2001211153A (ja) * | 2000-01-25 | 2001-08-03 | Murata Mach Ltd | 秘密鍵生成方法 |
CA2298990A1 (en) * | 2000-02-18 | 2001-08-18 | Cloakware Corporation | Method and system for resistance to power analysis |
US7089240B2 (en) * | 2000-04-06 | 2006-08-08 | International Business Machines Corporation | Longest prefix match lookup using hash function |
JP4622064B2 (ja) * | 2000-04-06 | 2011-02-02 | ソニー株式会社 | 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体 |
US7505599B2 (en) * | 2000-04-06 | 2009-03-17 | Sony Corporation | Information processing system and method for managing encrypted data with tag information |
CN100490369C (zh) * | 2000-06-15 | 2009-05-20 | 索尼公司 | 使用了加密密钥组的信息处理系统及方法 |
JP2001358707A (ja) * | 2000-06-15 | 2001-12-26 | Sony Corp | 暗号鍵ブロックを用いた情報処理システムおよび情報処理方法、並びにプログラム提供媒体 |
JP4660899B2 (ja) * | 2000-07-24 | 2011-03-30 | ソニー株式会社 | データ処理装置およびデータ処理方法、並びにプログラム提供媒体 |
US7539313B1 (en) * | 2000-09-13 | 2009-05-26 | Nortel Networks Limited | System and method for key management across geographic domains |
US6993138B1 (en) * | 2000-09-14 | 2006-01-31 | Nortel Networks Limited | Spatial key trees for key management in wireless environments |
US6931543B1 (en) | 2000-11-28 | 2005-08-16 | Xilinx, Inc. | Programmable logic device with decryption algorithm and decryption key |
US7117373B1 (en) | 2000-11-28 | 2006-10-03 | Xilinx, Inc. | Bitstream for configuring a PLD with encrypted design data |
US20020141593A1 (en) * | 2000-12-11 | 2002-10-03 | Kurn David Michael | Multiple cryptographic key linking scheme on a computer system |
JP4710132B2 (ja) * | 2000-12-26 | 2011-06-29 | ソニー株式会社 | 情報処理システム、および情報処理方法、並びにプログラム記録媒体 |
US7039803B2 (en) * | 2001-01-26 | 2006-05-02 | International Business Machines Corporation | Method for broadcast encryption and key revocation of stateless receivers |
JP4019303B2 (ja) | 2001-02-02 | 2007-12-12 | 日本電気株式会社 | 電子透かしに含めた暗号鍵を用いた暗号化装置及び復号化装置並びにそれらの方法 |
US20020131592A1 (en) * | 2001-03-16 | 2002-09-19 | Harris Hinnant | Entropy sources for encryption key generation |
US7028191B2 (en) * | 2001-03-30 | 2006-04-11 | Michener John R | Trusted authorization device |
JP4976622B2 (ja) | 2001-06-22 | 2012-07-18 | 東日本旅客鉄道株式会社 | 踏切制御装置及び踏切制御ネットワーク |
JP4193380B2 (ja) * | 2001-07-05 | 2008-12-10 | Kddi株式会社 | ストリーム転送における電子署名システム |
US7237121B2 (en) * | 2001-09-17 | 2007-06-26 | Texas Instruments Incorporated | Secure bootloader for securing digital devices |
GB0124670D0 (en) * | 2001-10-15 | 2001-12-05 | Hewlett Packard Co | Method and apparatus for encrypting data |
US7543159B2 (en) * | 2001-11-14 | 2009-06-02 | International Business Machines Corporation | Device and method with reduced information leakage |
US7194633B2 (en) * | 2001-11-14 | 2007-03-20 | International Business Machines Corporation | Device and method with reduced information leakage |
US7333616B1 (en) * | 2001-11-14 | 2008-02-19 | Omniva Corp. | Approach for managing access to messages using encryption key management policies |
US7308583B2 (en) * | 2002-01-25 | 2007-12-11 | Matsushita Electric Industrial Co., Ltd. | Data distribution system |
US7340603B2 (en) * | 2002-01-30 | 2008-03-04 | Sony Corporation | Efficient revocation of receivers |
US7162644B1 (en) | 2002-03-29 | 2007-01-09 | Xilinx, Inc. | Methods and circuits for protecting proprietary configuration data for programmable logic devices |
US7545931B2 (en) * | 2002-04-12 | 2009-06-09 | Microsoft Corporation | Protection of application secrets |
US7487365B2 (en) * | 2002-04-17 | 2009-02-03 | Microsoft Corporation | Saving and retrieving data based on symmetric key encryption |
US8438392B2 (en) * | 2002-06-20 | 2013-05-07 | Krimmeni Technologies, Inc. | Method and system for control of code execution on a general purpose computing device and control of code execution in a recursive security protocol |
EP1429224A1 (en) * | 2002-12-10 | 2004-06-16 | Texas Instruments Incorporated | Firmware run-time authentication |
CN1679271A (zh) * | 2002-08-28 | 2005-10-05 | 美国多科摩通讯研究所股份有限公司 | 基于认证的加密和公共密钥基础结构 |
KR100940202B1 (ko) * | 2002-08-29 | 2010-02-10 | 삼성전자주식회사 | 일방향 함수를 사용하여 계층적으로 암호화하는 장치 및방법 |
KR100924773B1 (ko) * | 2002-09-16 | 2009-11-03 | 삼성전자주식회사 | 메타데이터 암호화 및 복호화 방법과 암호화된 메타데이터관리 방법 및 그 시스템 |
JP4099039B2 (ja) * | 2002-11-15 | 2008-06-11 | 松下電器産業株式会社 | プログラム更新方法 |
US20050210179A1 (en) * | 2002-12-02 | 2005-09-22 | Walmsley Simon R | Integrated circuit having random clock or random delay |
US7152942B2 (en) * | 2002-12-02 | 2006-12-26 | Silverbrook Research Pty Ltd | Fixative compensation |
US20090319802A1 (en) * | 2002-12-02 | 2009-12-24 | Silverbrook Research Pty Ltd | Key Genaration In An Integrated Circuit |
US7613925B2 (en) * | 2003-01-10 | 2009-11-03 | Motorola, Inc. | Method for authenticating a message |
US7707114B2 (en) | 2003-06-25 | 2010-04-27 | Nokia Corporation | Enabling modification of control information, which controls the rights to content, where access to a key for decrypting the content requires a particular value that becomes modified when the control information is modified |
US7581094B1 (en) * | 2003-07-09 | 2009-08-25 | Hewlett-Packard Development Company, L.P. | Cryptographic checksums enabling data manipulation and transcoding |
GB2404488B (en) * | 2003-07-31 | 2006-05-31 | Sony Uk Ltd | Access control for digital content |
GB2404467A (en) * | 2003-07-31 | 2005-02-02 | Sony Uk Ltd | Access control for digital content |
GB2404486A (en) * | 2003-07-31 | 2005-02-02 | Sony Uk Ltd | Access control for digital storage medium content |
GB2404538A (en) * | 2003-07-31 | 2005-02-02 | Sony Uk Ltd | Access control for digital content |
GB2404487A (en) * | 2003-07-31 | 2005-02-02 | Sony Uk Ltd | Access control for digital storage medium content |
GB2404489A (en) * | 2003-07-31 | 2005-02-02 | Sony Uk Ltd | Access control for digital storage medium content |
US7366302B2 (en) * | 2003-08-25 | 2008-04-29 | Sony Corporation | Apparatus and method for an iterative cryptographic block |
EP1519530A1 (en) * | 2003-09-29 | 2005-03-30 | STMicroelectronics S.r.l. | Method for establishing an encrypted communication by means of keys |
US20050091496A1 (en) * | 2003-10-23 | 2005-04-28 | Hyser Chris D. | Method and system for distributed key management in a secure boot environment |
US7996671B2 (en) * | 2003-11-17 | 2011-08-09 | Bluerisc Inc. | Security of program executables and microprocessors based on compiler-architecture interaction |
EP1688816A4 (en) * | 2003-11-28 | 2012-04-25 | Panasonic Corp | DATA PROCESSING DEVICE |
KR100982515B1 (ko) * | 2004-01-08 | 2010-09-16 | 삼성전자주식회사 | 해시 체인을 이용하여 디지털 컨텐츠의 접근 횟수를제한하는 장치 및 방법 |
US7607025B1 (en) * | 2004-02-26 | 2009-10-20 | Xilinx, Inc. | Methods of intrusion detection and prevention in secure programmable logic devices |
US20050210014A1 (en) * | 2004-03-08 | 2005-09-22 | Sony Corporation | Information-processing method, decryption method, information-processing apparatus and computer program |
US20050213751A1 (en) * | 2004-03-26 | 2005-09-29 | Apostolopoulos John J | Methods and systems for generating transcodable encrypted content |
JP2005286959A (ja) * | 2004-03-31 | 2005-10-13 | Sony Corp | 情報処理方法、復号処理方法、および情報処理装置、並びにコンピュータ・プログラム |
EP1870814B1 (en) * | 2006-06-19 | 2014-08-13 | Texas Instruments France | Method and apparatus for secure demand paging for processor devices |
US7483906B2 (en) * | 2004-04-14 | 2009-01-27 | Microsoft Corporation | Method and system for renaming consecutive keys in a B-tree |
JP4664358B2 (ja) * | 2004-05-12 | 2011-04-06 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 安全なブロードキャストのための鍵管理メッセージ |
US9244979B2 (en) * | 2004-07-02 | 2016-01-26 | Oracle International Corporation | Determining predicate selectivity in query costing |
US20060021066A1 (en) * | 2004-07-26 | 2006-01-26 | Ray Clayton | Data encryption system and method |
US20120115455A1 (en) * | 2004-07-26 | 2012-05-10 | Bindu Rama Rao | Secure bootstrap provisioning of electronic devices in carrier networks |
US20060036627A1 (en) * | 2004-08-06 | 2006-02-16 | Roger Deran | Method and apparatus for a restartable hash in a trie |
US8750522B2 (en) * | 2004-08-26 | 2014-06-10 | Deutsche Telekom Ag | Method and security system for the secure and unequivocal encoding of a security module |
US20060059344A1 (en) * | 2004-09-10 | 2006-03-16 | Nokia Corporation | Service authentication |
US8332653B2 (en) * | 2004-10-22 | 2012-12-11 | Broadcom Corporation | Secure processing environment |
KR100727387B1 (ko) * | 2004-10-22 | 2007-06-12 | 삼성전자주식회사 | 네트워크 시스템에서의 키 관리방법 |
JP4794269B2 (ja) * | 2004-11-08 | 2011-10-19 | パナソニック株式会社 | セキュアデバイスおよび中継端末 |
JP4496061B2 (ja) * | 2004-11-11 | 2010-07-07 | パナソニック株式会社 | 機密情報処理装置 |
US7987356B2 (en) * | 2004-11-29 | 2011-07-26 | Broadcom Corporation | Programmable security platform |
US20060242067A1 (en) * | 2004-12-21 | 2006-10-26 | Fabrice Jogand-Coulomb | System for creating control structure for versatile content control |
US8051052B2 (en) * | 2004-12-21 | 2011-11-01 | Sandisk Technologies Inc. | Method for creating control structure for versatile content control |
KR101167751B1 (ko) * | 2005-01-12 | 2012-07-23 | 브리티쉬 텔리커뮤니케이션즈 파블릭 리미티드 캄퍼니 | Rfid 트랜스폰더 보안 시스템 및 그 방법 |
US7689602B1 (en) * | 2005-07-20 | 2010-03-30 | Bakbone Software, Inc. | Method of creating hierarchical indices for a distributed object system |
US8190895B2 (en) * | 2005-08-18 | 2012-05-29 | Microsoft Corporation | Authenticated key exchange with derived ephemeral keys |
KR20080058462A (ko) * | 2005-11-04 | 2008-06-25 | 닛본 덴끼 가부시끼가이샤 | 메시지 인증 장치, 메시지 인증 방법, 메시지 인증 프로그램을 기록한 매체 |
US8332649B2 (en) * | 2005-11-08 | 2012-12-11 | Panasonic Corporation | Authentication system, signature creating device, and signature verifying device |
US20070174362A1 (en) * | 2006-01-18 | 2007-07-26 | Duc Pham | System and methods for secure digital data archiving and access auditing |
JP4770494B2 (ja) * | 2006-02-03 | 2011-09-14 | 株式会社日立製作所 | 暗号通信方法およびシステム |
JP4795812B2 (ja) * | 2006-02-22 | 2011-10-19 | 富士通セミコンダクター株式会社 | セキュアプロセッサ |
US7706538B1 (en) * | 2006-04-14 | 2010-04-27 | Oracle America, Inc. | System, method and data storage device for encrypting data |
US7339400B1 (en) | 2006-06-09 | 2008-03-04 | Xilinx, Inc. | Interface port for electrically programmed fuses in a programmable logic device |
US7424398B2 (en) * | 2006-06-22 | 2008-09-09 | Lexmark International, Inc. | Boot validation system and method |
US8086850B2 (en) * | 2006-06-23 | 2011-12-27 | Honeywell International Inc. | Secure group communication among wireless devices with distributed trust |
US8261068B1 (en) * | 2008-09-30 | 2012-09-04 | Emc Corporation | Systems and methods for selective encryption of operating system metadata for host-based encryption of data at rest on a logical unit |
JP4950195B2 (ja) * | 2006-07-03 | 2012-06-13 | パナソニック株式会社 | 証明装置、検証装置、検証システム、コンピュータプログラム及び集積回路 |
EP2040411B1 (en) * | 2006-07-27 | 2017-01-18 | Intertrust Technologies Corporation | Terminal device, server device, and content distribution system |
JP4179563B2 (ja) * | 2006-09-21 | 2008-11-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 暗号通信の暗号鍵を管理する技術 |
IL178488A0 (en) * | 2006-10-05 | 2008-01-20 | Nds Ltd | Improved key production system |
US8683212B2 (en) * | 2006-10-06 | 2014-03-25 | Broadcom Corporation | Method and system for securely loading code in a security processor |
KR101377455B1 (ko) * | 2006-10-09 | 2014-04-02 | 삼성전자주식회사 | 브로드캐스트 암호화를 위한 암호화 키 생성 방법 및 장치 |
US8769275B2 (en) * | 2006-10-17 | 2014-07-01 | Verifone, Inc. | Batch settlement transactions system and method |
KR101213160B1 (ko) * | 2006-11-16 | 2012-12-17 | 삼성전자주식회사 | 그룹 키 업데이트 방법 및 이를 이용한 그룹 키 업데이트장치 |
US20080172562A1 (en) * | 2007-01-12 | 2008-07-17 | Christian Cachin | Encryption and authentication of data and for decryption and verification of authenticity of data |
EP2120227B1 (en) * | 2007-01-19 | 2015-04-15 | Mitsubishi Electric Corporation | Cryptogram generating device, cryptogram communication system, and group parameter generating device |
US20080263363A1 (en) | 2007-01-22 | 2008-10-23 | Spyrus, Inc. | Portable Data Encryption Device with Configurable Security Functionality and Method for File Encryption |
KR101405915B1 (ko) * | 2007-04-26 | 2014-06-12 | 삼성전자주식회사 | 데이터의 암호화 저장 방법 및 암호화된 데이터의 판독방법 |
US7876895B2 (en) * | 2007-05-09 | 2011-01-25 | International Business Machines Corporation | System, method, and service for performing unified broadcast encryption and traitor tracing for digital content |
KR100938262B1 (ko) * | 2007-07-18 | 2010-01-22 | 한국전자통신연구원 | 비밀키 사전분배 방법 |
US8355982B2 (en) * | 2007-08-16 | 2013-01-15 | Verifone, Inc. | Metrics systems and methods for token transactions |
JP5053013B2 (ja) * | 2007-09-25 | 2012-10-17 | 京セラ株式会社 | 受信装置、およびストリーム送信装置 |
JP2009145544A (ja) | 2007-12-13 | 2009-07-02 | Panasonic Corp | プラズマディスプレイ装置 |
FR2926382B1 (fr) * | 2008-01-11 | 2010-02-26 | Proton World Internat Nv | Hierarchisation de cles cryptographiques dans un circuit electronique |
JP5525133B2 (ja) | 2008-01-17 | 2014-06-18 | 株式会社日立製作所 | デジタル署名及び認証のためのシステム及び方法 |
JP4658150B2 (ja) * | 2008-01-25 | 2011-03-23 | Nttエレクトロニクス株式会社 | 暗号化方法および復号方法 |
US9729316B2 (en) * | 2008-02-27 | 2017-08-08 | International Business Machines Corporation | Unified broadcast encryption system |
KR101526584B1 (ko) | 2008-04-04 | 2015-06-09 | 삼성전자주식회사 | 통신 시스템에서 암호화 키를 이용한 방송 서비스 방법 및 장치 |
KR101485460B1 (ko) * | 2008-06-09 | 2015-01-23 | 삼성전자주식회사 | 브로드캐스트 암호화에서 디바이스 키를 추적하는 방법 |
US20090327741A1 (en) * | 2008-06-30 | 2009-12-31 | Zimmer Vincent J | System and method to secure boot uefi firmware and uefi-aware operating systems on a mobile internet device (mid) |
FR2935078B1 (fr) | 2008-08-12 | 2012-11-16 | Groupe Des Ecoles De Telecommunications Get Ecole Nationale Superieure Des Telecommunications Enst | Procede de protection du decryptage des fichiers de configuration de circuits logiques programmables et circuit mettant en oeuvre le procede |
US8595504B2 (en) * | 2008-08-12 | 2013-11-26 | Industrial Technology Research Institute | Light weight authentication and secret retrieval |
US7986158B2 (en) | 2008-08-21 | 2011-07-26 | OFID Microdevices, Inc. | Methods, apparatuses, and products for a secure circuit |
US8368517B2 (en) * | 2008-08-22 | 2013-02-05 | Hong Kong R&D Centre for Logistics and Supply Chain Management Enabling Technologies Limited | RFID privacy-preserving authentication system and method |
US9559842B2 (en) * | 2008-09-30 | 2017-01-31 | Hewlett Packard Enterprise Development Lp | Trusted key management for virtualized platforms |
JP5457363B2 (ja) * | 2008-10-10 | 2014-04-02 | パナソニック株式会社 | 情報処理装置、認証システム、認証装置、情報処理方法、情報処理プログラム、記録媒体及び集積回路 |
US8095800B2 (en) | 2008-11-20 | 2012-01-10 | General Dynamics C4 System, Inc. | Secure configuration of programmable logic device |
US8359480B2 (en) * | 2008-12-19 | 2013-01-22 | University Of Washington | Scalable RFID systems: a privacy preserving protocol with constant-time identification |
US8190892B2 (en) * | 2008-12-29 | 2012-05-29 | King Fahd University Of Petroleum & Minerals | Message authentication code with blind factorization and randomization |
US20100169658A1 (en) * | 2008-12-30 | 2010-07-01 | Lahouari Ghouti | Elliptic curve-based message authentication code |
US8738932B2 (en) * | 2009-01-16 | 2014-05-27 | Teleputers, Llc | System and method for processor-based security |
KR101062995B1 (ko) * | 2009-01-19 | 2011-09-07 | 충남대학교산학협력단 | Scada 시스템 통신 환경에 효율적인 키 관리 방법 |
US8280056B2 (en) * | 2009-01-29 | 2012-10-02 | Fortress Applications Ltd. | System and methods for encryption with authentication integrity |
US9112862B2 (en) * | 2009-02-02 | 2015-08-18 | Adobe Systems Incorporated | System and method for parts-based digital rights management |
US20120099948A1 (en) | 2010-10-21 | 2012-04-26 | Digi-Star, LLC, a Wisconsin Limited Liability Company | Automatic start / stop controls for agricultural load and transfer equipment |
US8194858B2 (en) * | 2009-02-19 | 2012-06-05 | Physical Optics Corporation | Chaotic cipher system and method for secure communication |
CN102396251B (zh) * | 2009-04-15 | 2015-06-24 | 交互数字专利控股公司 | 对与网络通信的设备的确认和/或认证 |
US20100278338A1 (en) * | 2009-05-04 | 2010-11-04 | Mediatek Singapore Pte. Ltd. | Coding device and method with reconfigurable and scalable encryption/decryption modules |
EP2462507B1 (en) * | 2009-08-04 | 2019-07-24 | Carnegie Mellon University | Methods and apparatuses for user-verifiable trusted path in the presence of malware |
WO2011034456A1 (en) * | 2009-09-16 | 2011-03-24 | Lsi Corporation | Hash processing using a processor with a plurality of arithmetic logic units |
US8615085B2 (en) * | 2009-09-29 | 2013-12-24 | Zamtec Ltd | Encrypted communication system with limited number of stored encryption key retrievals |
US9094195B2 (en) * | 2009-10-02 | 2015-07-28 | Andrew LEPPARD | Protecting de-duplication repositories against a malicious attack |
EP2497057A1 (en) * | 2009-11-06 | 2012-09-12 | Emue Holdings Pty Ltd | A method and a system for validating identifiers |
CN102725737B (zh) * | 2009-12-04 | 2016-04-20 | 密码研究公司 | 可验证防泄漏的加密和解密 |
US8261085B1 (en) | 2011-06-22 | 2012-09-04 | Media Patents, S.L. | Methods, apparatus and systems to improve security in computer systems |
US9552493B2 (en) * | 2015-02-03 | 2017-01-24 | Palo Alto Research Center Incorporated | Access control framework for information centric networking |
-
2010
- 2010-12-02 CN CN201080060319.3A patent/CN102725737B/zh active Active
- 2010-12-02 JP JP2012542196A patent/JP5552541B2/ja active Active
- 2010-12-02 KR KR1020127014536A patent/KR101714108B1/ko active IP Right Grant
- 2010-12-02 WO PCT/US2010/058768 patent/WO2011068996A1/en active Application Filing
- 2010-12-02 EP EP19164962.3A patent/EP3537653B1/en active Active
- 2010-12-02 EP EP10835139.6A patent/EP2507708B1/en active Active
- 2010-12-02 US US12/958,570 patent/US8386800B2/en active Active
- 2010-12-03 TW TW099142160A patent/TWI440351B/zh active
-
2012
- 2012-05-21 IL IL219906A patent/IL219906A/en active IP Right Grant
-
2013
- 2013-02-08 US US13/762,703 patent/US8707052B2/en active Active
-
2014
- 2014-03-07 US US14/201,539 patent/US8977864B2/en active Active
- 2014-03-27 JP JP2014065462A patent/JP5805249B2/ja active Active
-
2015
- 2015-02-09 US US14/617,437 patent/US9569623B2/en active Active
- 2015-06-11 US US14/737,154 patent/US9576133B2/en active Active
- 2015-06-26 US US14/752,677 patent/US9367693B2/en active Active
-
2016
- 2016-12-30 US US15/395,809 patent/US10262141B2/en active Active
-
2017
- 2017-08-30 US US15/691,601 patent/US9940463B2/en active Active
-
2019
- 2019-01-04 US US16/240,671 patent/US11074349B2/en active Active
-
2021
- 2021-07-21 US US17/382,333 patent/US11797683B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI689828B (zh) * | 2017-10-31 | 2020-04-01 | 香港商阿里巴巴集團服務有限公司 | 資料統計方法和裝置 |
TWI806577B (zh) * | 2022-04-28 | 2023-06-21 | 瑞昱半導體股份有限公司 | 數位簽章方法及數位簽章的驗證方法 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI440351B (zh) | 可檢驗的、對洩漏有抵抗性的加密與解密 | |
US10482291B2 (en) | Secure field-programmable gate array (FPGA) architecture | |
Guajardo et al. | Physical unclonable functions and public-key crypto for FPGA IP protection | |
Yu et al. | A lockdown technique to prevent machine learning on PUFs for lightweight authentication | |
Checkoway et al. | A systematic analysis of the Juniper Dual EC incident | |
JP6366595B2 (ja) | 耐グリッチ性暗号離散対数ベースの署名のための方法及びシステム | |
Gebotys | Security in embedded devices | |
CN110855667A (zh) | 一种区块链加密方法、装置及系统 | |
CN112907375A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
Kirkpatrick et al. | Enforcing physically restricted access control for remote data | |
Fischlin et al. | Verifiable Verification in Cryptographic Protocols | |
Garay et al. | MAC precomputation with applications to secure memory |