对比案应用模式固定,调试简单,MCU主控端只需要移植对称加密算法和简单的加密操作即可,不需对主控MCU端原有程序做大的改动。同时也不需要用户了解加密芯片内部运行流程,因此调试周期短,研发投入小。凌科芯安公司提供相应的Demo例程,用户直接移植即可使用。

对比认证方案实现的步骤如下:

  • 主控MCU与加密芯片端分别预置安全密钥Key1、Key2(相同的3DES密钥)
  • MCU与加密芯片端预置相同的初始向量Iv(8字节)
  • MCU端发送附带16字节随机数Rand1(密文传送)指令,请求加密芯片产生挑战数据
  • 加密芯片端使用Key2解密指令数据得到Rand1
  • 加密芯片端产生16字节随机数Rand2
  • 计算D1,D1 = (Rand1 ^ Rand2)
  • 生成挑战数据D, D= D1 || Rand2
  • 计算密文C,C =3DES_EncCBC(Iv,key2, D)。并将C返回给MCU  
  • MCU端解密密文C,3DES_DecCBC(Iv,key1, C),截取Rand2
  • MCU端计算D1’,D1’= (Rand1 ^ Rand2)
  • 如果 D’== D 则认证成功,否则认证失败

对比认证流程如如下所示:

LKT4304芯片对比认证方案_数据