zoukankan      html  css  js  c++  java
  • RT600之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);
  • 相关阅读:
    static、final、this、super关键
    细节二:参数、引用类型、实例化
    枚举类型
    单例模式
    细节一:字符串、switch、默认值、数组
    类属性和类方法
    装饰器模式
    TreeSet
    可见参数和增强for以及自动拆装箱
    静态导入
  • 原文地址:https://www.cnblogs.com/richard-xiong/p/9908863.html
Copyright © 2011-2022 走看看