色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

3DES算法的動態加密系統設計原理

麥克泰技術 ? 來源:3DES ? 2024-03-26 12:24 ? 次閱讀

引言

目前,應用在工業控制領域的加密算法多以CRC加密或者校驗和CHECKSUM加密算法為主,但是此類普通加密算法如果每次發送的控制指令相同,計算出的加密結果也是一樣的[1],具有控制數據被破解的風險,增加通信的不安全性,這在一些醫療、金融和汽車電子等特殊領域是不允許的。

1 動態加密系統原理

本文提出的動態加密系統包括上位機和下位機兩部分。圖1所示為動態加密算法原理,在工作過程中,首先由下位機周期性發送一包隨機種子數據(每次發送數據均變化),并按約定的加密算法進行計算加密,結果記為A,然后上位機接收到此隨機種子后按同樣的加密算法進行加密,然后將控制指令和加密結果記為B的數據整合為一幀數據后傳送給下位機,下位機接收到此控制指令后進行數據解析,若A=B,則執行相應控制指令功能,依此通信過程進行循環。

f711de6c-eb25-11ee-a297-92fbcf53809c.jpg

2 動態加密系統硬件設計

2.1 主控芯片 STM32F103RCT6

本設計中上下位機使用的主控芯片均為STM32F103RCT6,這是一款32位微控制器,最大系統時鐘速度可達72 MHz,為快速實時處理復雜加密算法提供了可能性,片內集成FLASH 容量為256 KB,RAM容量為48 KB,具有 UARTCAN通信等模塊[2],STM32F103RCT6集成的豐富片上外設資源大大簡化了設計成本及開發周期。

2.2 STM32 最小系統電路設計

STM32 最小系統可以直觀地理解為讓單片機正常工作的最小電路,圖2所示為STM32最小系統構成,包括電源電路、晶振電路、復位電路和啟動模式配置等[3]。電源電路經穩壓芯片 REF3133將5V電壓轉換為3.3V提供給 MCU。外部晶振電路類似于"心臟"的功能,為單片機提供精準的時鐘頻率以保證正常工作。復位電路為單片機提供上電復位功能,利用電容充電不能瞬間突變的特性,即可完成一次單片機上電復位。BOOTO 引腳配置為低電平,以使MCU從用戶FLASH存儲區啟動。

f722f206-eb25-11ee-a297-92fbcf53809c.jpg

2.3 CAN通信電路設計

使用 Philips 半導體公司的 TJA1050 進行 CAN 通信電路設計,TJA1050是一款高速CAN收發集成芯片,可以提供差分傳輸總線和差分接收能力,并且全兼容ISO11898 標準[4]。CAN通信電路設計如圖3所示,其中控制引腳RS接為低電平以配置為正常高速模式。

f73ded90-eb25-11ee-a297-92fbcf53809c.jpg

3 動態加密系統軟件設計

3.1 動態加密算法數據包格式定義

出于通信穩定性考慮,本設計采用CAN通信方式,CAN是Controller Area Network的縮寫,是ISO國際標準化的差分傳輸串口通信協議,具有通信速度快、通信距離遠和可靠性高等優點[5],8字節下位機發送數據包格式定義如下:

f74b8a22-eb25-11ee-a297-92fbcf53809c.png

上位機發送8字節數據包格式定義如下:

f759c448-eb25-11ee-a297-92fbcf53809c.png

其中包頭和包尾數據分別定義為0xAA和0x55,Byte4~Bytel為應用3DES加密算法計算結果(8字節)的中間4位,并采用小端方式存儲,Byte5和Byte6為控制指令模式位,用于控制下位機的工作模式。

3.2 動態加密算法軟件設計

DES全稱為 Data Encryption Standard,即數據加密標準,是一種使密鑰加密的塊算法,屬于對稱加密算法的一種[6]。由于計算機的計算能力不斷增強,DES算法的密鑰變得較容易被破解,3DES即是在DES算法基礎上,通過增加密鑰長度對每個數據塊應用三次DES加密算法,使得其安全性得到提高[7],若以EK()、DK()分別表示DES的加密和解密函數,P代表明文,C代表密文,則3DES加密算法可以用以下公式表示:

C=EK3(DK2(EK1(P)))

式中,K1、K2、K3表示總密鑰(24字節)中的8字節密鑰。

本系統為基于3DES算法的動態加密設計,上下位機共同約定的密鑰取為24字節的十六進制數:0x2B201E00270401C491EFBD27047002236E710B513460A460。T位機傳送8字節隨機數種子,其中8字節隨機數由C語言自帶的srand和rand標準庫函數配合使用而產生[8]。上位機在接收到下位機傳送來的8字節數據后進行3DES加密算法加密,然后按照數據包的格式回傳數據至下位機,下位機接收到此數據后進行數據解析并執行相關指令功能,具體軟件設計過程如下:

