||
該方案安全性僅次于算法移植方案,高于市面上常見的對比認證方案,調試簡單,不需要對主控MCU端原有程序做太大的改動,調試周期和研發投入相對較小。無法直接找到比對點,程序執行中沒有絕對的對錯判斷。該方案適用于實時性要求高,MCU端無合適代碼移植到安全芯片內部,但又需要高安全防護的項目。提供相應的Demo例程,用戶直接移植即可使用。
參數保護方案實現的步驟如下:
1、加密芯片與主控MCU端分別預置安全密鑰Key1、Key2(相同的3DES密鑰);
2、加密芯片端預置用戶產品的相關參數Data存儲時為Lv格式。可存入參數的大小由“macro.h”中的 “ParamData_Size”宏決定;
3、MCU端發送附帶16字節隨機數Rand1(密文傳送)的讀指令讀取參數;
4、加密芯片端產生16字節隨機數Rand2,生成TempKey=Rand1^Rand2;
5、使用Key1對Rand2加密產生C1,同時使用TempKey對需要讀出的參數Data加密得到C2。MCU端傳出密文C, C=C1 || C2;
6、加密芯片端接收到密文C后,使用Key2對C1部分解密得到Rand2;
7、MCU端計算TempKey,TempKey=Rand1^Rand2;
8、使用TempKey對C2部分進行解密得到所需要使用的參數數據Data。