-
公开(公告)号:US20230020838A1
公开(公告)日:2023-01-19
申请号:US17374900
申请日:2021-07-13
Applicant: Microsoft Technology Licensing, LLC
Inventor: Stavros VOLOS , Colin DOAK , Simon Douglas CHAMBERS , David RUGGLES , Richard NEAL , Cédric Alain Marie FOURNET , Kapil VASWANI , Balaji VEMBU
IPC: G06F21/57 , G06F9/4401
Abstract: In various examples there is a computing device comprising: a first microcontroller comprising a first immutable bootloader and first mutable firmware. The first immutable bootloader uses a unique device secret burnt into hardware of the computing device in order to generate an attestation of the first mutable firmware. The computing device has a second microcontroller. There is second mutable firmware at the second microcontroller. There is a second immutable bootloader at the second microcontroller which sends a measurement of the second mutable firmware to the first immutable bootloader whenever the second microcontroller restarts, such that the first microcontroller is able to include the measurement in the attestation.
-
公开(公告)号:US20220222348A1
公开(公告)日:2022-07-14
申请号:US17148548
申请日:2021-01-13
Applicant: Microsoft Technology Licensing, LLC
Inventor: Kapil VASWANI , Cédric Alain Marie FOURNET , Stavros VOLOS
Abstract: In various examples there is a method of enabling an attestable update of a firmware layer that provides a unique identity of a computing device. The method comprises using an immutable firmware layer to access a unique device secret. The immutable layer is used to derive a hardware device identity (HDI) from the unique device secret. The immutable layer is used to derive a compound device identity (CDI) from a measurement of the firmware layer and the unique device secret. The CDI and HDI are made available to the firmware layer. The firmware layer is used to issue a local certificate to endorse a device identity key, derived from the CDI, the local certificate signed by a key derived from the HDI.
-
公开(公告)号:US20240160795A1
公开(公告)日:2024-05-16
申请号:US18419359
申请日:2024-01-22
Applicant: Microsoft Technology Licensing, LLC
Inventor: Stavros VOLOS , David Thomas CHISNALL , Saurabh Mohan KULKARNI , Kapil VASWANI , Manuel COSTA , Samuel Alexander WEBSTER , Cédric Alain Marie FOURNET , Richard OSBORNE , Daniel John Pelham WILKINSON , Graham Bernard CUNNINGHAM
CPC classification number: G06F21/85 , G06F21/602 , H04L9/30 , H04L9/3265
Abstract: A peripheral device, for use with a host, comprises one or more compute elements a security module and at least one encryption unit. The security module is configured to form a trusted execution environment on the peripheral device for processing sensitive data using sensitive code. The sensitive data and sensitive code are provided by a trusted computing entity which is in communication with the host computing device. The at least one encryption unit is configured to encrypt and decrypt data transferred between the trusted execution environment and the trusted computing entity via the host computing device. The security module is configured to compute and send an attestation to the trusted computing entity to attest that the sensitive code is in the trusted execution environment.
-
公开(公告)号:US20230342121A1
公开(公告)日:2023-10-26
申请号:US18005246
申请日:2021-07-13
Applicant: Microsoft Technology Licensing, LLC
Inventor: Daniel John Pelham WILKINSON , Richard OSBORNE , Graham Bernard CUNNINGHAM , Kenneth GORDON , Samuel Alexander WEBSTER , Stavros VOLOS , Kapil VASWANI , Balaji VEMBU , Cédric Alain Marie FOURNET
IPC: G06F8/41
CPC classification number: G06F8/41
Abstract: A processing system comprising one or more chips, each comprising a plurality of tiles is described. Each tile comprises a respective processing unit and memory, the memory storing a codelet. The processing system has at least one encryption unit configured to encrypt and decrypt data transferred between the tiles and a trusted computing entity via an external computing device. The codelets are configured to instruct the tiles to transfer the encrypted data by reading from and writing to a plurality of memory regions at the external memory such that a plurality of streams of encrypted data are formed, each stream using an individual one of the memory regions at the external computing device.
-
公开(公告)号:US20210342492A1
公开(公告)日:2021-11-04
申请号:US17374942
申请日:2021-07-13
Applicant: Microsoft Technology Licensing, LLC
Inventor: Stavros VOLOS , David Thomas CHISNALL , Saurabh Mohan KULKARNI , Kapil VASWANI , Manuel COSTA , Samuel Alexander WEBSTER , Cédric Alain Marie FOURNET , Richard OSBORNE , Daniel John Pelham WILKINSON , Graham Bernard CUNNINGHAM
Abstract: A peripheral device, for use with a host, comprises one or more compute elements a security module and at least one encryption unit. The security module is configured to form a trusted execution environment on the peripheral device for processing sensitive data using sensitive code. The sensitive data and sensitive code are provided by a trusted computing entity which is in communication with the host computing device. The at least one encryption unit is configured to encrypt and decrypt data transferred between the trusted execution environment and the trusted computing entity via the host computing device. The security module is configured to compute and send an attestation to the trusted computing entity to attest that the sensitive code is in the trusted execution environment.
-
公开(公告)号:US20210004469A1
公开(公告)日:2021-01-07
申请号:US16503455
申请日:2019-07-03
Applicant: Microsoft Technology Licensing, LLC
Inventor: David Thomas CHISNALL , Cédric Alain Marie FOURNET , Manuel COSTA , Samuel Alexander WEBSTER , Sylvan CLEBSCH , Kapil VASWANI
Abstract: A computer system has a separation mechanism which enforces separation between at least two execution environments such that one execution environment is a gatekeeper which interposes on all communications of the other execution environment. The computer system has an attestation mechanism which enables the gatekeeper to attest to properties of the at least two execution environments. A first one of the execution environments runs application specific code which may contain security vulnerabilities. The gatekeeper is configured to enforce an input output policy on the first execution environment by interposing on all communication to and from the first execution environment by forwarding, modifying or dropping individual ones of the communications according to the policy. The gatekeeper provides evidence of attestation both for the application specific code and the policy.
-
-
-
-
-