关于ATSHA204a的使用流程
ATSHA204含有一個EEPROM? 和 一個 SRAM
EEPROM :包含
1個 Data Zone(512Bytes)? :一般用來存儲密鑰的
1個 configration Zone(88Bytes)? :
用來設置Data區(qū)中的數(shù)據(jù)使用的方法:
1)作為密鑰使用 還是簡單的數(shù)據(jù),作為密鑰是否可讀可寫???? 是明文讀寫 還是 加密讀寫?? 使用的次數(shù)
2)存儲有9位的芯片唯一序列號
3)對OTP區(qū)的使用模式
3)configration Zone?? 和 Data Zone 鎖住的控的控制位
1個OTP Zone
ATSHA204在使用:
首先,要對配置區(qū)進行配置目的:規(guī)定好密鑰的使用方式和存儲地點,和最后驗證的MAC的方式
然后,然后將密鑰寫入Data區(qū)中指定的位置
最后,通過官方提供的庫里面的MAC驗證命令,進行密鑰的驗證
各個區(qū)的配置條件:
官方提供的庫里面有一個執(zhí)行各種命令的函數(shù):
uint8_t sha204m_execute(uint8_t op_code,? uint8_t param1,???? uint16_t param2,
?? ??? ??? ??? ? ? ? ? ?? ??? ? ? ? ? ?? uint8_t datalen1 , uint8_t *data1,???? uint8_t datalen2, uint8_t *data2, uint8_t datalen3, uint8_t *data3,??
?? ??? ??? ??? ??? ??? ? ? ?? ? ? ? ? ?? uint8_t tx_size,? uint8_t *tx_buffer, uint8_t rx_size, uint8_t *rx_buffer)
以下參數(shù)的具體值? 需要參看數(shù)據(jù)手冊沒有 明確的介紹
uint8_t op_code:命令碼?????????????????? uint8_t param1? :命令對應的第一個參數(shù)???????? uint16_t param2:命令對應的第二個參數(shù)
?? uint8_t datalen1 , uint8_t *data1 :完成命令需要發(fā)送的數(shù)據(jù) 長度?? 和指向數(shù)據(jù)的指針??? 沒有 可以 填寫 0x00 , 0x00
? uint8_t datalen2 , uint8_t *data2 :完成命令需要發(fā)送的數(shù)據(jù) 長度?? 和指向數(shù)據(jù)的指針??? 沒有 可以 填寫 0x00 , 0x00
? uint8_t datalen3 , uint8_t *data3:完成命令需要發(fā)送的數(shù)據(jù) 長度?? 和指向數(shù)據(jù)的指針??? 沒有 可以 填寫 0x00 , 0x00
uint8_t tx_size,? uint8_t *tx_buffer :需要發(fā)送數(shù)據(jù)的長度? 和指向數(shù)據(jù)的指針? 以上參數(shù)的集合
uint8_t rx_size, uint8_t *rx_buffer:命令執(zhí)行完,返回的數(shù)據(jù)
配置流程:
注意: 芯片開始工作前要喚醒,并且延時至少2.5ms后, 芯片才能開始工作
????? 芯片的config區(qū)和data區(qū)一旦鎖定,沒有辦法解鎖
第一步
在Configration Zone 進行配置,(詳細的說明參看配置說明,這里只對代碼進行說明)
通過對16個slotx_configration 區(qū)寫入 0x80,0x80,
<配置數(shù)據(jù)說明詳見 atsha204配置 和 配置說明兩個文檔>
將Data Zone配置成存儲密鑰,密????????? 鑰不可讀寫
第二步,?? 往Data Zone 寫入密鑰
注意: 在Configration Zone 鎖定后,才能對Data Zone進行讀寫操作
data區(qū)一旦鎖定,沒有辦法解鎖
密鑰驗證流程:
注意: 芯片開始工作前要喚醒,并且延時至少2.5ms后, 芯片才能開始工作
主控MCU通過RNG寄存去 讓MCU產生20字節(jié)的隨機數(shù),
MCU判斷digest1和digest2是否匹配,不匹配將程序掛起即可
?
關于配置可以參考博客:https://blog.csdn.net/a5882230/article/details/52214845
關于使用可以參考博客:https://blog.csdn.net/u013216061/article/details/79159682
關于MAC校驗可以參考博客:https://www.cnblogs.com/hjw91blog/articles/7918802.html
總結
以上是生活随笔為你收集整理的关于ATSHA204a的使用流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 白盒测试及其基本方法
- 下一篇: C++版本OpenCv教程(四十三)直线