From: Dave Jiang <dave.jiang@intel.com>
To: Mimi Zohar <zohar@linux.ibm.com>,
Dan Williams <dan.j.williams@intel.com>
Cc: Mimi Zohar <zohar@linux.vnet.ibm.com>,
linux-nvdimm <linux-nvdimm@lists.01.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
keyrings@vger.kernel.org
Subject: Re: [PATCH 02/11] libnvdimm/security: change clear text nvdimm keys to encrypted keys
Date: Mon, 12 Nov 2018 08:42:43 -0700 [thread overview]
Message-ID: <bf917ee9-1795-9c10-ecec-28c7d5d68345@intel.com> (raw)
In-Reply-To: <1541966975.3734.78.camel@linux.ibm.com>
On 11/11/2018 1:09 PM, Mimi Zohar wrote:
>>> Traditionally there is a single master key for the system, which would
>>> be sealed to a set of boot time PCR values. After decrypting all of
>>> the encrypted keys, the master key would be removed from the keyring
>>> and a PCR extended. Extending a PCR would prevent the master key from
>>> being unsealed again and used to decrypt encrypted keys, without
>>> rebooting the system. Normally this would be done before pivoting
>>> root.
>>>
>>> If you're not referring to the system master key and are intentionally
>>> limiting usage to TPM 2.0, more details on the master key security
>>> requirements should be included.
>> Oh, interesting point. I think we had been assuming a local +
>> unsealed-at-runtime nvdimm master key rather than a system-wide master
>> key. Yes, we need to rethink this in terms of supporting a sealed
>> system-key. This would seem to limit security actions, outside of
>> unlock, to always requiring a reboot. I.e. the nominal case is that we
>> boot up and unlock the DIMMs, but any subsequent security operation
>> like erase, or change-passphrase would require rebooting into an
>> environment where the system-master key is unsealed. I do think
>> re-provisioning keys and erasing DIMM contents are sufficiently
>> exceptional events that a reboot requirement is tolerable.
>> Is there already existing tooling around this to be able to schedule
>> master-key related actions to be deferred to an initrd environment?
> There's the original dracut support for loading a masterkey, which is
> used by the EVM and ecryptfs dracut modules. After the last usage,
> the masterkey needs to be removed from the keyring.
How does one generate new encrypted keys with the system masterkey
removed from the keyring?
>
> Different people over the years have wanted to add support for
> calculating the boot time expected PCRs values in order to reseal keys
> (trusted key update), but I haven't looked to see if there are any
> open source tools available.
>
> Mimi
>
next prev parent reply other threads:[~2018-11-12 15:42 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <154180093865.70506.6858789591063128903.stgit@djiang5-desk3.ch.intel.com>
[not found] ` <154180163666.70506.8805433934495072699.stgit@djiang5-desk3.ch.intel.com>
[not found] ` <1541957268.3734.53.camel@linux.ibm.com>
2018-11-11 19:20 ` Dan Williams
2018-11-11 20:09 ` Mimi Zohar
2018-11-12 15:42 ` Dave Jiang [this message]
2018-11-12 18:49 ` Mimi Zohar
2018-11-12 20:13 ` Dave Jiang
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=bf917ee9-1795-9c10-ecec-28c7d5d68345@intel.com \
--to=dave.jiang@intel.com \
--cc=dan.j.williams@intel.com \
--cc=keyrings@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvdimm@lists.01.org \
--cc=zohar@linux.ibm.com \
--cc=zohar@linux.vnet.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
Powered by JetHome