0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RA8D1加密引擎功能體驗(yàn)和實(shí)踐

RA生態(tài)工作室 ? 2024-11-23 01:01 ? 次閱讀

作者:sx


01 資料準(zhǔn)備

01Security Key Management Tool用戶手冊

RA8D1產(chǎn)品頁面https://www.renesas.com/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ra8d1-480-mhz-arm-cortex-m85-based-graphics-microcontroller-helium-and-trustzoneDocumentation條目可以找到并下載到《Security Key Management Tool User’s Manual》,文檔鏈接:https://www.renesas.com/en/document/mat/security-key-management-tool-users-manual

wKgZoWdD9ceAZUvgAADHYQCtZyk460.png

02Security Key Management Tool安裝程序

閱讀文檔可知,瑞薩提供的工具名為Security Key Management Tool,可以在官網(wǎng)首頁搜索Security Key Management Tool。

wKgZoWdD9ceAE_xYAADCpE8e3vg163.png

進(jìn)入Security Key Management Tool主頁,在Downloads類目可找到:

wKgaoWdD9ceAK2mMAAEUSpEUl8I662.png

為了方便使用,本次使用了Security Key Management Tool V1.07 for Windows,點(diǎn)擊鏈接即可下載。下載完執(zhí)行安裝即可。安裝完打開此工具,點(diǎn)擊菜單欄“幫助”->關(guān)于Security Key Management Tool,在彈出的“幫助-安全密鑰管理工具”下找到“打開用戶手冊”按鈕,可以找到第一步所述的用戶手冊,中文版本 。

wKgZoWdD9ceASqd-AAHMfGt29FQ080.png

wKgaoWdD9ceAaYIhAAKqWfECrE4310.png

03其他文檔和鏈接

3.1Renesas DLM在線服務(wù)系統(tǒng)

在Security Key Management Tool生成UFPK(用戶工廠燒錄密鑰)后,界面提示需要登錄Renesas密鑰封裝服務(wù)頁面:

https://dlm.renesas.com/keywrap/

首次使用需要注冊->交換GPG key,具體過程在下一步FAQ中獲取的Manual有詳細(xì)描述,由于是首次使用,在這一步花了些時間。

注冊并登錄后可以通過FAQ->“Is there a manual of this system?”獲取系統(tǒng)使用幫助。

wKgaoWdD9ceAFeUmAADAO7e0_84784.png

具體鏈接:https: // dlm. renesas. com/ manual/ KeyWrap_ Service_ Operation_ Manual. pdf

3.2基于RA芯片的應(yīng)用手冊《Injecting and Updating Secure User Keys》和示例代碼

https://www.renesas.com/en/document/apn/injecting-and-updating-secure-user-keys-ra-family-application-project

wKgZoWdD9ceAcHt3AAFZ6p_bMkE429.png

關(guān)于RA系列產(chǎn)品SCE操作模式

https://www.renesas.com/en/document/apn/secure-crypto-engine-operational-modes-application-note#:~:text=The+Secure+Crypto+Engine+9,Compatibility+Mode+and+Protected+Mode.

3.3基于RA芯片的應(yīng)用手冊《Injecting Plaintext User Keys》和示例代碼

https://www.renesas.com/en/document/apn/injecting-plaintext-user-keys-application-project?r=25456556

wKgZoWdD9ceABfUuAADksU9p0qg265.png

3.4FSP v5.0.0和FSP v5.5.0

FSP v5.0.0可配合上面2,3小節(jié)的Demo,無需更改調(diào)試配置;

FSP v5.5.0包含第二節(jié)所述例程,默認(rèn)安裝e2studio 2024.07版本會自動安裝好FSP v5.5.0,此種情況如果要增加v5.0.0可以下載FSP Pack v5.0.0進(jìn)行安裝。

RA8D1產(chǎn)品頁面FSP:

wKgaoWdD9ceAYVEJAAE3WDIr8B4436.png

FSP github路徑:

https://github.com/renesas/fsp/releases

wKgaoWdD9ceAQJTYAACAR5MYdOk731.png

4.5RA8D1官方例程

https://www.renesas.com/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ra8d1-480-mhz-arm-cortex-m85-based-graphics-microcontroller-helium-and-trustzone?sam_secondary=visible#design_development

wKgZoWdD9ceAZ65yAAEuNPJiAyU673.png

使用這里的示例"mbed_crypto_ek_ra8d1_ep"與所述前“Injecting and Updating Secure User Keys”基本相同。

