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