在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一種基于ATSHA204的密鑰認證系統(tǒng)設計

            一種基于ATSHA204的密鑰認證系統(tǒng)設計

            作者: 時間:2014-04-22 來源:網(wǎng)絡 收藏

            ?

            本文引用地址:http://www.biyoush.com/article/245795.htm

            4.2 軟件設計

            系統(tǒng)運行原理圖如圖2所示,在ATmega128平臺上面,通過程序的方式實現(xiàn)SHA-256算法,同時,將challenge(消息摘要)發(fā)送到 計算好之后,發(fā)回response,再在ATmega128平臺上面實現(xiàn)對比,如果匹配成功,則程序繼續(xù)運行,如果失敗,則程序終止運行,從而實現(xiàn)加密的目的。通信方式采用基礎的I2C通信。整個程序包括兩部分:認證程序沒計和SHA-256程序設計。下面分別描述。

            ?

            ?

            4.2.1 MAC(消息認證)程序設計

            MAC認證程序使用上面提及的標準的TWI讀寫函數(shù)接口,通過發(fā)送0x00信號使SDA保持一段時間的低電平信號,以wakeup加密芯片、chal lenge數(shù)組中的格式和response數(shù)組的大小詳見datasheet?;竞瘮?shù)流程如下:

            ?

            ?

            4.2.2 ATmega128平臺SHA-256計算程序

            SHA-256計算程序需要和芯片上面的哈希算法保持一致,因此需要移植公司提供的算法,移植之后的主程序如下:

            ?

            ?

            函數(shù)形參中的message指針指向一個88字節(jié)的輸入數(shù)組,len的值本設計中賦值88,digest指針指向返回的response數(shù)組。

            4.3 功能測試

            為了測試系統(tǒng)的可行性,驗證哈希計算結果,本設計采用將哈希計算結果輸出到串口端的方法來測試整個程序在ATmega128平臺上面的運行。在實際系統(tǒng)運行時,為了保證高強度加密,消息摘要應該采用隨機數(shù),但為了測試方便,暫時采用固定不變的摘要信息。

            ?

            ?

            通過串口接收到的主機計算的結果(digest)和ATSHA204發(fā)送回來的結果截圖如圖3所示。圖中前32字節(jié)為SHA-256計算所得的digest,后面為device發(fā)回來的count(1字節(jié))+response(32字節(jié))+crc(2字節(jié)),可以看出中間的32字節(jié)和SHA-256計算所得相同,因此便可認證成功。反之,如果芯片中的密鑰數(shù)據(jù)不是用戶定義的。那么返回的response和SHA-256計算的不同,則認證不成功,從而實現(xiàn)了程序加密。

            ?

            ?

            5 測試

            為了更好地驗證加密系統(tǒng)的可靠性與可行性,在測試認證基本功能之后,將其嵌入到一個實際系統(tǒng)中,對加密性能進行測試?;谝延械腁Tmega128硬件平臺,選取SD卡文件系統(tǒng)讀取程序作為測試,系統(tǒng)的運行流程如圖4所示。

            ?

            ?

            本系統(tǒng)采用開源的Fatfs文件系統(tǒng)作為SD卡的文件系統(tǒng),SD卡與ATmega128的通信方式采用傳統(tǒng)的SPI方式,SD卡中存放已經(jīng)轉換好的單色分辨率為128×64的位圖bin文件,認證部分只作為一個具有返回值的子函數(shù),根據(jù)返回值確定是否成功。

            如果成功,則程序繼續(xù)執(zhí)行;如果不成功,延時1 s再次啟動加密芯片進行認證。如果成功,則視同認證成功;如果還是不成功,則通過液晶顯示屏提示不成功,使用assert語句終止程序。

            測試中采用置換不同配置的加密芯片來測試加密的可靠性,認證成功和失敗時的情況分別如圖5和圖6所示。

            ?

            ?

            結語

            本文主要介紹了公司最新加密芯片ATSHA204的原理和使用方法,初步對其中使用到的加密算法SHA-256進行了簡單介紹,最后在ATmega128平臺使用I2C總線接口模塊,利用中斷方式實現(xiàn)SD卡的數(shù)據(jù)發(fā)送與接收,并通過MAC方式實現(xiàn)了認證,并詳細描述了程序流程,解析了部分程序語句。本設計具有很強的實用性,ATSHA204是目前廣泛使用的加密芯片,是公司加密芯片的典型產(chǎn)品,本設計對于指導實際應用具有參考意義。


            上一頁 1 2 下一頁

            關鍵詞: Atmel ATSHA204

            評論


            相關推薦

            技術專區(qū)

            關閉