也即,如前述應(yīng)用手冊對應(yīng)代碼未下載,直接用這個工程也可完成AES密鑰封裝驗(yàn)證。

02 準(zhǔn)備工作

01SKMT生成所需文件

1.1 打開Security Key Management Tool

wKgZoWdD9ceAX1wYAAGakCAXYrs049.png

設(shè)置如上圖UFPK值和存儲路徑,點(diǎn)擊“生成UFPK密鑰文件”。

? DLM官網(wǎng)生成W-UFPK

詳細(xì)步驟參考文檔《Injecting and Updating Secure User Keys》章節(jié):4. Wrapping the User Factory Programming Key Using the Renesas Key Wrap Service

? 封裝AES密鑰

詳細(xì)步驟參考文檔《Injecting and Updating Secure User Keys》章節(jié):6.1 Wrap an AES-128 User Key Using the UFPK for RSIP-E51A Compatibility Mode

wKgaoWdD9ceAPTpoAAI6DRbySew194.png

切換到密鑰數(shù)據(jù)文件選項(xiàng)卡,輸入明文密鑰:000102030405060708090a0b0c0d0e0f

wKgaoWdD9ciAHg21AAHlmQ9cwPU595.png

1.2DLM官網(wǎng)生成W-UFPK

詳細(xì)步驟參考文檔《Injecting and Updating Secure User Keys》章節(jié):4. Wrapping the User Factory Programming Key Using the Renesas Key Wrap Service。

1.3封裝AES密鑰

詳細(xì)步驟參考文檔《Injecting and Updating Secure User Keys》章節(jié):6.1 Wrap an AES-128 User Key Using the UFPK for RSIP-E51A Compatibility Mode。

圖片

切換到密鑰數(shù)據(jù)文件選項(xiàng)卡,輸入明文密鑰:000102030405060708090a0b0c0d0e0f。

1.4點(diǎn)擊生成文件按鈕

生成的封裝AES密鑰的結(jié)構(gòu)體數(shù)據(jù)。

const RA8M1_AES128_t g_RA8M1_AES128 = { /* uint32_t keytype; */ 0x00000005, /* uint32_t shared_key_number; */ 0x00000000, /* uint8_t wufpk[32]; */ { 0x6A, 0x7C, 0x31, 0xF9, 0xB8, 0x2E, 0x7B, 0xF5, 0xC5, 0xCE, 0x0F, 0x66, 0x14, 0xCE, 0x63, 0x4C, 0x6A, 0x7C, 0x31, 0xF9, 0xB8, 0x2E, 0x7B, 0xF5, 0xC5, 0xCE, 0x0F, 0x66, 0x14, 0xCE, 0x63, 0x4C }, /* uint8_t initial_vector[16]; */ { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F }, /* uint8_t encrypted_user_key[ENCRYPTED_KEY_BYTE_SIZE]; */ { 0xFD, 0xE4, 0xFB, 0xAE, 0x4A, 0x09, 0xE0, 0x20, 0xEF, 0xF7, 0x22, 0x96, 0x9F, 0x83, 0x83, 0x2B, 0x7A, 0xDF, 0x8A, 0x36, 0x63, 0xAE, 0x23, 0x54, 0xF5, 0x91, 0xC7, 0x03, 0x1B, 0x8A, 0x52, 0xB0 }, /* uint8_t crc[4]; */ { 0x43, 0x7F, 0x0D, 0x70 }, };

02使用外部AES計算工具計算后續(xù)調(diào)試過程的明文、IV、密文

百度搜索"AES在線加密"找到一個網(wǎng)頁:https://www.lddgo.net/encrypt/aes

wKgZoWdD9ciAYPAaAADzFTwJHrk683.png

除1、2、3、4外其他幾項(xiàng):

? 加密模式:CBC

? 填充:nopadding

? 密碼格式、偏移量格式、輸入格式、輸出格式:hex

點(diǎn)擊AES加密選項(xiàng)可知:

明文:

00000000000000000000000000000000

通過密鑰:

000102030405060708090a0b0c0d0e0f

加密為:

c6a13b37878f5b826f4f8162a1c8d879

03 調(diào)試和結(jié)果確認(rèn)

01 按3所述例程導(dǎo)入工程后生成代碼

wKgaoWdD9ciAK1giAAEFpBH_K4M374.png

02將準(zhǔn)備工作章節(jié)內(nèi)容替換成我們的測試密鑰和測試結(jié)果

