23.4. 使用加密密钥
您可以通过管理加密密钥来改进不提供受信任的平台模块(TPM)的系统上的系统安全性。
加密的密钥(除非由可信主密钥密封)继承用于加密的用户主密钥(随机数密钥)的安全级别。因此,建议您最好在引导过程的早期安全地加载主用户密钥。
流程
使用随机数字序列生成用户密钥:
keyctl add user kmk-user "$(dd if=/dev/urandom bs=1 count=32 2>/dev/null)" @u
# keyctl add user kmk-user "$(dd if=/dev/urandom bs=1 count=32 2>/dev/null)" @u 427069434
Copy to Clipboard Copied! 命令生成名为
kmk-user
的用户密钥,该密钥充当 主密钥,用于密封实际加密的密钥。使用上一步中的主密钥生成一个加密的密钥:
keyctl add encrypted encr-key "new user:kmk-user 32" @u
# keyctl add encrypted encr-key "new user:kmk-user 32" @u 1012412758
Copy to Clipboard Copied!
验证
列出指定的用户密钥环中的所有密钥:
keyctl list @u
# keyctl list @u 2 keys in keyring: 427069434: --alswrv 1000 1000 user: kmk-user 1012412758: --alswrv 1000 1000 encrypted: encr-key
Copy to Clipboard Copied!