Re: [PATCH v2] Instantiate key with user-provided decrypted data.
From: Mimi Zohar <zohar@linux.ibm.com>
Date: 2021-12-14 12:38:02
Also in:
keyrings, linux-doc, linux-integrity, lkml
From: Mimi Zohar <zohar@linux.ibm.com>
Date: 2021-12-14 12:38:02
Also in:
keyrings, linux-doc, linux-integrity, lkml
Hi Yael, On Mon, 2021-12-13 at 14:20 -0500, Yael Tiomkin wrote:
The encrypted.c class supports instantiation of encrypted keys with either an already-encrypted key material, or by generating new key material based on random numbers. To support encryption of user-provided decrypted data, this patch defines a new datablob format: [<format>] <master-key name> <decrypted data length> <decrypted data>. Signed-off-by: Yael Tiomkin <redacted>
Other than the comment below,
Reviewed-by: Mimi Zohar [off-list ref]
Could you also provide an LTP test for defining, exporting, and loading
an encrypted key based on user provided key data?
thanks,
Mimi
---
@@ -303,6 +306,16 @@ Load an encrypted key "evm" from saved blob:: 82dbbc55be2a44616e4959430436dc4f2a7a9659aa60bb4652aeb2120f149ed197c564e0 24717c64 5972dcb82ab2dde83376d82b2e3c09ffc +Instantiate an encrypted key "evm" using user-provided decrypted data:: + + $ keyctl add encrypted evm "new default user:kmk 32 `cat evm.blob`" @u + 794890253
The existing references to "evm.blob" refer to the encrypted key data. Here "evm.blob" is unencrypted data. Perhaps name it something like "evm.user-provided-data" data.
+ + $ keyctl print 794890253 + default user:kmk 32 2375725ad57798846a9bbd240de8906f006e66c03af53b1b382d + bbc55be2a44616e4959430436dc4f2a7a9659aa60bb4652aeb2120f149ed197c564e0247 + 17c64 5972dcb82ab2dde83376d82b2e3c09ffc +