国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

支持AES加密的LIN協(xié)議Bootloader參考設(shè)計(jì)

發(fā)布時(shí)間:2017-1-16 11:32    發(fā)布者:看門狗
關(guān)鍵詞: AES加密 , Bootloader , LIN
作者:孫濤,曹學(xué)余,王鈺博

面對(duì)日益嚴(yán)峻的安全挑戰(zhàn),為了確保數(shù)據(jù)在傳輸和存儲(chǔ)過(guò)程中的安全性,汽車生產(chǎn)廠商以及模塊供應(yīng)商需要能夠?qū)?yīng)用程序加密和解密從而提升傳輸過(guò)程中的安全性。本文著重討論一種將SREC文件進(jìn)行加密和解密并且能過(guò)通過(guò)LIN總線下載到目標(biāo)ECU的方案,該方案同時(shí)支持從應(yīng)用程序進(jìn)行跳轉(zhuǎn)的握手協(xié)議的定制。

現(xiàn)如今,汽車上集成了越來(lái)越多的電子控制單元(ECU),一輛高端轎車上可能就集成有多達(dá)300個(gè)電子控制單元,它們分別完成空調(diào)、車燈以及引擎等模塊的控制。

這些電子控制單元通過(guò)以太網(wǎng)、CAN或者LIN等總線進(jìn)行連接,汽車生產(chǎn)廠商在研發(fā)、生產(chǎn)以及售后維護(hù)等階段都需要將新的應(yīng)用程序下載到ECU中,相比通過(guò)調(diào)試端口進(jìn)行下載,CAN、LIN等總線提供了這樣一種比較容易接入的通訊接口,使得下載更新應(yīng)用程序更為便捷。

面對(duì)日益嚴(yán)峻的安全挑戰(zhàn),為了確保數(shù)據(jù)在傳輸和存儲(chǔ)過(guò)程中的安全性,汽車生產(chǎn)廠商以及模塊供應(yīng)商需要能夠?qū)?yīng)用程序加密和解密從而提升傳輸過(guò)程中的安全性。本文著重討論一種將SREC文件進(jìn)行加密和解密并且能過(guò)通過(guò)LIN總線下載到目標(biāo)ECU的方案,該方案同時(shí)支持從應(yīng)用程序進(jìn)行跳轉(zhuǎn)的握手協(xié)議的定制。

AES 加密解密算法

AES算法也被稱為Rijndael算法,是由NIST(美國(guó)國(guó)家標(biāo)準(zhǔn)技術(shù)研究所)于2001年發(fā)布的電子數(shù)據(jù)加密規(guī)范。

AES算法采用128位的明文分組,密鑰長(zhǎng)度支持128,192和256位。AES算法目前被世界范圍內(nèi)廣泛使用以代替在1977年發(fā)布DES算法,AES算法是對(duì)稱算法,也就是說(shuō)加密和解密數(shù)據(jù)的過(guò)程使用同樣的密鑰。

AES算法加密過(guò)程可以劃分為以下四個(gè)步驟:

        密鑰擴(kuò)展(Key Expansions)。
        初始輪(Initial Round),其中包含了AddRoundKey步驟。
        重復(fù)輪(Rounds),其中每一輪包括SubBytes, ShiftRows, MixColumns和AddRoundKey步驟。

SubBytes步驟


如圖1所示,該步驟根據(jù)原矩陣中的字節(jié),將查找表(S-box)中對(duì)應(yīng)的字節(jié)替換原字節(jié)。


ShiftRows步驟

如圖2所示,該步驟將原矩陣的第二、第三以及第四行字節(jié)分別向左平移一個(gè)、兩個(gè)和三個(gè)字節(jié),得到新的矩陣。

MixColumns步驟


如圖3所示,該步驟將固定矩陣與原矩陣相乘,得到新的矩陣。


AddRoundKey步驟

如圖4所示,該步驟將原矩陣與輪密鑰進(jìn)行位異或操作,得到新的矩陣。

最終輪(Final Round),其中包含了SubBytes, ShiftRows以及AddRoundKey步驟,但不包含MixColumns步驟。

AES算法解密過(guò)程可以理解為將上述加密過(guò)程逆向進(jìn)行,其中SubBytes, ShiftRows, MixColumns和AddRoundKey步驟都替換為其逆變換。

LIN Bootloader參考設(shè)計(jì)

SREC文件的加密


根據(jù)用戶輸入的的密鑰或者選擇使用系統(tǒng)密鑰,AES加密引擎使用用戶密鑰將輸入的SREC進(jìn)行加密生成加密的SREC文件,與此同時(shí)加密引擎使用系統(tǒng)密鑰將用戶密鑰進(jìn)行加密生成加密的密鑰文件。在此過(guò)程中,系統(tǒng)密鑰對(duì)于用戶來(lái)說(shuō)是不可見(jiàn)的,如圖5灰色部分所示。也就是說(shuō),如果SREC文件是用系統(tǒng)密鑰加密的,用戶無(wú)法解密該文件得到原始的SREC文件。3


圖5:SREC文件加密流程。

SREC文件的解密

如果希望解密SREC文件,用戶必須要知道用于加密的密鑰,也就是說(shuō)該SREC文件不能是用系統(tǒng)密鑰加密的,否則就無(wú)法解密得到原始的SREC文件。AES解密引擎使用用戶密鑰將SREC解密生成解密的SREC文件。在Bootloader下載過(guò)程中,AES解密引擎會(huì)使用系統(tǒng)密鑰對(duì)密鑰文件進(jìn)行解密得到實(shí)際的密鑰,這一密鑰將會(huì)被用于解密SREC文件。在此過(guò)程中,系統(tǒng)密鑰和解密的密鑰對(duì)于用戶來(lái)說(shuō)是不可見(jiàn)的,如圖6所示。