①對MCU系統初始化配置(包括配置系統時鐘等),并進行CAN通信正常收發模式和波特率等參數設置。

②由下位機周期性向上位機傳送字節隨機數,并依據3DES加密算法在同一密鑰下計算8字節隨機數加密結果,取加密結果的中間4位存入數組中。

③上位機接收到8字節隨機數后,按照與下位機同樣的計算方法計算此隨機數加密結果,并按照數據格式整合數據,然后將此數據發送給下位機。

④下位機接收到上位機傳送來的數據后,進行解析并對比上傳的加密數據是否與保存在本地的加密數據一致,一致則執行相關控制指令,不一致則不執行相關功能。

⑤按照步驟②~④周期循環執行通信流程。

具體軟件設計流程圖如圖4所示。

f762eb18-eb25-11ee-a297-92fbcf53809c.jpg

結語

將此通信設計方案應用在某汽車電子產品中,針對此應用系統,設定通信波特率為500 kbps,下位機CAN通信ID設為0x18FF 0107,上位機CAN通信ID設為0x18FF 0108。為了保證通信安全,避免通信內容被破解,需要使下位機周期發送隨機數種子時間盡量短暫,本設計定為500 ms。圖5所示為上下位機通信過程中應用通信監控軟件監控到的部分通信數據幀。

f774061e-eb25-11ee-a297-92fbcf53809c.jpg

分析圖5可知,在足夠短的通信周期內,盡管控制模式固定不變,下發與上傳的通信數據每次都發生變化,這樣就提高了數據通信的安全性,減小了通信數據幀被第三方破解的概率,使得本設計方案具有一定的實用價值。

參考文獻

[1]王根義.CRC校驗算法的研究與實現[J].電子設計工程,2012(9):1674-6236.

[2]意法半導體公司.STM32F103xC芯片數據手冊,2015.

[3]李彬,王朝陽,卜濤,等.基于MSP430F149的最小系統設計[J].國外電子測量技術,2009(12).

[4]郭寬明.CAN總線原理和應用系統設計[M].北京:北京航空航天大學出版社,1996.

[5]徐爭穎.CAN總線及其網絡系統的實現[J].自動化與儀表,2005(5).

[6]李聯.信息安全中的DES加密算法[J].現代電子技術,2005(9).

[7]劉建華,趙小強,李晶.基于ARM的3DES加密算法實現

[J].現代電子技術,2009,32(18):37-39.

[8]王瑞胡,計算機中偽隨機數生成及其在VISUAL C++中的實現[J].計算機與信息技術,2005(9):79-80,84

(作者單位:南京先進激光技術研究院,南京210038)

審核編輯:黃飛

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • CAN
    CAN
    +關注

    關注

    57

    文章

    2744

    瀏覽量

    463621
  • STM32
    +關注

    關注

    2270

    文章

    10895

    瀏覽量

    355740
  • 加密算法
    +關注

    關注

    0

    文章

    215

    瀏覽量

    25541
  • 下位機
    +關注

    關注

    0

    文章

    94

    瀏覽量

    18753

原文標題:3DES 算法的動態加密系統研究與應用

