找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 1316|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

LCSHA204—EncryptRead命令解析

 關(guān)閉 [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
LCSHA204芯片是一款兼容ATMEL公司ATSHA204A的國(guó)產(chǎn)安全芯片,其操作方式與ATSHA204A相同,本次主要介紹芯片EncryptRead加密讀功能。只有當(dāng)slot config.EncryptRead = 1和slot config.IsSecret = 1時(shí)才能進(jìn)行。加密讀是為了防止別人在總線上嗅探到密鑰,這里我借用官方文檔Atmel-8981的一幅圖。

這個(gè)流程圖其實(shí)非常明了,主要步驟如下:



1、首先發(fā)送Nonce Command命令,更新TempKey中的值,主機(jī)這邊根據(jù)命令返回的randout來使用SHA-256算法計(jì)算出TempKey中的值。
2、發(fā)送GenDig Command,Gen Dig 命令中的參數(shù)KeyID ,就是slot config.ReadKey,比如說,我們要讀取slot1的密鑰,而slot config[0].ReadKey 設(shè)置為0,那么我們就需要知道slot0中存放的密鑰才能讀取slot1的密鑰,發(fā)送完這個(gè)命令后如果執(zhí)行正確,TempKey中的值會(huì)被重新計(jì)算,而主機(jī)需要根據(jù)Read Key等一些列參數(shù)計(jì)算TempKey中的值。
3、執(zhí)行讀命令讀取slot區(qū)中的值,返回來的內(nèi)容是經(jīng)過異或加密的,密鑰是第2步計(jì)算出來的摘要,也就是說:讀回來的值^第2步計(jì)算出來的摘要 = 原文。


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表