LPC之master key

Posted richard-xiong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LPC之master key相关的知识,希望对你有一定的参考价值。

上一篇我们讲到了PUF,PUF的目的是为了让key更加安全。
RT600除了支持PUF外,还推出了master key的方案。简单来说,就是对存储到固定地址的key,进行AES的加密运算,经过运算后的key才能解密数据。实质上就是对key的再加密,hake即便获取了存储的key,但是无法知晓key的加密运算法则,因此无法解密数据。

几种key的处理:

  • HMAC SHA256 key128
    存储在fuse中的master key经过如下的算法,得到的key对image header计算得到HMAC.
    AES256(MASTERKEY256, 00000000_00000000_00000000_00000000)
  • Encrypted boot image key256:
    maser key经过如下的算法,得到的key用于image的加解密
    AES256(MASTERKEY256, 01000000_00000000_00000000_00000000_02000000_00000000_00000000_00000000)
  • SB2 KEK key or FW update Key
    master key经过如下的运算,用于SB的加解密
    AES256(MASTERKEY256,03000000_00000000_00000000_00000000_04000000_00000000_00000000_00000000)
  • OTFAD KEK128(supports both per device AES key and pre shared AES key)
    OTFAD key 跟 master经过如下算法,得到OTFAD kek,用于key blob的解密
    AES256 ENCRYPT(MASTERKEY256, OTFAD_key[127:0] fuse);

以上是关于LPC之master key的主要内容,如果未能解决你的问题,请参考以下文章

LPC1768/1769之CAN控制器概述

2-LPC1778之GPIO

LPC之PUF

LPC2138微控制器之定时器看门狗VIC实例

LPC2138微控制器之I2C

实时音频编解码之四 LPC和LSF