On Thu, Aug 06, 2020 at 06:00:02PM +0100, Darren Kenny wrote: > On Thursday, 2020-07-16 at 16:52:54 +03, Jarkko Sakkinen wrote: > > Provisioning Certification Enclave (PCE), the root of trust for other > > enclaves, generates a signing key from a fused key called Provisioning > > Certification Key. PCE can then use this key to certify an attestation key > > of a Quoting Enclave (QE), e.g. we get the chain of trust down to the > > hardware if the Intel signed PCE is used. > > > > To use the needed keys, ATTRIBUTE.PROVISIONKEY is required but should be > > only allowed for those who actually need it so that only the trusted > > parties can certify QE's. > > > > Obviously the attestation service should know the public key of the used > > PCE and that way detect illegit attestation, but whitelisting the legit > > users still adds an additional layer of defence. > > > > Add new device file called /dev/sgx/provision. The sole purpose of this > > file is to provide file descriptors that act as privilege tokens to allow > > to build enclaves with ATTRIBUTE.PROVISIONKEY set. A new ioctl called > > SGX_IOC_ENCLAVE_SET_ATTRIBUTE is used to assign this token to an enclave. > > > > Cc: linux-security-module@xxxxxxxxxxxxxxx > > Acked-by: Jethro Beekman <jethro@xxxxxxxxxxxx> > > Suggested-by: Andy Lutomirski <luto@xxxxxxxxxx> > > Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> > > Reviewed-by: Darren Kenny <darren.kenny@xxxxxxxxxx> Thanks, I added your tags to the corresponding commits. /Jarkko