All of lore.kernel.org
 help / color / mirror / Atom feed
From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: linux-integrity@vger.kernel.org
Cc: Mimi Zohar <zohar@linux.ibm.com>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	David Woodhouse <dwmw2@infradead.org>,
	keyrings@vger.kernel.org, David Howells <dhowells@redhat.com>
Subject: [PATCH v10 2/8] oid_registry: Add TCG defined OIDS for TPM keys
Date: Tue, 16 Jun 2020 16:02:23 +0000	[thread overview]
Message-ID: <20200616160229.8018-3-James.Bottomley@HansenPartnership.com> (raw)
In-Reply-To: <20200616160229.8018-1-James.Bottomley@HansenPartnership.com>

The TCG has defined an OID prefix "2.23.133.10.1" for the various TPM
key uses.  We've defined three of the available numbers:

2.23.133.10.1.3 TPM Loadable key.  This is an asymmetric key (Usually
		RSA2048 or Elliptic Curve) which can be imported by a
		TPM2_Load() operation.

2.23.133.10.1.4 TPM Importable Key.  This is an asymmetric key (Usually
		RSA2048 or Elliptic Curve) which can be imported by a
		TPM2_Import() operation.

Both loadable and importable keys are specific to a given TPM, the
difference is that a loadable key is wrapped with the symmetric
secret, so must have been created by the TPM itself.  An importable
key is wrapped with a DH shared secret, and may be created without
access to the TPM provided you know the public part of the parent key.

2.23.133.10.1.5 TPM Sealed Data.  This is a set of data (up to 128
		bytes) which is sealed by the TPM.  It usually
		represents a symmetric key and must be unsealed before
		use.

The ASN.1 binary key form starts of with this OID as the first element
of a sequence, giving the binary form a unique recognizable identity
marker regardless of encoding.

Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Acked-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Reviewed-by: David Howells <dhowells@redhat.com>

---

v3: correct OID_TPMImportableKey name
v7: add ack
v9: add review
---
 include/linux/oid_registry.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/linux/oid_registry.h b/include/linux/oid_registry.h
index 657d6bf2c064..f6e2276e5f30 100644
--- a/include/linux/oid_registry.h
+++ b/include/linux/oid_registry.h
@@ -107,6 +107,11 @@ enum OID {
 	OID_gostTC26Sign512B,		/* 1.2.643.7.1.2.1.2.2 */
 	OID_gostTC26Sign512C,		/* 1.2.643.7.1.2.1.2.3 */
 
+	/* TCG defined OIDS for TPM based keys */
+	OID_TPMLoadableKey,		/* 2.23.133.10.1.3 */
+	OID_TPMImportableKey,		/* 2.23.133.10.1.4 */
+	OID_TPMSealedData,		/* 2.23.133.10.1.5 */
+
 	OID__NR
 };
 
-- 
2.26.2

WARNING: multiple messages have this Message-ID (diff)
From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: linux-integrity@vger.kernel.org
Cc: Mimi Zohar <zohar@linux.ibm.com>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	David Woodhouse <dwmw2@infradead.org>,
	keyrings@vger.kernel.org, David Howells <dhowells@redhat.com>
Subject: [PATCH v10 2/8] oid_registry: Add TCG defined OIDS for TPM keys
Date: Tue, 16 Jun 2020 09:02:23 -0700	[thread overview]
Message-ID: <20200616160229.8018-3-James.Bottomley@HansenPartnership.com> (raw)
In-Reply-To: <20200616160229.8018-1-James.Bottomley@HansenPartnership.com>

The TCG has defined an OID prefix "2.23.133.10.1" for the various TPM
key uses.  We've defined three of the available numbers:

2.23.133.10.1.3 TPM Loadable key.  This is an asymmetric key (Usually
		RSA2048 or Elliptic Curve) which can be imported by a
		TPM2_Load() operation.

2.23.133.10.1.4 TPM Importable Key.  This is an asymmetric key (Usually
		RSA2048 or Elliptic Curve) which can be imported by a
		TPM2_Import() operation.

Both loadable and importable keys are specific to a given TPM, the
difference is that a loadable key is wrapped with the symmetric
secret, so must have been created by the TPM itself.  An importable
key is wrapped with a DH shared secret, and may be created without
access to the TPM provided you know the public part of the parent key.

2.23.133.10.1.5 TPM Sealed Data.  This is a set of data (up to 128
		bytes) which is sealed by the TPM.  It usually
		represents a symmetric key and must be unsealed before
		use.

The ASN.1 binary key form starts of with this OID as the first element
of a sequence, giving the binary form a unique recognizable identity
marker regardless of encoding.

Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Acked-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Reviewed-by: David Howells <dhowells@redhat.com>

