linux-integrity.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nayna <nayna@linux.vnet.ibm.com>
To: Stefan Berger <stefanb@linux.ibm.com>,
	linux-integrity@vger.kernel.org, keyrings@vger.kernel.org
Cc: linux-security-module@vger.kernel.org,
	David Howells <dhowells@redhat.com>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	Mimi Zohar <zohar@linux.ibm.com>,
	Nayna Jain <nayna@linux.ibm.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2/5] keys: generate self-signed module signing key using CSR
Date: Thu, 18 Feb 2021 17:02:53 -0500	[thread overview]
Message-ID: <92dcd8a4-4cb8-e0d0-56cb-e3c0736278ce@linux.vnet.ibm.com> (raw)
In-Reply-To: <c9e509fb-59df-28b4-654c-543cd922239c@linux.ibm.com>


On 2/11/21 5:01 PM, Stefan Berger wrote:
> On 2/11/21 2:54 PM, Nayna Jain wrote:
>> Loading a key on the IMA trusted keyring requires the key be signed
>> by an existing key on the builtin or secondary trusted keyring.
>> Creating a Certificate Signing Request (CSR) allows the certificate
>> to be self-signed or signed by a CA.
>>
>> This patch generates a self-signed module signing key using CSR.
>>
>> Signed-off-by: Nayna Jain <nayna@linux.ibm.com>
>> ---
>>   Makefile       |  3 ++-
>>   certs/Makefile | 15 +++++++++++----
>>   2 files changed, 13 insertions(+), 5 deletions(-)
>>
>> diff --git a/Makefile b/Makefile
>> index af18aab6bbee..9c87fdd600d8 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -1473,7 +1473,8 @@ MRPROPER_FILES += include/config 
>> include/generated          \
>>             .config .config.old .version \
>>             Module.symvers \
>>             certs/signing_key.pem certs/signing_key.x509 \
>> -          certs/x509.genkey \
>> +          certs/x509.genkey certs/signing_key.key \
>> +          certs/signing_key.crt certs/signing_key.csr \
>>             vmlinux-gdb.py \
>>             *.spec
>>   diff --git a/certs/Makefile b/certs/Makefile
>> index f4c25b67aad9..b2be7eb413d3 100644
>> --- a/certs/Makefile
>> +++ b/certs/Makefile
>> @@ -60,11 +60,18 @@ $(obj)/signing_key.pem: $(obj)/x509.genkey
>>       @$(kecho) "### needs to be run as root, and uses a hardware 
>> random"
>>       @$(kecho) "### number generator if one is available."
>>       @$(kecho) "###"
>> -    $(Q)openssl req -new -nodes -utf8 -$(CONFIG_MODULE_SIG_HASH) 
>> -days 36500 \
>> -        -batch -x509 -config $(obj)/x509.genkey \
>> -        -outform PEM -out $(obj)/signing_key.pem \
>> -        -keyout $(obj)/signing_key.pem \
>> +    $(Q)openssl req -new -nodes -utf8 \
>> +        -batch -config $(obj)/x509.genkey \
>> +        -outform PEM -out $(obj)/signing_key.csr \
>> +        -keyout $(obj)/signing_key.key -extensions myexts \
>>           $($(quiet)redirect_openssl)
>> +    $(Q)openssl x509 -req -days 36500 -in $(obj)/signing_key.csr \
>> +        -outform PEM -out $(obj)/signing_key.crt \
>> +        -signkey $(obj)/signing_key.key \
>> +        -$(CONFIG_MODULE_SIG_HASH) -extensions myexts \
>> +        -extfile $(obj)/x509.genkey \
>> +        $($(quiet)redirect_openssl)
>> +    @cat $(obj)/signing_key.key $(obj)/signing_key.crt >> 
>> $(obj)/signing_key.pem
>
>
> Could you not just rename signing_key.key to signing_key.pem (as it 
> was before) and that would be it? Why do you need the .crt in that pem 
> bundle?

I had also thought so, but the PEM file contains both the private key 
and the certificate. I found the reasoning in the commit "fb1179499134 
modsign: Use single PEM file for autogenerated key". I addressed your 
other feedback in v2, posted just now.

Thanks & Regards,

       - Nayna


  reply	other threads:[~2021-02-18 22:04 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-11 19:54 [PATCH 0/5] ima: kernel build support for loading the kernel module signing key Nayna Jain
2021-02-11 19:54 ` [PATCH 1/5] keys: cleanup build time module signing keys Nayna Jain
2021-02-11 21:57   ` Stefan Berger
2021-02-12 21:33     ` Nayna
2021-02-12 23:47   ` Jarkko Sakkinen
2021-02-11 19:54 ` [PATCH 2/5] keys: generate self-signed module signing key using CSR Nayna Jain
2021-02-11 22:01   ` Stefan Berger
2021-02-18 22:02     ` Nayna [this message]
2021-02-12 23:47   ` Jarkko Sakkinen
2021-02-11 19:54 ` [PATCH 3/5] ima: update kernel module signing process during build Nayna Jain
2021-02-11 19:54 ` [PATCH 4/5] keys: define build time generated ephemeral kernel CA key Nayna Jain
2021-02-11 22:13   ` Stefan Berger
2021-02-11 23:25     ` Mimi Zohar
2021-02-12  3:30   ` kernel test robot
2021-02-12  8:25   ` kernel test robot
2021-02-11 19:54 ` [PATCH 5/5] ima: enable loading of build time generated key to .ima keyring Nayna Jain
2021-02-11 22:32   ` Stefan Berger
2021-02-12 23:48   ` Jarkko Sakkinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=92dcd8a4-4cb8-e0d0-56cb-e3c0736278ce@linux.vnet.ibm.com \
    --to=nayna@linux.vnet.ibm.com \
    --cc=dhowells@redhat.com \
    --cc=jarkko.sakkinen@linux.intel.com \
    --cc=keyrings@vger.kernel.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=nayna@linux.ibm.com \
    --cc=stefanb@linux.ibm.com \
    --cc=zohar@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).