RTL Anti-Tampering Design 第十一課:Reset、時鐘、CDC 與生命週期
重置解除不是一個全晶片同時發生的瞬間。安全許可若跨時鐘域或早於啟動檢查,就可能在系統「看起來已經開機」時先被使用。
HARDWARE SECURITY
從密碼演算法、硬體架構到 RTL 實作,整理硬體安全的核心觀念。
四條學習路線
路線依學習目標區分;漫畫與一般小教室是教材形式,不是不同的安全領域。

先理解雜湊、加密、身分與安全通道,再選擇要用的機制。
適合先建立安全觀念的讀者。
選這條路線 →
從晶片身分與金鑰儲存,追蹤開機、遠端證明與更新的信任鏈。
適合晶片架構與系統設計者。
選這條路線 →
從韌體摘要與感測器加密開始,安排資料路徑及交付規則,再檢查結果被改動後是否會造成錯誤放行。
適合具備暫存器、位元運算與同步 RTL 基礎的讀者。先選 SHA-256 或 AES,再依序閱讀防竄改第 1~3 課。
選這條路線 →
把設計宣稱接到評估證據、驗證範圍與產品生命週期責任。
適合技術主管與產品團隊。
選這條路線 →重置解除不是一個全晶片同時發生的瞬間。安全許可若跨時鐘域或早於啟動檢查,就可能在系統「看起來已經開機」時先被使用。
簽章有效只證明某把信任金鑰簽過這些位元;它不自動證明版本可接受、量測的是即將執行的映像,或金鑰會在正確 lifecycle 釋出。
控制路徑拒絕錯誤輸出,不等於密碼實作沒有資訊洩漏。DFA 利用正確與故障輸出的差異;SIFA 以故障後仍輸出正確結果的樣本為條件,分析中間值的統計偏差。
共 38 課
重置解除不是一個全晶片同時發生的瞬間。安全許可若跨時鐘域或早於啟動檢查,就可能在系統「看起來已經開機」時先被使用。
簽章有效只證明某把信任金鑰簽過這些位元;它不自動證明版本可接受、量測的是即將執行的映像,或金鑰會在正確 lifecycle 釋出。
控制路徑拒絕錯誤輸出,不等於密碼實作沒有資訊洩漏。DFA 利用正確與故障輸出的差異;SIFA 以故障後仍輸出正確結果的樣本為條件,分析中間值的統計偏差。
一份 fault campaign 是可重播的實驗規格,不是隨機翻幾個 bit 後報一個百分比。它必須記錄設計版本、注入目標、時點、效果、預算、判準與無法模擬之處。
模擬器的故障目標只有在能對上實體現象時才有工程意義。校準不是把 RTL 參數調到「像成功」,而是用可追溯量測評估 target、時窗、效果、重現性與未知差異。
安全結論要能回答:保護什麼、假設哪些故障、哪些邊界已驗、哪些反例仍成立,以及未知項在哪裡。證據包的目的不是堆報表,而是讓另一位工程師能重跑並指出結論邊界。
延續第三課,失敗映像仍不能取得取指許可。這次驗證器改送四個位元。接收端必須決定,十六種組合中哪一種代表放行。編碼器與接收端的判讀方式,都會影響結果。
三份驗證結果投票決定是否放行失敗映像。一份副本出錯,可能被其他兩份蓋過。但共用輸入先變錯,三份都可能投贊成票。數副本之前,先畫出共用部分。
控制器必須完成四筆傳輸,才交出結果。正數計數器已到四,倒數計數器也到零,兩者相加仍是四。但真正只完成三筆。共用 enable 讓兩份計數一起提早前進。
控制器正在檢查未授權映像。六位元狀態從 CHECK 變成 RELEASE,授權卻沒有完成。新碼字合法,狀態解碼器認得它,也因此開閘。本課先算哪些替換能造成這個結果。
CHECK→RELEASE 是合法轉移,但故障改掉了選路條件。另一個請求拿交易 1 的 token,來放行交易 2。兩種請求都可能看起來合乎結構。本課追每次接受事件應具備的證據。
軟體把組態寫兩次。Shadow 比較器看到相符,便提交更新。若兩次都是同一錯值,協定仍會成功。本課分開檢查更新一致性,以及是否有權選這個值。
接收端在 edge 2 接受錯誤請求。Sticky 之後記下異常,系統更晚才 reset。Alert 確實工作,卻無法撤回已接受的請求。本課把偵測與回應放到接受緣旁邊。
先用驗證失敗卻被放行的例子,理解 parity、互補編碼與錯誤修正碼。配合六張電路圖、可重跑練習與 Wrap-up,檢查保護範圍及阻擋時機。
從同一個取指放行電路,比較暫時的 Q 端擾動、持續的儲存狀態翻轉與上游判斷錯誤。用電路圖、RTL 與 42 個可重跑案例,把故障位置、時機、預算、可信邊界及觀察期限寫清楚。
從 Secure Boot 的一個放行旗標,學會定義故障模型、追蹤 register 與 FSM 的授權路徑,並用 accepted commit 性質檢查防護是否來得及。附 RTL、SVA、雙語圖解與可執行練習。
從免費遊戲、自製軟體與平台商的商業動機開始,逐步拆解 PS4、Xbox 360、PS3、3DS 與 Switch 的公開安全案例,再理解 Secure Boot、sandbox、TEE 和 SoC 記憶體隔離各自能解決什麼問題。
從遊戲展的一個疑問出發,說明早期 Mega Drive、PS1、PS2 的媒體辨識與防拷機制,拆解駭客如何跨越不同信任邊界,也區分互通性、保存、自製程式、盜版與惡意攻擊。
從更新授權、設備相容性與防回退,走到斷電安全安裝、試開機、簽署金鑰輪替和復原策略。
從工廠閘道器申請連線開始,循序理解 Secure Boot、Measured Boot 與 Remote Attestation 如何分工,並看懂 TPM/PCR 證據能證明什麼、不能證明什麼。
從研究 SoC 的資料外洩案例,逐步理解 DEK、KEK、HUK、使用授權、輪替、撤銷、復原與密碼抹除。12 張漫畫搭配完整講義、工程延伸與 26 項可重跑的教學測試。
給第一次設計雜湊 IP 的電機系與研究所學生:先看簡明 TOP view,再從 padding、W 排程、64 輪資料路徑走到跨區塊累積、FSM、握手與逐拍驗證。
從敵意網路上的實驗報告出發,用十二張漫畫串起 TLS 1.3 的金鑰協議、憑證、Finished、AEAD,以及權限、前向保密與重放邊界。
從一把陌生公鑰出發,十二張漫畫帶你打開 X.509 憑證、走完信任鏈,再理解 TLS 私鑰證明、有效期限、撤銷與裝置 PKI。
一張維修通知,從冒名、金額被改到公鑰驗證;十二張漫畫帶你理解數位簽章如何運作,以及驗證成功後還要檢查什麼。
從駭客為什麼偷換 Boot Code 開始,十二張漫畫一路拆解 Reset、信任起點、雜湊、數位簽章、防回滾、失敗處理與可信 Recovery。
不從協定縮寫開始,而是沿著 ECC 的誕生、橢圓曲線、點加法、Galois Field 與離散對數,一步步看懂私鑰為什麼是數字、公鑰為什麼是點。
從門外的鑰匙、HUK 與 Key Storage 出發,一路走到可信開機、安全儲存、內外部信任與完整 HRoT;用十二張漫畫看懂硬體信任根真正負責什麼。
從 Alice 怎麼安全交出第一把鑰匙說起,循著質數、餘數時鐘、費馬與歐拉的循環,一步步手算 RSA 的 7→13→7,再回到公鑰身分與金鑰交換。
八張漫畫從日常的公開金鑰鎖開始,分清 RSA 質因數分解、ECC 離散對數、Shor 的週期線索,以及今天真正需要準備的後量子密碼遷移。
用十張漫畫拆解 SHA:從雜湊值、三大抗性與生日悖論,一路談到 SHA-1 退場,以及 SHA 在軟硬體安全中的實際用途。
用 12 張漫畫把 Credential 說清楚:它不是答案本身,而是讓系統相信你主張的證明。從密碼、Passkey、私鑰、公鑰、憑證、Token、Session,到 Device Identity 與 Attestation,一次分清楚證明、驗證、授權與保護。
這篇把歐盟 CRA 當成產品上市前的資安檢查表:先看哪些產品會被管,再看 2026 通報、產品分級、Annex I 要求、符合性評估與 CE 證據怎麼串在一起。
這篇先說清楚:碳粉匣安全不是一顆小晶片的小事,而是耗材營收、仿冒風險與供應鏈信任的問題。十張漫畫會從攻擊手法、PKI 認證,一路講到為什麼需要 PUF 與 Secure Storage。
這篇把 FIPS 140-3 當成密碼模組的安檢制度:先看它驗的是什麼,再用 Level 1、2、3 理解封裝、防拆、金鑰保護與半導體安全設計的差異。
從 SoC 研究資料的保護問題出發,十三張漫畫與完整講義帶你理解 PUF 物理來源、SRAM 重建、NeoPUF 形成與讀取,再接到 DEK/KEK 金鑰封裝、HUK 用途衍生及系統復原。
這篇先把 AES 講成一套固定的加密工法:資料被切成區塊,經過一輪一輪的替換、搬移、混合與加鑰,最後變成外人看不懂的密文。讀完會知道 AES 為什麼仍是保護大量資料的核心工具。
這篇把 AES-128 RTL 當成硬體施工圖來讀:先看資料怎麼進出,再看 Round 控制、FSM、S-box 與 MixColumns,讓初學者知道每個模組在整條加密路線裡負責什麼。