杰發科技AC7840——CSE硬件加密模塊使用(2)

注意:

不要隨便修改主秘鑰,本次跑代碼過程中,對主秘鑰進行修改,導致無法對cse模塊恢復出廠設置

更新秘鑰例程

第2個例程主要是把cse的key加載到cse安全區域中

這里剛看到加載秘鑰并不是直接把明文加載到cse模塊

測試第3個例程

復位之后異常,查看說明是更新失敗,說明這個代碼只能更新一次

重新燒錄后,異常一樣,說明燒錄不影響秘鑰加載

再刷一遍第2個例程后重新刷更新秘鑰代碼

沒有變化,秘鑰只能更新一次?

刷了恢復出廠的代碼之后再刷更新秘鑰的代碼

刷加載秘鑰的代碼

刷完加載秘鑰的再刷更新秘鑰的

后面我們會帶著問題來進行分析,為什么更新會失敗


隨機數的生成

從下圖可以看出,加載Key不是直接簡單的load就可以

CSE_DRV_InitRNG();; 初始化RNG

沒有對RNG進行操作,看樣子是用指令初始化了偽隨機數生成器

CSE_DRV_GenerateRND(RNG); 初始化RND

生成了一個128bit的隨機數

調用的RNG是個空的值

然后把偽隨機數寫到RNG里面

用指令把RNG讀出來

CSE_DRV_ExtendSeed(RNG); 擴展RNG

用之前的隨機數擴展成隨機數種子

CSE_DRV_GenerateRND(RNG); 再計算RND

最后把二次生成的隨機數讀出來,這個作為真隨機數使用(這個作為真隨機數,實際上通過算法生成的,應該也是偽隨機數)

再看看PRNG和RNG的區別

第一次加載秘鑰

從這個圖里面看出來,最終計算結果是M4/M5。

請教了大佬,第一個和最后三個是固定的key

通過空白秘鑰來計算M1-M5

通過計算的M1-M5來加載主密鑰CSE_MASTER_ECU

通過這個數據看到其實只是把數組放進去計算???

通過剩下兩個對比,說明確實是把數組放在里面做了計算

秘鑰的計算

再看下秘鑰計算過程

用KeyID去計算M1

用第一個數組去計算M2

用M1和M2來計算M3

CBC計算M4

計算M5

對秘鑰的理解

再返回秘鑰管理看看

更新秘鑰

上面的例程沒更新成功

通過以上的學習再試試更新秘鑰

期間對主秘鑰進行修改過,后面的更新秘鑰都失敗了,恢復出廠設置也不生效。

換一塊開發板之后先加載秘鑰

進行更新,更新時候需要counter++,2的28次方個,uint32_t范圍可以隨便設置,如果在不知道是多少的情況下往大設置即可。

加載失敗

恢復出廠,成功

在出廠狀態更新,報錯405,秘鑰空,符合狀況

重新初始化

失敗

修改為2之后更新成功

仔細檢查是秘鑰ID寫錯,改為11之后更新成功

因此可以確定,更新秘鑰就是修改這幾個數據即可,實際上就是重新加載秘鑰

ECB計算

調用接口即可

CBC計算

一樣的調用接口即可

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/82877.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/82877.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/82877.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

淺解Vue 數據可視化開發建議與速度優化

數據可視化在現代前端應用中至關重要,但處理大規模數據時容易遇到性能瓶頸。以下是針對 Vue 項目的個人看法的優化方案: 文章目錄 一、框架選型建議二、大數據渲染優化三、渲染性能提升四、內存管理五、監控與調試六、進階優化方案七、Vue特定優化八、構…

lua腳本學習筆記1:Vscode添加lua環境_lua基本語法

下載Lua環境,lua語言基本語法。 目錄 lua介紹: VsCode添加Lua編程環境 下載Lua 配置環境變量 查詢lua環境 打開 VSCode,安裝 Lua 語言插件和調試器 VScode增添lua編譯器路徑 測試lua程序: 代碼: 結果: 參考…

