1. 程式人生 > >2018-2019-1 20165213 20165224 實驗二 韌體程式設計

2018-2019-1 20165213 20165224 實驗二 韌體程式設計

任務一:

要求:

  • 注意不經老師允許不準燒寫自己修改的程式碼
  • 三人一組
  • 參考雲班課資源中“資訊安全系統實驗箱指導書.pdf “第一章,1.1-1.5安裝MDK,JLink驅動,注意,要用系統管理員身分執行uVision4,破解MDK(破解程式中target一定選ARM)
  • 提交破解程式中產生LIC的截圖
  • 提交破解成功的截圖


任務二:

  • 注意不經老師允許不準燒寫自己修改的程式碼
  • 參考雲班課資源中“資訊安全系統實驗箱指導書.pdf “第一章,1.4” KEIL-MDK 中新增 Z32 SC-000 晶片庫,提交安裝截圖
  • 參考雲班課資源中“資訊安全系統實驗箱指導書.pdf “第一章,1.9”完成LED實驗,注意“開啟Z32的電源開關前,按住Reboot按鍵不放,兩次開啟電源開關,Z32即可被電腦識別,進行下載除錯。提交執行結果截圖
  • 實驗報告中分析程式碼



程式碼分析:

任務三:

  • 注意不經老師允許不準燒寫自己修改的程式碼
  • 參考雲班課資源中“資訊安全系統實驗箱指導書.pdf “第一章,1.4” KEIL-MDK 中新增 Z32 SC-000 晶片庫,提交安裝截圖
  • 參考雲班課資源中“資訊安全系統實驗箱指導書.pdf “第一章,1.0”完成UART傳送與中斷接收實驗,注意“開啟Z32的電源開關前,按住Reboot按鍵不放,兩次開啟電源開關,Z32即可被電腦識別,進行下載除錯。提交執行結果截圖
  • 實驗報告中分析程式碼

程式碼分析:

任務四:

0. 網上搜集國密演算法標準SM1,SM2,SM3,SM4
1. 網上找一下相應的程式碼和標準測試程式碼,在Ubuntu中分別用gcc和gcc-arm編譯
2. 四個演算法的用途?
3. 《密碼學》課程中分別有哪些對應的演算法?
4. 提交2,3兩個問題的答案
5. 提交在Ubuntu中執行國密演算法測試程式的截圖

關於2,3兩個問題的答案:1.SM1 為對稱加密。其加密強度與AES相當。該演算法不公開,呼叫該演算法時,需要通過加密晶片的介面進行呼叫。
SM2為非對稱加密,基於ECC。該演算法已公開。由於該演算法基於ECC,故其簽名速度與祕鑰生成速度都快於RSA。ECC 256位(SM2採用的就是ECC 256位的
一種)安全強度比RSA 2048位高,但運算速度快於RSA。
SM3 訊息摘要。可以用MD5作為對比理解。該演算法已公開。校驗結果為256位。
SM4 無線區域網標準的分組資料演算法。對稱加密,金鑰長度和分組長度均為128位。

SM2演算法:SM2橢圓曲線公鑰密碼演算法是我國自主設計的公鑰密碼演算法,包括SM2-1橢圓曲線數字簽名演算法,SM2-2橢圓曲線金鑰交換協議,SM2-3橢圓曲線公鑰加密演算法,分別用於實現數字簽名金鑰協商和資料加密等功能。SM2演算法與RSA演算法不同的是,SM2演算法是基於橢圓曲線上點群離散對數難題,相對於RSA演算法,256位的SM2密碼強度已經比2048位的RSA密碼強度要高。

  SM3演算法:SM3雜湊演算法是我國自主設計的密碼雜湊演算法,適用於商用密碼應用中的數字簽名和驗證訊息認證碼的生成與驗證以及隨機數的生成,可滿足多種密碼應用的安全需求。為了保證雜湊演算法的安全性,其產生的雜湊值的長度不應太短,例如MD5輸出128位元雜湊值,輸出長度太短,影響其安全性SHA-1演算法的輸出長度為160位元,SM3演算法的輸出長度為256位元,因此SM3演算法的安全性要高於MD5演算法和SHA-1演算法。

 SM4演算法:SM4分組密碼演算法是我國自主設計的分組對稱密碼演算法,用於實現資料的加密/解密運算,以保證資料和資訊的機密性。要保證一個對稱密碼演算法的安全性的基本條件是其具備足夠的金鑰長度,SM4演算法與AES演算法具有相同的金鑰長度分組長度128位元,因此在安全性上高於3DES演算法。

2.3DES、SHA-1、RSA



任務五:

0. 注意不經老師允許不準燒寫自己修改的程式碼
1. 參考雲班課資源中“資訊安全系統實驗箱指導書.pdf “第一章,1.4” KEIL-MDK 中新增 Z32 SC-000 晶片庫,提交安裝截圖
2. 參考雲班課資源中“資訊安全系統實驗箱指導書.pdf “第一章,1.16”完成SM1加密實驗,注意“開啟Z32的電源開關前,按住Reboot按鍵不放,兩次開啟電源開關,Z32即可被電腦識別,進行下載除錯。提交執行結果截圖
3. 實驗報告中分析程式碼