wKgaoWdD9ciATVwDAAFGdGy4jSg780.png

03編譯和調(diào)試

wKgaoWdD9ciATVwDAAFGdGy4jSg780.png

這個設(shè)置比較重要,未設(shè)置正確的話后續(xù)程序會HardFault,需使用集成到e2studio IDE的Renesas Device Partition Manager執(zhí)行設(shè)備初始化。

wKgZoWdD9ciAPcLWAADso98bkKw769.png

具體過程:

? 選中“Initialize device back to factory default”

? 點(diǎn)擊Run

? 取消選中“Initialize device back to factory default”

? 點(diǎn)擊Run

? 確認(rèn)打印以下內(nèi)容:

Current status of the device

DLM state : Original Equipment Manufacturer (OEM)

Protection level (PL) : PL2

Authentication level (AL) : AL2

Secure/NSC memory partition size :

- Code Flash Secure (kB) : 16352

- Data Flash Secure (kB) : 63

END of current status of the device.

wKgZoWdD9ciAaBMeAAMWi5O1VwQ746.png

04跟蹤程序或者打開J-Link RTT viewer V7.96觀察程序的Trace輸出

wKgaoWdD9ciADb2xAAFXVIrlyhw487.png

if語句時進(jìn)入else表示與我們網(wǎng)頁計算結(jié)果相同,程序密文如圖調(diào)試結(jié)果顯示數(shù)組。

wKgZoWdD9ciAEiY2AADHpfjcjQI626.png

04 總結(jié)

本次實(shí)踐完成了RA8D1芯片AES密鑰封裝和芯片上加解密功能驗(yàn)證,后續(xù)可繼續(xù)RSA、ECC、哈希等功能進(jìn)行調(diào)試驗(yàn)證。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    455

    文章

    50792

    瀏覽量

    423495
  • 瑞薩
    +關(guān)注

    關(guān)注

    35

    文章

    22309

    瀏覽量

    86282