Nordic nRF52832使用寄存器實現SPI功能

目錄 概述 1 SPI相關的寄存器 1.1 SPI的框架結構 1.2 功能描述 1.3 SPI Master模式引腳配置 1.4 SPI Master模式下的時序 2 SPI相關的寄存器 2.1 Instances 2.2 詳細寄存器定義 2.3 SPI master interface特性 3 Zephyr 平臺下SPI功能時序(寄存器&#xf…

【Python辦公】將Excel表格轉json(字典)數據-可自定義key和value

目錄 專欄導讀背景介紹庫的安裝數據源準備代碼1:key1列,value所有列代碼1:key多列,value所有列代碼3:key自選,value自選總結專欄導讀 ?? 歡迎來到Python辦公自動化專欄—Python處理辦公問題,解放您的雙手 ?????? 博客主頁:請點擊——> 一晌小貪歡的博客主頁求關…

DexWild:野外機器人策略的靈巧人機交互

25年5月來自 CMU 的論文“DexWild: Dexterous Human Interactions for In-the-Wild Robot Policies”。 大規模、多樣化的機器人數據集已成為將靈巧操作策略泛化到新環境的一條有效途徑,但獲取此類數據集面臨諸多挑戰。雖然遙操作可以提供高保真度的數據集&#xf…

[藍帽杯 2022 初賽]網站取證_2

一、找到與數據庫有關系的PHP文件 打開內容如下,發現數據庫密碼是函數my_encrypt()返回的結果。 二、在文件夾encrypt中找到encrypt.php,內容如下,其中mcrypt已不再使用,所以使用php>7版本可能沒有執行結果,需要換成較低版本…

星海掘金:校園極客的Token詩篇(藍耘MaaS平臺)——從數據塵埃到智能生命的煉金秘錄

hi,我是云邊有個稻草人 目錄 前言 一、初識藍耘元生代MaaS平臺:零門檻體驗AI服務 1.1 從零開始——平臺注冊與環境搭建 1.2 平臺核心功能 1.3 藍耘平臺的優勢在哪里? 二、知識庫構建新篇章:從零碎資料到智能語義倉庫的蛻變…

nt!MmMapViewInSystemCache函數分析PointerPte的填充

第一部分: 1: kd> kc # 00 nt!MmMapViewInSystemCache 01 nt!CcGetVacbMiss 02 nt!CcGetVirtualAddress 03 nt!CcMapData 04 Ntfs!NtfsMapStream 05 Ntfs!NtfsReadBootSector 06 Ntfs!NtfsMountVolume 07 Ntfs!NtfsCommonFileSystemControl 08 Ntfs!NtfsFspDis…

Tailwind CSS 實戰,基于Kooboo構建AI對話框頁面(一)

在當今數字化時代,AI 助手已成為網站和應用不可或缺的一部分。本文將帶你一步步使用 Tailwind CSS 和 Kooboo 構建一個現代化的 AI 對話界面框。 一、選擇 Kooboo平臺 的核心優勢 智能提示:在輸入 class 屬性時,會自動觸發 Tailwind CSS 規則…

【JavaEE】-- 網絡原理

文章目錄 1. 網絡發展史1.1 廣域網1.2 局域網 2. 網絡通信基礎2.1 IP地址2.2 端口號2.3 認識協議2.4 五元組2.5 協議分層2.5.1 分層的作用2.5.2 OSI七層模型(教科書)2.5.3 TCP/IP五層(或四層)模型(工業中常用&#xff…

UVa1384/LA3700 Interesting Yang Hui Triangle

UVa1384/LA3700 Interesting Yang Hui Triangle 題目鏈接題意分析AC 代碼 題目鏈接 本題是2006年icpc亞洲區域賽上海賽區的題目 題意 給出素數P和整數N&#xff0c;求楊輝三角第N1行中不能整除P的數有幾個&#xff0c; P < 1000 , N ≤ 10 9 P<1000,\;N≤10^9 P<1000…

文件系統與文件管理:從磁盤到內核的全鏈路解析

一、文件系統&#xff1a;磁盤的 “數據管家” 1.1 硬盤物理結構&#xff1a;數據存儲的硬件基礎 硬盤如同一個多層書架&#xff0c;由以下核心部件構成&#xff1a; 盤片&#xff1a;多層磁性圓盤&#xff0c;正反兩面覆蓋磁性涂層&#xff0c;用于存儲二進制數據&#xff…

HTML5 Canvas 星空戰機游戲開發全解析

HTML5 Canvas 星空戰機游戲開發全解析 一、游戲介紹 這是一款基于HTML5 Canvas開發的2D射擊游戲&#xff0c;具有以下特色功能&#xff1a; &#x1f680; 純代碼繪制的星空動態背景?? 三種不同特性的敵人類型&#x1f3ae; 鍵盤控制的玩家戰機&#x1f4ca; 完整的分數統…

Telegram平臺分發其聊天機器人Grok

每周跟蹤AI熱點新聞動向和震撼發展 想要探索生成式人工智能的前沿進展嗎&#xff1f;訂閱我們的簡報&#xff0c;深入解析最新的技術突破、實際應用案例和未來的趨勢。與全球數同行一同&#xff0c;從行業內部的深度分析和實用指南中受益。不要錯過這個機會&#xff0c;成為AI領…

【GlobalMapper精品教程】095:如何獲取無人機照片的拍攝方位角

文章目錄 一、加載無人機照片二、計算方位角三、Globalmapper符號化顯示方向四、arcgis符號化顯示方向一、加載無人機照片 打開軟件,加載無人機照片,在GLobalmapperV26中文版中,默認顯示如下的航線信息。 關于航線的起止問題,可以直接從照片名稱來確定。 二、計算方位角 …

SpringBoot使用ffmpeg實現視頻壓縮

ffmpeg簡介 FFmpeg 是一個開源的跨平臺多媒體處理工具集&#xff0c;用于錄制、轉換、編輯和流式傳輸音頻和視頻。它功能強大&#xff0c;支持幾乎所有常見的音視頻格式&#xff0c;是多媒體處理領域的核心工具之一。 官方文檔&#xff1a;https://ffmpeg.org/documentation.h…

OpenCv高階(十九)——dlib關鍵點定位

文章目錄 一、什么是人臉關鍵點定位&#xff1f;二、關鍵點模型的下載及關鍵信息的理解三、dlib關鍵點定位的簡單實現&#xff08;1&#xff09;導入必要的庫&#xff08;2&#xff09;從指定路徑讀取圖像文件&#xff08;3&#xff09;創建dlib的正面人臉檢測器對象&#xff0…

人工智能100問?第36問:什么是BERT?

目錄 一、通俗解釋 二、專業解析 三、權威參考 BERT是基于Transformer Encoder的雙向語言預訓練模型,具備強大的語義理解能力,是現代自然語言處理的重要基石。它是一套讓機器像人一樣“前后一起看”的語言理解技術,它讓AI不光“讀得快”,還“讀得懂”。現在很多搜索引擎…

Chrome/ Edge 瀏覽器彈出窗口隱藏菜單地址欄

Chrome 利用快捷方式&#xff0c;打開一個無地址欄的瀏覽器窗口&#xff0c;以百度為例 創建瀏覽器快捷方式&#xff0c;在目標欄里 添加 -apphttps://www.baidu.com 點擊【應用】&#xff0c;【確定】按鈕保存生效。后面通過空上快捷方式打開的瀏覽器沒有地址欄。 Edge瀏覽…

計算機網絡常見體系結構、分層必要性、分層設計思想以及專用術語介紹

計算機網絡體系結構 從本此開始&#xff0c;我們就要開始介紹有關計算機網絡體系結構的知識了。內容包括&#xff1a; 常見的計算機網絡體系結構 計算機網絡體系結構分層的必要性 計算機網絡體系結構的設計思想 舉例說明及專用術語 計算機網絡體系結構是計算機網絡課程中…