TWI820434B - 參數檢查系統及參數檢查方法 - Google Patents
參數檢查系統及參數檢查方法 Download PDFInfo
- Publication number
- TWI820434B TWI820434B TW110122036A TW110122036A TWI820434B TW I820434 B TWI820434 B TW I820434B TW 110122036 A TW110122036 A TW 110122036A TW 110122036 A TW110122036 A TW 110122036A TW I820434 B TWI820434 B TW I820434B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- algorithm
- parameters
- initial
- check
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000007689 inspection Methods 0.000 title description 6
- 208000011580 syndromic disease Diseases 0.000 claims abstract description 13
- 238000012795 verification Methods 0.000 claims abstract description 7
- 125000004122 cyclic group Chemical group 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 3
- 239000013078 crystal Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000010453 quartz Substances 0.000 description 1
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
Images
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/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/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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/72—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 cryptographic circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- 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/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Storage Device Security (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Collating Specific Patterns (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Electrotherapy Devices (AREA)
- Ultra Sonic Daignosis Equipment (AREA)
- Transplanting Machines (AREA)
Abstract
一種參數檢查方法,包含:藉由一處理器將複數個初始參數代入一資料完整性演算法,以取得一查核資料(syndrome data);以及藉由一硬體加密器將對應此些初始參數的複數個運算參數依據資料完整性演算法計算出一運算結果;其中,當處理器判斷該查核資料與運算結果並非相同,則輸出一駭客攻擊訊息,代表此些運算參數至少之一者遭受竄改。
Description
本發明是關於一種檢查系統及檢查方法,特別是關於一種參數檢查系統及參數檢查方法。
在資安領域中,電壓毛刺攻擊(Voltage Glitch attacks)是通過快速改變輸入到晶片的電壓,使得晶片裡的某些晶體管受到影響,引起一或多個輸出值錯誤,從而導致處理器會跳過或操作錯誤,也因此使得晶片內隱藏的資訊隨著處理器發生的錯誤而洩露出來。此外,除了電壓毛刺攻擊之外,仍有許多的攻擊法試圖取得加密的機密資料。
因此,如何偵測加解密系統被電壓毛刺攻擊法干擾運算參數,已成為本領域需解決的問題之一。
為了解決上述的問題,本揭露內容之一態樣提供了一種參數檢查系統包含:一處理器以及一硬體加密器。一處理器將複數個初始參數代入一資料完整性演算法,以取得一查核資料(syndrome data)。一硬體加密器將對應此些初始參數的複數個運算參數依據資料完整性演算法計算出一運算結果;其中,當處理器判斷查核資料與運算結果並非相同,則輸出一駭客攻擊訊息,代表此些運算參數至少之一者遭受竄改。
於一實施例中,資料完整性演算法為一同位元檢查演算法、一循環冗餘校驗(Cyclic Redundancy Check,CRC)演算法、一訊息摘要演算法(Message-Digest Algorithm)或一分組加密(Block cipher)演算法。
於一實施例中,此些初始參數包含一初始明文來源位址、一初始金鑰、一初始密文目的位址及該資料完整性演算法;其中,此些運算參數包含一待運算明文來源位址、一加密金鑰、一輸出密文目的位址及該資料完整性演算法。
於一實施例中,當處理器判斷查核資料與運算結果相同,則輸出一正常運作訊息,代表此些運算參數皆正確。
於一實施例中,處理器執行一初始化查核程式,該初始化查核程式接收該些初始參數,並將該些參數代入該資料完整性演算法,以取得該查核資料。
為了解決上述的問題,本揭露內容之另一態樣提供了一種參數檢查方法,包含:藉由一處理器將複數個初始參數代入一資料完整性演算法,以取得一查核資料(syndrome data);以及藉由一硬體加密器將對應此些初始參數的複數個運算參數依據資料完整性演算法計算出一運算結果;其中,當處理器判斷該查核資料與運算結果並非相同,則輸出一駭客攻擊訊息,代表此些運算參數至少之一者遭受竄改。
於一實施例中,資料完整性演算法為一同位元檢查演算法、一循環冗餘校驗(Cyclic Redundancy Check,CRC)演算法、一訊息摘要演算法(Message-Digest Algorithm)或一分組加密(Block cipher)演算法。此些初始參數包含一初始明文來源位址、一初始金鑰、一初始密文目的位址及該資料完整性演算法;其中,該些運算參數包含一待運算明文來源位址、一加密金鑰、一輸出密文目的位址及該資料完整性演算法。
於一實施例中,其中當處理器判斷該查核資料與該運算結果相同,則輸出一正常運作訊息,代表該些運算參數皆正確。
於一實施例中,當處理器判斷查核資料與運算結果相同,則輸出一正常運作訊息,代表此些運算參數皆正確。
於一實施例中,參數檢查方法藉由該處理器執行一初始化查核程式,該初始化查核程式接收該些初始參數,並將該些參數代入該資料完整性演算法,以取得該查核資料。
由上述可知,藉由本案的參數檢查方法及參數檢查系統,透過比對依據正確的初始參數(由處理器執行初始化查核程式生成)所產生的查核資料與依據加密時使用的運算參數所產生的運算結果(由硬體加密器生成),可以由軟體與硬體各自針對的初始參數與運算參數的計算結果,以確認加密時使用的每個運算參數都是否正確。若運算結果與查核資料不同,則處理器可以發出一通知,讓系統自動進一步偵測壞損的資料、停止外部存取功能以阻擋駭客及/或通知使用者查閱出錯的參數,以達到維持參數完整性與正確性的效果。
以下說明係為完成發明的較佳實現方式,其目的在於描述本發明的基本精神,但並不用以限定本發明。實際的發明內容必須參考之後的權利要求範圍。
必須了解的是,使用於本說明書中的”包含”、”包括”等詞,係用以表示存在特定的技術特徵、數值、方法步驟、作業處理、元件以及/或組件,但並不排除可加上更多的技術特徵、數值、方法步驟、作業處理、元件、組件,或以上的任意組合。
於權利要求中使用如”第一”、"第二"、"第三"等詞係用來修飾權利要求中的元件,並非用來表示之間具有優先權順序,先行關係,或者是一個元件先於另一個元件,或者是執行方法步驟時的時間先後順序,僅用來區別具有相同名字的元件。
在一些加解密演算法(例如,進階加密標準(Advanced Encryption Standard,AES)演算法)的步驟中,存在被駭客取得金鑰的漏洞,例如駭客可以透過電壓毛刺攻擊法(Voltage Glitch attacks)或其他攻擊法進行一系列的數學推演,以獲得用以加密的金鑰、來源位址及/或目標位址…等參數,以破解加密過程。下述以第1~2圖解釋電壓毛刺攻擊法。
請參照第1~2圖,第1圖係依照本發明一實施例繪示一種電壓毛刺攻擊法的電源供應狀態之示意圖。第2圖係依照本發明一實施例繪示一種電壓毛刺攻擊法之示意圖。
如第2圖所示,微控制器40中的處理器核心44可以耦接一儲存裝置46,例如為處理器核心的記憶體、處理器核心的暫存器。處理器核心44可以並將加密資料儲存於儲存裝置46中,處理器核心44也可將運算到一半的暫時結果儲存到儲存裝置46中。
在第2圖的例子中,當駭客欲攻擊微控制器40中所儲存的加密資料時,會將電壓毛刺產生器30接到微控制器40中的處理器核心44,線路VDDCORE代表提供給處理器核心44的電壓,線路GND代表接地,另外由一外部電壓3.3伏特提供給調壓器42,調壓器42用以輸出穩定的電壓給處理器核心44。
如第1圖所示,其橫軸為時間(單位為奈秒,nanosecond(ns)),縱軸為電源供應(單位可以是伏特),電壓毛刺產生器30可以在很短的時間區間t(例如2ns)內產生電壓毛刺(Voltage Glitch),經過線路VDDCORE傳送給處理器核心44,例如,電壓毛刺產生器30快速的拉低電壓又立刻回復到正常電壓。
如第2圖所示,由於每個邏輯閘或元件在運作時都有固定的工作電壓,若破壞工作電壓(例如透過電壓毛刺破壞工作電壓),則會使邏輯閘或元件的運算產生錯誤。例如,電壓毛刺短暫地破壞處理器核心44的工作電壓後,會使處理器核心44運算錯誤。本領域具通常知識者應能理解,第3圖中的處理器核心44僅為一例,亦可以是其他一般的邏輯閘或元件,其他邏輯閘或元件被破壞工作電壓時,亦會造成運算錯誤。
於一實施例中,駭客的攻擊方法有許多種,例如壓毛刺攻擊法、外部高能量電磁波產生器干擾運算 、石英晶體(crystal)影響時脈頻率(例如加入凸波)。其中,電壓毛刺攻擊法,可能會使得指令執行順序被干擾;此外,電子元件的工作電壓是固定的,記憶體中的資料存取可能因為駭客攻擊而出錯;另外,邏輯運算或算過程中的資料被干擾,也可能使加解密運算輸出錯誤答案;再者,因為有些指令被跳過或資料被破壞,處理器核心44無法正確填寫儲存裝置46(例如以控制暫存器實現之),例如,當待加密的原始資料放在控制暫存器46的位址1000,但被駭客的攻擊方法改成位址3000,則處理器核心44讀取資料時,會到位址3000讀取到錯誤的資料。
因此,需要透過參數檢查方法及參數檢查系統,確認加密過程中的每個運算參數都是正確的。
請參照第3~4圖,第3圖係依照本發明一實施例繪示一種參數檢查系統100之示意圖。第4圖係依照本發明一實施例繪示一種參數檢查方法200之示意圖。
於第3圖中,參數檢查系統100包含處理器10及硬體加密器20。
於一實施例中,處理器10可以由體積電路如微控制單元(micro controller)、微處理器(microprocessor)、數位訊號處理器(digital signal processor)、特殊應用積體電路(application specific integrated circuit,ASIC)或一邏輯電路來實施。
於一實施例中,硬體加密器20可以是一種硬體亂碼化設備。於一實施例中,硬體加密器20可以由一安全加密引擎(crypto engine)實現之。
於一實施例中,第4圖所示的參數檢查方法200可以由參數檢查系統100實現之。
於步驟210中,處理器10將多個初始參數代入一資料完整性演算法,以取得一查核資料。
於一實施例中,資料完整性演算法為一同位元檢查演算法、一循環冗餘校驗(Cyclic Redundancy Check,CRC)演算法、一訊息摘要演算法(Message-Digest Algorithm)或一分組加密(Block cipher)演算法。
於一實施例中,在檢查資料完整性時,必須選擇一種資料完整性演算法來進行資料完整性檢查。例如,採用循環冗餘校驗算法(Cyclic Redundant Check 4,CRC4),以下以一個簡單的CRC4演算法為例:例如選擇原始多項式 X5 + X4 + 1 作為 CRC4 演算法的生成多項式(generator polynomial)。如果我們用X5+X4+1來檢查一字節輸入資料“11100110”(即輸入參數),那麼剩下的就是0110(X2+X)。這個餘下的X2+X稱為綜合症資料(syndrome data),可用於檢查輸入參數 “11100110”是否已損壞。如果資料完整性演算法的軟體要求進行高級加密標準密碼區塊連結(Advanced Encryption Standard Cipher-block chaining,AES CBC)加密計算,那麼硬體加密器20將根據明確定義的序列級聯所有必需的參數(例如,初始向量、對稱密鑰、源資料地址、目標緩衝區地址及資料長度)和執行CRC4計算檢查。如果計算結果與校正子資料相同,則所有參數都正確。如果計算結果與綜合症資料不同,則說明微控制器40受到了故障注入的攻擊。硬體加密器20可以通知既有的安全防禦軟體(例如PC-cillin、卡巴斯基(Kaspersky )、賽門鐵克(Symantec)…等安全軟體)採取相關操作來移除惡意軟件或關閉系統以進行保護。
於一實施例中,CRC4演算法具有容易避免綜合症碰撞攻擊(syndrome collision attack)的特性。因此,資料完整性演算法中可以加入安全散列演算法(Secure Hash Algorithm,SHA)來做資料完整性演算法的消息摘要。 因此,如果我們使用SHA-256 進行資料完整性檢查算法,那麼資料完整性演算法的軟體需要級聯所需的參數並進行SHA-256計算以生成256 位校驗子資料。 因此,在加密/解密計算之前,加密引擎需要執行相同的 SHA-256 計算並將結果與綜合症資料進行比較。遵循檢查資料完整性的一系列檢查,足以證明硬體加密器20可以保護加密/解密計算免受故障注入攻擊。
於一實施例中,硬體加密器20也可以使用 AES CBC模式進行資料完整性檢查。輸入資料是此加密/解密所需參數的級聯結果。如果級聯資料不是128位元(區塊大小),則可以填充“0”以達到 128位元。資料完整性演算法的軟體可以使用預先定義的初始向量和密鑰進行AES CBC計算,並計算出的128位元密碼結果作為校驗子資料。硬體加密器20 需要遵循相同的定義來計算AES CBC 模式加密,並最後使用128位元的校驗子資料進行資料完整性檢查。
於一實施例中,初始參數包含一初始明文來源位址、一初始金鑰、一初始密文目的位址及資料完整性演算法。
於一實施例中,處理器10執行一初始化查核程式,初始化查核程式接收此些初始參數,並將此些參數代入資料完整性演算法,以取得查核資料。
於步驟220中,硬體加密器20用以將對應此些初始參數的複數個運算參數依據資料完整性演算法計算出一運算結果。
於一實施例中,運算參數包含一待運算明文來源位址、一加密金鑰、一輸出密文目的位址及資料完整性演算法。
於一實施例中,運算參數中的資料完整性演算法與初始參數中的資料完整性演算法相同,例如,初始參數中的資料完整性演算法採用同位元檢查演算法,運算參數中的資料完整性演算法也必須採用相同的同位元檢查演算法。
於步驟230中,處理器10判斷查核資料與運算結果是否相同。若處理器10判斷查核資料與運算結果相同,則進入步驟240。若處理器10判斷查核資料與運算結果不相同,則進入步驟250。
例如,假設要進行AES的加密運算需要4個word(即32位元)的運算,一般而言,AES的加密運算可以使用更多位元,為方便說明,此處以32位元為例子。另外,假設初始參數中的初始明文來源位址、初始金鑰、初始密文目的位址每個都是32位元,處理器10將此些參數代入同位元檢查演算法,此處的同位元檢查演算法例如為將初始明文來源位址、初始金鑰、初始密文目的位址依序做XOR運算(例如式子表示為:初始明文來源位址XOR初始金鑰XOR初始密文目的位址),以得到查核資料。另一方面,假設運算參數中的待運算明文來源位址、加密金鑰、輸出密文目的位址每個都是32位元,硬體加密器20將此些參數代入同位元檢查演算法,此處的同位元檢查演算法與前述處理初始參數的方式相同,即,硬體加密器20將待運算明文來源位址、加密金鑰、輸出密文目的位址依序做XOR運算(例如式子表示為:運算明文來源位址XOR加密金鑰XOR輸出密文目的位址),以得到運算結果。
於一實施例,在正常情況下,AES的加密運算的初始明文來源位址、初始金鑰、初始密文目的位址是固定的,因此,處理器10判斷查核資料(由處理器10執行初始化查核程式生成)與運算結果(由硬體加密器20生成)是否相同,可得知運算參數是否有異。
換言之,一開始由軟體生成的查核資料應該與以硬體生成的運算參數相同,才是代表上述各參數皆未被竄改的正常情況。
於步驟240中,處理器10輸出一正常運作訊息,代表此些運算參數皆正確。
於步驟250中,處理器10輸出一駭客攻擊訊息,代表此些運算參數至少之一者遭受竄改。
於一實施例中,處理器10輸出一駭客攻擊訊息,用以代表駭客竄改了此些運算參數至少之一者。於一實施例中,處理器10可以發出一通知,讓系統自動進一步偵測壞損的資料(例如比對每個初始參數與對應的每個運算參數)、停止外部存取功能,以阻擋駭客,及/或通知使用者查閱出錯的參數。
由上述可知,藉由本案的參數檢查方法及參數檢查系統,透過比對依據正確的初始參數(由處理器執行初始化查核程式生成)所產生的查核資料與依據加密時使用的運算參數所產生的運算結果(由硬體加密器生成),可以由軟體與硬體各自針對的初始參數與運算參數的計算結果,以確認加密時使用的每個運算參數都是否正確。若運算結果與查核資料不同,則處理器可以發出一通知,讓系統自動進一步偵測壞損的資料、停止外部存取功能以阻擋駭客及/或通知使用者查閱出錯的參數,以達到維持參數完整性與正確性的效果。
t:時間區間
30:電壓毛刺產生器
VDDCORE:線路
GND:線路
42:調壓器
44:處理器核心
46:儲存裝置
100:參數檢查系統
10:處理器
20:硬體加密器
200:參數檢查方法
210~250:步驟
第1圖係依照本發明一實施例繪示一種電壓毛刺攻擊法的電源供應狀態之示意圖。
第2圖係依照本發明一實施例繪示一種電壓毛刺攻擊法之示意圖。
第3圖係依照本發明一實施例繪示一種參數檢查系統之示意圖。
第4圖係依照本發明一實施例繪示一種參數檢查方法之示意圖。
200:參數檢查方法
210~250:步驟
Claims (6)
- 一種參數檢查系統,包含:一處理器,用以將複數個初始參數代入一資料完整性演算法,以取得一查核資料(syndrome data);以及一硬體加密器,用以將對應該些初始參數的複數個運算參數依據該資料完整性演算法計算出一運算結果;其中,當該處理器判斷該查核資料與該運算結果並非相同,則輸出一駭客攻擊訊息,代表該些運算參數至少之一者遭受竄改;其中當該處理器輸出該駭客攻擊訊息後,偵測壞損的資料並停止外部存取功能;其中該處理器執行一初始化查核程式,該初始化查核程式接收該些初始參數,並將該些初始參數代入該資料完整性演算法,以取得該查核資料;其中,該些初始參數包含一初始明文來源位址、一初始金鑰、一初始密文目的位址及該資料完整性演算法;其中,該些運算參數包含一待運算明文來源位址、一加密金鑰、一輸出密文目的位址及該資料完整性演算法。
- 如請求項1之參數檢查系統,其中該資料完整性演算法為一同位元檢查演算法、一循環冗餘校驗(Cyclic Redundancy Check,CRC)演算法、一訊息摘要演算法(Message-Digest Algorithm)或一分組加密(Block cipher)演算法。
- 如請求項1之參數檢查系統,其中當該處理器判斷 該查核資料與該運算結果相同,則輸出一正常運作訊息,代表該些運算參數皆正確。
- 一種參數檢查方法,包含:藉由一處理器將複數個初始參數代入一資料完整性演算法,以取得一查核資料(syndrome data);以及藉由一硬體加密器將對應該些初始參數的複數個運算參數依據該資料完整性演算法計算出一運算結果;其中,當該處理器判斷該查核資料與該運算結果並非相同,則輸出一駭客攻擊訊息,代表該些運算參數至少之一者遭受竄改;其中當該處理器輸出該駭客攻擊訊息後,偵測壞損的資料並停止外部存取功能;藉由該處理器執行一初始化查核程式,該初始化查核程式接收該些初始參數,並將該些初始參數代入該資料完整性演算法,以取得該查核資料;其中,該些初始參數包含一初始明文來源位址、一初始金鑰、一初始密文目的位址及該資料完整性演算法;其中,該些運算參數包含一待運算明文來源位址、一加密金鑰、一輸出密文目的位址及該資料完整性演算法。
- 如請求項4之參數檢查方法,其中該資料完整性演算法為一同位元檢查演算法、一循環冗餘校驗(Cyclic Redundancy Check,CRC)演算法、一訊息摘要演算法(Message-Digest Algorithm)或一分組加密(Block cipher)演算法。
- 如請求項4之參數檢查方法,更包含: 當該處理器判斷該查核資料與該運算結果相同,則輸出一正常運作訊息,代表該些運算參數皆正確。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110122036A TWI820434B (zh) | 2021-06-17 | 2021-06-17 | 參數檢查系統及參數檢查方法 |
US17/564,528 US11841944B2 (en) | 2021-06-17 | 2021-12-29 | Parameter checking system and parameter checking method |
CN202210132961.2A CN115495799A (zh) | 2021-06-17 | 2022-02-14 | 参数检查系统及参数检查方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110122036A TWI820434B (zh) | 2021-06-17 | 2021-06-17 | 參數檢查系統及參數檢查方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202301164A TW202301164A (zh) | 2023-01-01 |
TWI820434B true TWI820434B (zh) | 2023-11-01 |
Family
ID=84464206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110122036A TWI820434B (zh) | 2021-06-17 | 2021-06-17 | 參數檢查系統及參數檢查方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11841944B2 (zh) |
CN (1) | CN115495799A (zh) |
TW (1) | TWI820434B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI797554B (zh) * | 2021-02-05 | 2023-04-01 | 新唐科技股份有限公司 | 系統單晶片及控制方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8261062B2 (en) * | 2003-03-27 | 2012-09-04 | Microsoft Corporation | Non-cryptographic addressing |
CN102625939B (zh) * | 2009-07-10 | 2017-02-22 | 塞尔蒂卡姆公司 | 用于管理电子资产的系统和方法 |
TWI584152B (zh) * | 2012-04-27 | 2017-05-21 | 恩智浦股份有限公司 | 用於電腦安全的系統及其方法 |
EP3525126A1 (en) * | 2018-02-09 | 2019-08-14 | Siemens Aktiengesellschaft | Firmware integrity test |
TWI690165B (zh) * | 2019-05-22 | 2020-04-01 | 旺宏電子股份有限公司 | 數據完整性檢查的方法與積體電路 |
TWI727551B (zh) * | 2019-12-13 | 2021-05-11 | 中華電信股份有限公司 | 健康資訊去識別化及查詢處理之方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8037530B1 (en) * | 2000-08-28 | 2011-10-11 | Verizon Corporate Services Group Inc. | Method and apparatus for providing adaptive self-synchronized dynamic address translation as an intrusion detection sensor |
RU2010110344A (ru) | 2010-03-18 | 2011-09-27 | ЭлЭсАй Корпорейшн (US) | Криптографическая обработка с использованием процессора |
US9660803B2 (en) | 2015-09-15 | 2017-05-23 | Global Risk Advisors | Device and method for resonant cryptography |
CN112422272B (zh) | 2019-08-20 | 2022-10-21 | 深圳市航顺芯片技术研发有限公司 | 一种防功耗攻击的aes加密方法及电路 |
-
2021
- 2021-06-17 TW TW110122036A patent/TWI820434B/zh active
- 2021-12-29 US US17/564,528 patent/US11841944B2/en active Active
-
2022
- 2022-02-14 CN CN202210132961.2A patent/CN115495799A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8261062B2 (en) * | 2003-03-27 | 2012-09-04 | Microsoft Corporation | Non-cryptographic addressing |
CN102625939B (zh) * | 2009-07-10 | 2017-02-22 | 塞尔蒂卡姆公司 | 用于管理电子资产的系统和方法 |
TWI584152B (zh) * | 2012-04-27 | 2017-05-21 | 恩智浦股份有限公司 | 用於電腦安全的系統及其方法 |
EP3525126A1 (en) * | 2018-02-09 | 2019-08-14 | Siemens Aktiengesellschaft | Firmware integrity test |
TWI690165B (zh) * | 2019-05-22 | 2020-04-01 | 旺宏電子股份有限公司 | 數據完整性檢查的方法與積體電路 |
TWI727551B (zh) * | 2019-12-13 | 2021-05-11 | 中華電信股份有限公司 | 健康資訊去識別化及查詢處理之方法 |
Also Published As
Publication number | Publication date |
---|---|
US20220405388A1 (en) | 2022-12-22 |
CN115495799A (zh) | 2022-12-20 |
TW202301164A (zh) | 2023-01-01 |
US11841944B2 (en) | 2023-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11232718B2 (en) | Methods and devices for protecting data | |
TWI450232B (zh) | 可規劃加密裝置及加密方法 | |
US11151290B2 (en) | Tamper-resistant component networks | |
Elbaz et al. | Tec-tree: A low-cost, parallelizable tree for efficient defense against memory replay attacks | |
JPH10154976A (ja) | タンパーフリー装置 | |
US20170141912A1 (en) | Method for protecting a computer system from side-channel attacks | |
US11461476B2 (en) | Method for executing a binary code of a function secured by a microprocessor | |
TWI820434B (zh) | 參數檢查系統及參數檢查方法 | |
Ender et al. | A cautionary note on protecting xilinx’ultrascale (+) bitstream encryption and authentication engine | |
US20100054460A1 (en) | Protection of a ciphering algorithm | |
US20150039905A1 (en) | System for processing an encrypted instruction stream in hardware | |
US12015693B2 (en) | Information security protection system and information security protection method | |
Ulz et al. | Towards trustworthy data in networked control systems: A hardware-based approach | |
Oboril et al. | A-SOFT-AES: Self-adaptive software-implemented fault-tolerance for AES | |
TWI608381B (zh) | 加解密裝置及其功率分析防禦方法 | |
EP3930254A1 (en) | Method for setting permissions for cryptographic keys, computer program and cryptographic processing system | |
WO2022176164A1 (ja) | プログラム処理装置、プログラム処理方法、及び、プログラム | |
US20240169098A1 (en) | Secure Chip-Wide Transmission | |
US20230177154A1 (en) | Sparse Encodings for Control Signals | |
Bousselam et al. | Fault detection in crypto-devices | |
Tan et al. | A High-security Configuration Circuit Design for SoPC | |
Martín-Valencia et al. | FPGA-based mimicking of cryptographic device hacking through fault injection attacks | |
WO2023143696A1 (en) | Apparatus and method for memory integrity verification | |
CN110321737A (zh) | 一种数据加密标准协处理器防注入式攻击的方法 | |
JPH0244390A (ja) | 暗号化処理方法およびその方法を用いたicカード装置 |