---

v3: correct OID_TPMImportableKey name
v7: add ack
v9: add review
---
 include/linux/oid_registry.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/linux/oid_registry.h b/include/linux/oid_registry.h
index 657d6bf2c064..f6e2276e5f30 100644
--- a/include/linux/oid_registry.h
+++ b/include/linux/oid_registry.h
@@ -107,6 +107,11 @@ enum OID {
 	OID_gostTC26Sign512B,		/* 1.2.643.7.1.2.1.2.2 */
 	OID_gostTC26Sign512C,		/* 1.2.643.7.1.2.1.2.3 */
 
+	/* TCG defined OIDS for TPM based keys */
+	OID_TPMLoadableKey,		/* 2.23.133.10.1.3 */
+	OID_TPMImportableKey,		/* 2.23.133.10.1.4 */
+	OID_TPMSealedData,		/* 2.23.133.10.1.5 */
+
 	OID__NR
 };
 
-- 
2.26.2


  parent reply	other threads:[~2020-06-16 16:02 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-16 15:49 [PATCH v10 0/8] TPM 2.0 trusted keys with attached policy James Bottomley
2020-06-16 15:49 ` James Bottomley
2020-06-16 16:02 ` James Bottomley
2020-06-16 16:02   ` James Bottomley
2020-06-16 16:02   ` [PATCH v10 1/8] lib: add ASN.1 encoder James Bottomley
2020-06-16 16:02     ` James Bottomley
2020-06-16 16:02   ` James Bottomley [this message]
2020-06-16 16:02     ` [PATCH v10 2/8] oid_registry: Add TCG defined OIDS for TPM keys James Bottomley
2020-06-17 21:42     ` Jerry Snitselaar
2020-06-17 21:42       ` Jerry Snitselaar
2020-06-18  0:25       ` James Bottomley
2020-06-18  0:25         ` James Bottomley
2020-06-18  7:14         ` Jarkko Sakkinen
2020-06-18  7:14           ` Jarkko Sakkinen
2020-06-18 19:22           ` James Bottomley
2020-06-18 19:22             ` James Bottomley
2020-06-22 22:04             ` Jarkko Sakkinen
2020-06-22 22:04               ` Jarkko Sakkinen
2020-06-16 16:02   ` [PATCH v10 3/8] security: keys: trusted: fix TPM2 authorizations James Bottomley
2020-06-16 16:02     ` James Bottomley
2020-06-16 16:02   ` [PATCH v10 4/8] security: keys: trusted: use ASN.1 TPM2 key format for the blobs James Bottomley
2020-06-16 16:02     ` James Bottomley
2020-06-16 16:02   ` [PATCH v10 5/8] security: keys: trusted: Make sealed key properly interoperable James Bottomley
2020-06-16 16:02     ` James Bottomley
2020-06-17 23:46     ` Jarkko Sakkinen
2020-06-17 23:46       ` Jarkko Sakkinen
2020-06-16 16:02   ` [PATCH v10 6/8] security: keys: trusted: add PCR policy to TPM2 keys James Bottomley
2020-06-16 16:02     ` James Bottomley
2020-06-17 23:44     ` Jarkko Sakkinen
2020-06-17 23:44       ` Jarkko Sakkinen
2020-06-16 16:02   ` [PATCH v10 7/8] security: keys: trusted: add ability to specify arbitrary policy James Bottomley
2020-06-16 16:02     ` James Bottomley
2020-06-17 23:42     ` Jarkko Sakkinen
2020-06-17 23:42       ` Jarkko Sakkinen
2020-06-18  0:27       ` James Bottomley
2020-06-18  0:27         ` James Bottomley
2020-06-18  7:12         ` Jarkko Sakkinen
2020-06-18  7:12           ` Jarkko Sakkinen
2020-06-18 19:45           ` James Bottomley
2020-06-18 19:45             ` James Bottomley
2020-06-23  0:46             ` Jarkko Sakkinen
2020-06-23  0:46               ` Jarkko Sakkinen
2020-06-16 16:02   ` [PATCH v10 8/8] security: keys: trusted: implement counter/timer policy James Bottomley
2020-06-16 16:02     ` James Bottomley

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=20200616160229.8018-3-James.Bottomley@HansenPartnership.com \
    --to=james.bottomley@hansenpartnership.com \
    --cc=dhowells@redhat.com \
    --cc=dwmw2@infradead.org \
    --cc=jarkko.sakkinen@linux.intel.com \
    --cc=keyrings@vger.kernel.org \
    --cc=linux-integrity@vger.kernel.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.