永久免费网站建设系统,军事新闻今天,美食网站开发步骤,凡科网免费建站官网1. 获取用户名
命令及结果如下所示#xff1a;
$ whoami
ph2. 获取设备序列号#xff08;串号#xff09;
命令及结果如下所示#xff1a;
$ sudo dmidecode | grep Serial Number | head -n 1Serial Number: MP260S483. 将用户名和设备序列号放入到一个文…1. 获取用户名
命令及结果如下所示
$ whoami
ph2. 获取设备序列号串号
命令及结果如下所示
$ sudo dmidecode | grep Serial Number | head -n 1Serial Number: MP260S483. 将用户名和设备序列号放入到一个文件中
文件名如key_info.dat。具体步骤略。
4. 通过TPM生成哈希值
通过tpm2_hash命令针对文件生成哈希值。命令及结果如下所示
$ sudo /usr/local/bin/tpm2_hash -C e -g sha256 -o hash.bin -t ticket.bin key_info.dat$ ls
hash.bin key_info.sh key_info.dat ticket.bin5. 加载外部密钥到TPM中
通过tpm2_loadexternal命令以AES密钥形式加载生成的外部密钥即上一步中的hash.bin到TPM中。命令及结果如下所示
$ sudo /usr/local/bin/tpm2_loadexternal -C o -G aes -r hash.bin -c key.ctx
WARNING:esys:src/tss2-esys/api/Esys_LoadExternal.c:314:Esys_LoadExternal_Finish() Received TPM Error
ERROR:esys:src/tss2-esys/api/Esys_LoadExternal.c:108:Esys_LoadExternal() Esys Finish ErrorCode (0x000003c5)
ERROR: Esys_LoadExternal(0x3C5) - tpm:parameter(3):hierarchy is not enabled or is not correct for the use
ERROR: Unable to run /usr/local/bin/tpm2_loadexternal可以看到出现了错误。具体原因参见
tpm2-tools/tpm2_loadexternal.1.md at master · tpm2-software/tpm2-tools · GitHub
中的“NOTES” NOTES If the hierarchy is null or the name hashing algorithm is null, tickets produced using the object will be NULL. If the private portion of an object is specified, the hierarchy must be null or the TPM will reject loading it. 因此将参数由“-C o”改为“-C n”。命令及结果如下所示
$ sudo /usr/local/bin/tpm2_loadexternal -C n -G aes -r hash.bin -c key.ctx
name: 000bd13e6f08d050bf1d0b1ba1396698e719518a8d3a6550f2b2f7deb32abf7408f76. 生成明文文件
通过命令生成一个明文文件。如下举例
$ echo plain text message.dat
$ cat message.dat
plain text7. 加密
通过tpm2_encryptdecrypt命令、利用步骤5中生成的AES密钥key.ctx对步骤6中的明文文件进行加密。命令及结果如下所示
$ sudo /usr/local/bin/tpm2_encryptdecrypt -c key.ctx -o message.enc message.dat
WARN: Using a weak IV, try specifying an IV$ sudo cat message.enc
*9DwA
8. 解密
通过tpm2_encryptdecrypt命令、利用步骤5中生成的AES密钥key.ctx对步骤7中的密文文件进行解密。命令及结果如下所示
$ sudo /usr/local/bin/tpm2_encryptdecrypt -d -c key.ctx -o message.dec message.enc
WARN: Using a weak IV, try specifying an IV$ sudo cat message.dec
plain text9. 将密钥持久保存
通过tpm2_evictcontrol命令将以上AES密钥从易失性空间移存到非易失性空间中。命令及结果如下所示
$ sudo /usr/local/bin/tpm2_evictcontrol -C o -c key.ctx 0x81010002
WARNING:esys:src/tss2-esys/api/Esys_EvictControl.c:330:Esys_EvictControl_Finish() Received TPM Error
ERROR:esys:src/tss2-esys/api/Esys_EvictControl.c:114:Esys_EvictControl() Esys Finish ErrorCode (0x00000282)
ERROR: Esys_EvictControl(0x282) - tpm:handle(2):inconsistent attributes
ERROR: Unable to run /usr/local/bin/tpm2_evictcontrol