iMX8MM keyctl add trusted, add_key: No such device

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

iMX8MM keyctl add trusted, add_key: No such device

跳至解决方案
658 次查看
mariusoctavian
Contributor IV

Hi,
This is iMX8MM built with yocto scarthgap.

I am following mainly this doc-stm in conjunction with this doc


all optee-os optee-test and optee are in the build.

The Kernel config looks like:

CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_AES=y
CONFIG_MD=y 
CONFIG_DM_CRYPT=y
CONFIG_BLK_DEV_DM=y
CONFIG_KEYS=y
CONFIG_TRUSTED_KEYS=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_TRUSTED_KEYS_TEE=y

 

The drivers looks okay

[root@imx:~$ dmesg | grep optee
[    1.530781] optee: probing for conduit method.
[    1.530800] optee: revision 4.2 (c6be5b57)
[    1.532316] optee: dynamic shared memory is enabled
[    1.559229] optee: initialized driver

 

The xtest passes

+-----------------------------------------------------
43430 subtests of which 0 failed
155 test cases of which 0 failed
0 test cases were skipped
TEE test application done!

 

But

[root@imx:~$ keyctl add trusted kmk "new 32" @s
add_key: No such device
[root@Dekoda:~$ 

 

 fails with,

No such device,

dmesg shows nothing

 

0 项奖励
回复
1 解答
628 次查看
mariusoctavian
Contributor IV

I do this, we have all HAB TC enabled.
I found the problem.
I was using the 5.15.60 kernel due custom drivers.
As the results did not make any sense I  replaced for the time being with 6.6.23 and all good.

I can add trusted key to KR session and
use dm to encrypt a partition using the key blob.

RESOLVED

在原帖中查看解决方案

0 项奖励
回复
2 回复数
634 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello, 

On the MX8MM DEK blob must be created by a software running in Arm TrustZone Secure World, the CAAM block takes into consideration the TrustZone configuration when encapsulating the DEK and the resulting blob can be only decapsulated by a SW running in the same configuration. As ROM code is running in ARM TrustZone secure world we must encapsulate the blobs using OP-TEE.

Please check this thread:

https://community.nxp.com/t5/i-MX-Processors/Enabling-OP-TEE-in-i-MX8MM-EVK-FIT-image/m-p/1160604

 

Regards

0 项奖励
回复
629 次查看
mariusoctavian
Contributor IV

I do this, we have all HAB TC enabled.
I found the problem.
I was using the 5.15.60 kernel due custom drivers.
As the results did not make any sense I  replaced for the time being with 6.6.23 and all good.

I can add trusted key to KR session and
use dm to encrypt a partition using the key blob.

RESOLVED

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2135213%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3Eimx8mm%20keyctl%20%E6%B7%BB%E5%8A%A0%E5%8F%AF%E4%BF%A1%E8%AE%BE%E5%A4%87%EF%BC%8Cadd_key%EF%BC%9A%E6%B2%A1%E6%9C%89%E8%BF%99%E6%A0%B7%E7%9A%84%E8%AE%BE%E5%A4%87%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2135213%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%EF%BC%8C%3CBR%20%2F%3E%E8%BF%99%E6%98%AF%E7%94%A8%20yocto%20scarthgap%20%E7%89%88%E6%9C%AC%20%E7%9A%84%20imx8mm%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E4%B8%BB%E8%A6%81%E6%98%AF%E6%A0%B9%E6%8D%AE%E8%BF%99%E4%B8%AA%3CA%20title%3D%22%E6%96%B9%E5%BC%8F%22%20href%3D%22https%3A%2F%2Fwiki.st.com%2Fstm32mpu%2Findex.php%3Ftitle%3DHow_to_encrypt_a_disk_with_dm-crypt%26amp%3Boldid%3D101931%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3E%E6%96%87%E6%A1%A3-%E6%89%8B%E5%86%8C%3C%2FA%3E%EF%BC%8C%E7%BB%93%E5%90%88%3CA%20title%3D%22imx9%22%20href%3D%22https%3A%2F%2Fwww.thegoodpenguin.co.uk%2Fblog%2Fsecure-storage-with-i-mx-95-verdin-evk-using-trusted-keys-with-op-tee%2F%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3E%E8%BF%99%E4%B8%AA%E6%96%87%E6%A1%A3%3C%2FA%3E%3C%2FP%3E%3CP%3E%3CBR%20%2F%3E%E6%89%80%E6%9C%89%20optee-os%20optee-test%20%E5%92%8C%20optee%20%E9%83%BD%E5%9C%A8%E7%89%88%E6%9C%AC%E4%B8%AD%E3%80%82%3C%2FP%3E%3CP%3E%E5%86%85%E6%A0%B8%E9%85%8D%E7%BD%AE%E7%9C%8B%E8%B5%B7%E6%9D%A5%E5%83%8F%E8%BF%99%E6%A0%B7%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3ECONFIG_CRYPTO_HASH%3Dy%0ACONFIG_CRYPTO_AES%3Dy%0ACONFIG_MD%3Dy%20%0ACONFIG_DM_CRYPT%3Dy%0ACONFIG_BLK_DEV_DM%3Dy%0ACONFIG_KEYS%3Dy%0ACONFIG_TRUSTED_KEYS%3Dm%0ACONFIG_ENCRYPTED_KEYS%3Dy%0ACONFIG_TRUSTED_KEYS_TEE%3Dy%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3E%E9%A9%BE%E9%A9%B6%E5%91%98%E7%9C%8B%E8%B5%B7%E6%9D%A5%E8%BF%98%E4%B8%8D%E9%94%99%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3E%5Broot%40imx%3A~%24%20dmesg%20%7C%20grep%20optee%0A%5B%20%20%20%201.530781%5D%20optee%3A%20probing%20for%20conduit%20method.%0A%5B%20%20%20%201.530800%5D%20optee%3A%20revision%204.2%20(c6be5b57)%0A%5B%20%20%20%201.532316%5D%20optee%3A%20dynamic%20shared%20memory%20is%20enabled%0A%5B%20%20%20%201.559229%5D%20optee%3A%20initialized%20driver%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3E%E6%B5%8B%E8%AF%95%E9%80%9A%E8%BF%87%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3E%2B-----------------------------------------------------%0A43430%20subtests%20of%20which%200%20failed%0A155%20test%20cases%20of%20which%200%20failed%0A0%20test%20cases%20were%20skipped%0ATEE%20test%20application%20done!%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3E%E4%BD%86%E6%98%AF%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%20translate%3D%22no%22%3E%5Broot%40imx%3A~%24%20keyctl%20add%20trusted%20kmk%20%22new%2032%22%20%40s%0Aadd_key%3A%20No%20such%20device%0A%5Broot%40Dekoda%3A~%24%20%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3E%E4%B8%8D%E5%90%88%E6%A0%BC%E3%80%81%3C%2FP%3E%3CP%3E%E6%B2%A1%E6%9C%89%E8%BF%99%E6%A0%B7%E7%9A%84%E8%AE%BE%E5%A4%87%EF%BC%8C%3C%2FP%3E%3CP%3Edmesg%20%E4%BB%80%E4%B9%88%E4%B9%9F%E6%B2%A1%E6%98%BE%E7%A4%BA%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2135880%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20iMX8MM%20keyctl%20add%20trusted%2C%20add_key%3A%20No%20such%20device%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2135880%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%88%91%E4%BB%AC%E5%90%AF%E7%94%A8%E4%BA%86%E6%89%80%E6%9C%89%20HAB%20TC%E3%80%82%3CBR%20%2F%3E%E6%88%91%E6%89%BE%E5%88%B0%E4%BA%86%E9%97%AE%E9%A2%98%E6%89%80%E5%9C%A8%E3%80%82%3CBR%20%2F%3E%E6%88%91%E5%BD%93%E6%97%B6%E4%BD%BF%E7%94%A8%E7%9A%84%E6%98%AF%205.15.60%20%E5%86%85%E6%A0%B8%EF%BC%8C%E7%94%B1%E4%BA%8E%E4%BD%BF%E7%94%A8%E4%BA%86%E8%87%AA%E5%AE%9A%E4%B9%89%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E3%80%82%3CBR%20%2F%3E%E7%94%B1%E4%BA%8E%E7%BB%93%E6%9E%9C%E6%B2%A1%E6%9C%89%E4%BB%BB%E4%BD%95%E6%84%9F%E7%9F%A5%EF%BC%8C%E6%88%91%E6%9A%82%E6%97%B6%E7%94%A86.6.23%E4%BB%A3%E6%9B%BF%E4%BA%86%EF%BC%8C%E4%B8%80%E5%88%87%E9%83%BD%E5%BE%88%E5%A5%BD%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%88%91%E5%8F%AF%E4%BB%A5%E5%9C%A8%20KR%20%E4%BC%9A%E8%AF%9D%E4%B8%AD%E6%B7%BB%E5%8A%A0%E5%8F%97%E4%BF%A1%E4%BB%BB%E7%9A%84%E5%AF%86%E9%92%A5%EF%BC%8C%E7%84%B6%E5%90%8E%3CBR%20%2F%3E%E4%BD%BF%E7%94%A8%20dm%20%E4%BD%BF%E7%94%A8%E5%AF%86%E9%92%A5%20Blob%20%E5%8A%A0%E5%AF%86%E5%88%86%E5%8C%BA%E3%80%82%3C%2FP%3E%3CP%3E%3CSTRONG%3E%E5%B7%B2%E8%A7%A3%E5%86%B3%3C%2FSTRONG%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2135850%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20iMX8MM%20keyctl%20add%20trusted%2C%20add_key%3A%20No%20such%20device%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2135850%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%20%3C%2FP%3E%0A%3CP%3E%E5%9C%A8%20MX8MM%20%E4%B8%8A%EF%BC%8CDEK%20blob%20%E5%BF%85%E9%A1%BB%E7%94%B1%E5%9C%A8%20Arm%20TrustZone%20Secure%20World%20%E4%B8%AD%E8%BF%90%E8%A1%8C%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%88%9B%E5%BB%BA%EF%BC%8CCAAM%20%E5%8C%BA%E5%9D%97%E5%9C%A8%E5%B0%81%E8%A3%85%20DEK%20%E6%97%B6%E4%BC%9A%E8%80%83%E8%99%91%20TrustZone%20%E9%85%8D%E7%BD%AE%EF%BC%8C%E7%94%9F%E6%88%90%E7%9A%84%20blob%20%E5%8F%AA%E8%83%BD%E7%94%B1%E8%BF%90%E8%A1%8C%E5%9C%A8%E7%9B%B8%E5%90%8C%E9%85%8D%E7%BD%AE%E4%B8%8B%E7%9A%84%E8%BD%AF%E4%BB%B6%E8%A7%A3%E5%B0%81%E3%80%82%E7%94%B1%E4%BA%8E%20ROM%20%E4%BB%A3%E7%A0%81%E5%9C%A8%20ARM%20TrustZone%20%E5%AE%89%E5%85%A8%E4%B8%96%E7%95%8C%E4%B8%AD%E8%BF%90%E8%A1%8C%EF%BC%8C%E6%88%91%E4%BB%AC%E5%BF%85%E9%A1%BB%E4%BD%BF%E7%94%A8%20OP-TEE%20%E5%B0%81%E8%A3%85%20blob%E3%80%82%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E6%9F%A5%E7%9C%8B%E6%AD%A4%E4%B8%BB%E9%A2%98%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fi-MX-Processors%2FEnabling-OP-TEE-in-i-MX8MM-EVK-FIT-image%2Fm-p%2F1160604%22%20target%3D%22_blank%22%3Ehttps%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fi-MX-Processors%2FEnabling-OP-TEE-in-i-MX8MM-EVK-FIT-image%2Fm-p%2F1160604%3C%2FA%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E6%AD%A4%E8%87%B4%3C%2FP%3E%3C%2FLINGO-BODY%3E