文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    3DES算法是什么?

    3DES使用“密鑰包”,其包含3DES密鑰,K1,K2和K3,均為56位(除去奇偶校驗位)。
    發表于 10-23 09:00

    如何去實現DES加密算法?

    DES算法的簡單原理是什么?如何去實現DES加密算法?
    發表于 04-26 07:14

    如何設計一個基于FPGA的DES加密算法系統

    為了克服傳統DES加密算法流水線的FPGA實現的子密鑰需先后串級計算,密鑰不能動態刷新的缺點,提出一種新的加密算法,提高DES FPGA實現
    發表于 04-30 06:29

    DES加密算法是什么

    ,是要被加密或解密的數據,DES采用16輪運算,每輪產生一個輪密鑰參與到運算中,密鑰與明文運算時采用按位異或的方法(不僅僅是與密鑰異或),但每一位存放的數據只有0或1,因此,DES的密鑰空間僅僅只有2^56。2、
    發表于 07-22 09:13

    3DES算法密鑰長度說明

    3DES算法密鑰長度說明3DES加密算法作為經典的對稱加密算法,已經廣泛應用于各安全相關行業的數據加解密與身份認證環節之中,本文主要針對用戶
    發表于 07-22 09:37

    des加密算法代碼

    des加密算法代碼 /* d3des.h - * * Headers and defines for d3des.c * Grave
    發表于 01-16 10:12 ?34次下載

    高速和資源節約型數據加密算法設計

    介紹了3DES 數據加密算法(DDA)的原理,針對利用FPGA 硬件實現3DES 算法,給出了一種可進化IP 核的具體設計思想,采用可重構電路節省器件內部資源,并采用有限狀態機設計技
    發表于 01-16 15:42 ?14次下載

    3DES算法的FPGA高速實現

    摘要:介紹3-DES算法的概要;以Xilinx公司SPARTANII結構的XC2S100為例,闡述用FPGA高速實現3-DES算法的設計要點及關鍵部分的設計。 關鍵詞:
    發表于 06-20 14:22 ?1456次閱讀
    <b class='flag-5'>3DES</b><b class='flag-5'>算法</b>的FPGA高速實現

    基于狀態機和流水線技術的3DES加密算法及其FPGA設計

    摘要: 介紹了3DES加密算法的原理并詳盡描述了該算法的FPGA設計實現。采用了狀態機和流水線技術,使得在面積和速度上達到最佳優化;添加了輸入和輸出接口的設
    發表于 06-20 15:22 ?1172次閱讀
    基于狀態機和流水線技術的<b class='flag-5'>3DES</b><b class='flag-5'>加密算法</b>及其FPGA設計

    基于FPGA的DES3DES硬件加密技術

    基于FPGA的DES、3DES硬件加密技術 傳統的加密工作是通過在主機上運行加密軟件實現的。這種方法除占用主機資源外,運算速度較慢,安全性
    發表于 07-26 22:35 ?1615次閱讀
    基于FPGA的<b class='flag-5'>DES</b>、<b class='flag-5'>3DES</b>硬件<b class='flag-5'>加密</b>技術

    3DES加密算法的原理及FPGA設計實現

    摘要: 介紹了3DES加密算法的原理并詳盡描述了該算法的FPGA設計實現。采用了狀態機和流水線技術,使得在面積和速度上達到最佳優化;添加了輸入和輸出接口的設計以增強該算法應用的靈活性。
    發表于 11-06 11:10 ?7次下載

    3des加密解密詳細解釋

    3DES,也稱為3DESede或TripleDES,是三重數據加密,且可以逆推的一種算法方案。975年美國IBM公司成功研究并發布了DES
    發表于 12-09 09:43 ?3w次閱讀
    <b class='flag-5'>3des</b><b class='flag-5'>加密</b>解密詳細解釋

    軟件加密算法都有哪些,這些算法在哪些方面得到了應用?

    3DES是三重數據加密算法塊密碼的通稱。它相當于是對每個數據塊應用三次DES加密算法。由于計算機運算能力的增強,原版DES密碼的密鑰長度變得
    的頭像 發表于 12-24 09:27 ?7768次閱讀
    軟件<b class='flag-5'>加密算法</b>都有哪些,這些<b class='flag-5'>算法</b>在哪些方面得到了應用?

    常用算法的分類以及加密算法的選用

    DES是一種分組數據加密技術(先將數據分成固定長度的小數據塊,之后進行加密),速度較快,適用于大量數據加密,而3DES是一種基于
    的頭像 發表于 02-01 01:25 ?7743次閱讀
    常用<b class='flag-5'>算法</b>的分類以及<b class='flag-5'>加密算法</b>的選用

    3DES數據加密算法的原理和使用FPGA設計的詳細說明

    介紹了3DES 數據加密算法(DDA)的原理,針對利用FPGA 硬件實現3DES 算法,給出了一種可進化IP 核的具體設計思想,采用可重構電路節省器件內部資源,并采用有限狀態機設計技術
    發表于 01-16 10:58 ?18次下載
    <b class='flag-5'>3DES</b>數據<b class='flag-5'>加密算法</b>的原理和使用FPGA設計的詳細說明
    主站蜘蛛池模板: 99久久婷婷国产综合精品青草| 欧美牲交A欧美牲交VDO| 国产成人无码精品久久久影院| 99久久99久久精品免费看子| 伊人狼人久久精品热9| 亚洲国产精品线在线观看| 少妇无套内谢久久久久| 日本无翼恶漫画大全优优漫画| 欧美性猛交XXXX乱大交极品| 欧美阿v在线天堂| 欧美xxxav| 青青草原在线免费| 日本片bbbxxx| 色悠久久久久综合网小说| 日日操夜夜摸| 无码AV熟妇素人内射V在线| 亚洲 在线 日韩 欧美| 亚洲精品永久免费| 一区二区视频在线观看高清视频在线| 野花高清在线观看免费3中文| 伊人久久伊人| 538prom精品视频我们不只是| 一级毛片免费在线播放| 最新2017年韩国伦理片在线| 97在线视频免费播放| 冰山高冷受被c到哭np双性| 岛国大片在线播放免费| 国产人成高清在线视频99| 国产小视频国产精品| 久久无码人妻中文国产| 嫩草成人影院| 帅哥操帅哥| 亚洲一区乱码电影在线| 2022国产麻豆剧传媒剧情| 99精品久久| 出租屋交换人妻 全文| 国产色婷婷精品人妻蜜桃成熟 | 污污又黄又爽免费的网站| 亚洲 日韩 色 图网站| 在线观看日韩一区| 宝贝乖女好紧好深好爽老师|