圖6:SREC文件的解密流程。

Bootloader流程

初始化過(guò)程包括通道、波特率、模式等配置。根據(jù)是否配置了自定義通訊協(xié)議,如果沒(méi)有配置自定義通訊協(xié)議,默認(rèn)ECU已經(jīng)處于Bootloader模式因而無(wú)需從應(yīng)用程序跳轉(zhuǎn),直接進(jìn)入應(yīng)用程序下載部分。如果配置了自定義通訊協(xié)議,上位機(jī)則會(huì)依次發(fā)送最多三個(gè)自定義數(shù)據(jù)幀,握手成功后ECU從應(yīng)用程序跳轉(zhuǎn)到Bootloader進(jìn)入應(yīng)用程序下載部分。

在ECU進(jìn)入Bootloader模式之后,上位機(jī)如果檢測(cè)到SREC文件沒(méi)有被加密則開(kāi)始建立跟ECU的Bootloader握手連接。如果檢測(cè)到SREC文件被加密,上位機(jī)首先解密密鑰文件得到原始密鑰,然后使用該原始密鑰解密SREC文件得到原始SREC文件,之后開(kāi)始建立跟ECU的Bootloader握手連接。握手成功之后,上位機(jī)會(huì)依次發(fā)送SREC文件的一行,直到整個(gè)SREC文件發(fā)送結(jié)束。

Bootloader下載完成之后,ECU跳轉(zhuǎn)到應(yīng)用程序執(zhí)行,整個(gè)流程如圖7所示。


圖7:Bootloader流程圖。

上位機(jī)界面

加密過(guò)程需要輸入原始的SREC文件,在圖8所示界面輸入密鑰或者使用默認(rèn)的系統(tǒng)密鑰,加密之后用戶會(huì)得到加密的SREC文件以及加密的密鑰文件。



如果希望解密SREC文件,用戶需要在圖9所示界面輸入SREC文件以及密鑰,解密之后用戶會(huì)得到原始的SREC文件。

應(yīng)用程序跳轉(zhuǎn)協(xié)議定制

如圖10所示,用戶可以根據(jù)需要定制應(yīng)用程序跳轉(zhuǎn)協(xié)議,通過(guò)使能三條LIN數(shù)據(jù)幀,用戶可以對(duì)數(shù)據(jù)幀的ID段、數(shù)據(jù)段等部分進(jìn)行配置。



圖11所示為應(yīng)用程序主界面,在該界面上用戶可以完成LIN的基本配置,包括通道的初始化,全局幀列表的配置,接收幀濾波的配置,當(dāng)前發(fā)送幀的ID、方向、長(zhǎng)度等配置等。以及LIN Bootloader相關(guān)配置,包括密鑰文件輸入,SREC文件輸入等。在完成LIN的基本配置以及Bootloader相關(guān)配置之后,用戶就可以啟動(dòng)Bootloader了。
總結(jié)

本文介紹了一種支持AES加密的LIN協(xié)議Bootloader參考設(shè)計(jì),其中包含了AES加密引擎將SREC文件以及密鑰加密,AES解密引擎將SREC文件已經(jīng)密鑰解密,Bootloader上位機(jī)升級(jí)ECU的流程設(shè)計(jì),以及Bootloader界面設(shè)計(jì)。通過(guò)采用支持AES加密的LIN協(xié)議Bootloader,汽車生產(chǎn)廠商以及模塊供應(yīng)商可以使得整個(gè)SREC文件的傳輸過(guò)程更為安全,從而更好的保護(hù)相關(guān)的知識(shí)產(chǎn)權(quán)。
本文地址:http://www.qingdxww.cn/thread-184553-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • Chiptorials ——如何將CryptoAuthLib庫(kù)用于Microchip安全身份驗(yàn)證IC
  • Chiptorials——如何使用ATECC608 TrustFLEX實(shí)現(xiàn)公鑰輪換
  • 無(wú)線充電基礎(chǔ)知識(shí)及應(yīng)用培訓(xùn)教程
  • Chiptorials ——使用ATECC608 TrustFLEX實(shí)現(xiàn)基本非對(duì)稱身份驗(yàn)證
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲成人国产 | 中文字幕日韩精品麻豆系列 | 色噜噜噜噜噜 | 男女黄网站 | 亚洲影院在线观看 | 特级毛片aaaa级毛片免费 | 香蕉久久高清国产精品免费 | 色综合视频在线观看 | 福利午夜最新 | 久久精品蜜芽亚洲国产a | 四虎精品影院 | 久久黄色视屏 | 亚洲区视频 | 精品一区二区三区 不卡高清 | 国内精品自在欧美一区 | 青青视频在线播放 | 老司机亚洲精品影院在线观看 | 国产 欧美 日韩 在线 | 日本高清不卡免费 | 大伊香蕉在线精品视频人碰人 | 最近韩国日本免费观看mv免费版 | 国产一级高清视频免费看 | 欧美在线播放一区二区 | 免费一级毛片视频 | h在线视频 | 日本一区二区三区在线播放 | 国产蝌蚪 | 欧美亚洲尤物久久精品 | 日本在线天堂 | 国产三级在线看 | 亚洲精品国产精品国自产网站 | 老外毛片 | 久久澡 | 亚洲免费观看视频 | 靠比久久| 91婷婷 | 成年人免费在线播放 | 色视频在线观看完整免费版 | 成人a在线 | 精品久久久久久久一区二区伦理 | 九九在线观看高清免费 |