收藏 人收藏

    評論

    相關(guān)推薦

    RA8D1試用活動】RA8D1B-CPKCOR開發(fā)板移植linux

    RA8D1試用活動】RA8D1B-CPKCOR開發(fā)板移植linux
    的頭像 發(fā)表于 11-16 01:02 ?226次閱讀
    【<b class='flag-5'>RA8D1</b>試用活動】<b class='flag-5'>RA8D1</b>B-CPKCOR開發(fā)板移植linux

    【瑞薩RA8D1 CPK開發(fā)板】RA8D1移植ThreadX操作系統(tǒng)

    首先感謝[RA生態(tài)工作室](瑞薩 RA MCU 生態(tài)社區(qū))提供的瑞薩RA8D1 CPK開發(fā)板。 一、硬件介紹 瑞薩電子 RA8D1 MCU 系列是業(yè)界首款基于 Arm? Cortex?
    發(fā)表于 10-20 20:22

    【瑞薩RA8D1 CPK開發(fā)板試用】開箱與點(diǎn)燈

    安全加密、不帶操作系統(tǒng)的,因此需參考“RA8D1 Group User\'s Manual:Hardware_Rev.1.00 Aug 2023.pdf”文檔中的第四章節(jié)介紹,將下載地址改成不帶安全加密
    發(fā)表于 10-08 01:04

    基于Arm Cortex-CM85內(nèi)核的RA8D1作為控制器 通過MIPI DSI實(shí)現(xiàn)LVGL顯示

    方案使用了瑞薩電子新一代基于Arm Cortex-CM85內(nèi)核的RA8D1作為控制器,通過MIPI驅(qū)動程序和2D引擎加速顯示,方案使用了適用于GUI的流行且免費(fèi)的LVGL,創(chuàng)建了具有視覺吸引力的用戶顯示界面。
    的頭像 發(fā)表于 06-07 15:20 ?1967次閱讀
    基于Arm Cortex-CM85內(nèi)核的<b class='flag-5'>RA8D1</b>作為控制器 通過MIPI DSI實(shí)現(xiàn)LVGL顯示

    基于瑞薩電子RA系列的野火耀陽RA8D1開發(fā)板產(chǎn)品簡介

    野火耀陽RA8D1開發(fā)板是一款功能強(qiáng)大的開發(fā)板,適用于各種嵌入式應(yīng)用開發(fā)。它采用瑞薩電子的RA系列R7FA8D1BHECBD微控制器作為主控,具有高性能和低功耗的特點(diǎn)。
    的頭像 發(fā)表于 05-29 14:19 ?828次閱讀
    基于瑞薩電子<b class='flag-5'>RA</b>系列的野火耀陽<b class='flag-5'>RA8D1</b>開發(fā)板產(chǎn)品簡介

    RA8D1 Vision Board開發(fā)實(shí)踐指南》上線啦

    ),希望能夠給大家提供一些支持?!?b class='flag-5'>RA8VisionBoard開發(fā)實(shí)踐指南》詳細(xì)列出了各個內(nèi)容板塊及其貢獻(xiàn)者。在此,衷心感謝所有小伙伴的支持與貢獻(xiàn)!《RA8D1Vis
    的頭像 發(fā)表于 05-24 08:35 ?674次閱讀
    《<b class='flag-5'>RA8D1</b> Vision Board開發(fā)<b class='flag-5'>實(shí)踐</b>指南》上線啦

    【Vision Board創(chuàng)客營連載體驗(yàn)】RA8D1-Vision Board開箱使用

    Vision Board搭載全球首顆 480 MHz Arm Cortex-M85芯片RA8D1 :6.39 CoreMark/MHz,可以快速而高效地運(yùn)行機(jī)器視覺算法,實(shí)現(xiàn)圖像處理、等功能。包括
    發(fā)表于 04-27 21:34

    【Vision Board創(chuàng)客營連載體驗(yàn)】RA8D1 Vision Board Camera 初體驗(yàn)

    開發(fā)環(huán)境: RT-Thread Studio:v2.2.7 開發(fā)板:RA8D1 Vision Board開發(fā)板 MCU:R7FA8D1BHEC337AS02 1 硬件連接 Camera
    發(fā)表于 04-27 08:50

    【Vision Board創(chuàng)客營連載體驗(yàn)】RA8D1 Vision Board初體驗(yàn)

    1 RA8D1 Vision Board簡介 Vision-Board 開發(fā)板是 RT-Thread 推出基于瑞薩 Cortex-M85 架構(gòu) RA8D1 芯片,擁有Helium和TrustZone
    發(fā)表于 04-23 21:53

    RA8D1 Vision Board上的SPI loopback測試

    一、簡介 Vision-Board 開發(fā)板是 RT-Thread 推出基于瑞薩 Cortex-M85 架構(gòu) RA8D1 芯片,為工程師們提供了一個靈活、全面的開發(fā)平臺,助力開發(fā)者在機(jī)器視覺領(lǐng)域獲得
    的頭像 發(fā)表于 04-23 00:00 ?949次閱讀
    <b class='flag-5'>RA8D1</b> Vision Board上的SPI loopback測試

    【Vision Board創(chuàng)客營連載體驗(yàn)】RA8D1 Vision Board上的SPI實(shí)踐

    Vision-Board 開發(fā)板是 RT-Thread 推出基于瑞薩 Cortex-M85 架構(gòu) RA8D1 芯片,為工程師們提供了一個靈活、全面的開發(fā)平臺,助力開發(fā)者在機(jī)器視覺領(lǐng)域獲得更深
    發(fā)表于 04-22 23:56

    RA8D1_User’s Manual

    RA8D1_User’s Manual
    發(fā)表于 03-20 09:56 ?1次下載

    RA8D1_數(shù)據(jù)手冊

    RA8D1_數(shù)據(jù)手冊
    發(fā)表于 03-19 17:43 ?1次下載

    瑞薩RA8D1 CEU介紹與使用說明

    RA8D1 MCU集成了高性能CM85內(nèi)核和大內(nèi)存,以及豐富的外設(shè)集,包括帶并行RGB和MIPI-DSI接口的高分辨率TFT-LCD控制器、2D繪圖引擎、16位攝像頭接口和多個外部內(nèi)存接口,經(jīng)過優(yōu)化可滿足各種圖形和視覺AI應(yīng)用的
    的頭像 發(fā)表于 02-20 12:15 ?2444次閱讀
    瑞薩<b class='flag-5'>RA8D1</b> CEU介紹與使用說明

    RA8D1微控制器組評估套件快速入門指南

    電子發(fā)燒友網(wǎng)站提供《RA8D1微控制器組評估套件快速入門指南.pdf》資料免費(fèi)下載
    發(fā)表于 01-31 10:15 ?1次下載
    <b class='flag-5'>RA8D1</b>微控制器組評估套件快速入門指南