Patents by Inventor Stefan Thom
Stefan Thom has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11966474Abstract: Trusted execution of a workload payload is brokered among multiple trusted execution platforms. The workload payload is received from a source computing system and includes input data, trusted execution code, and one or more trusted execution policies. At least one of the multiple trusted execution platforms is selected based on the one or more trusted execution policies. A brokered payload is generated to include executable trusted execution code and the input data. The brokered payload is communicated to the selected at least one trusted execution platform. A brokered result generated from the brokered payload by the selected at least one trusted execution platform is received. A workload result based on the brokered result is returned to the source computing platform.Type: GrantFiled: November 1, 2021Date of Patent: April 23, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Stefan Thom, Brian Telfer, Deepu C. Thomas
-
Patent number: 11966753Abstract: A storage device for booting a host computing device includes a first storage memory region having a first storage memory controller, a second storage memory region having a second storage memory controller, and a resilient boot controller. The resilient boot controller is configured to store boot code in the first storage memory region, prevent write access by the host computing device through the first storage memory controller to the first storage memory region, detect a reset of the host computing device through the input/output interface, copy at least a portion of the boot code from the first storage memory region to the second storage memory region, responsive to detection of the reset of the host computing device, and enable read access of the copied boot code by the host computing device through the second storage memory controller of the second storage memory region, responsive to the copy operation.Type: GrantFiled: November 2, 2022Date of Patent: April 23, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Stefan Thom, Paul England, Robert Karl Spiger, Brian Telfer, Sangho Lee, Marcus Peinado
-
Patent number: 11792013Abstract: A system manages access to an asset using a separate physical cryptographically-secure key device. A memory stores a public key as an unalterable record. An access configuration controller reads the public key from the memory to control the access to the asset. The public key is cryptographically paired with a private key securely recorded in the separate physical cryptographically-secure key device. The access configuration controller receives an access control change instruction signed by the private key and verifies a valid signing of the access control change instruction by the private key using the public key read from the memory. A storage system secured by the access configuration controller stores access authorization records managing access to the asset. The access configuration controller alters access authorization records according to the access control change instruction, responsive to verification of the valid signing of the access control change instruction.Type: GrantFiled: May 25, 2022Date of Patent: October 17, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Stefan Thom, David Thaler, Torsten Stein
-
Patent number: 11695650Abstract: Inducements are provided to customers to regularly connect back to a service provider and report usage that is expressed using a count of requests from a local computing device for cloud-based operations such as packet routing, container instantiation, virtual machine (VM) utilization, calls to a service or application, and the like. The count information is reported within a secure context, such as a trusted execution environment (TEE), using public-private key pair cryptography by which key derivation is dependent on some form of counting. For example, a customer computing device that is subject to a usage license encrypts an operation count and reports it to the service provider.Type: GrantFiled: February 21, 2021Date of Patent: July 4, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Gerardo Diaz-Cuellar, Stefan Thom, Joerg-Thomas Pfenning
-
Publication number: 20230047247Abstract: A storage device for booting a host computing device includes a first storage memory region having a first storage memory controller, a second storage memory region having a second storage memory controller, and a resilient boot controller. The resilient boot controller is configured to store boot code in the first storage memory region, prevent write access by the host computing device through the first storage memory controller to the first storage memory region, detect a reset of the host computing device through the input/output interface, copy at least a portion of the boot code from the first storage memory region to the second storage memory region, responsive to detection of the reset of the host computing device, and enable read access of the copied boot code by the host computing device through the second storage memory controller of the second storage memory region, responsive to the copy operation.Type: ApplicationFiled: November 2, 2022Publication date: February 16, 2023Applicant: Microsoft Technology Licensing, LLCInventors: Stefan THOM, Paul ENGLAND, Robert Karl SPIGER, Brian TELFER, Sangho LEE, Marcus PEINADO
-
Publication number: 20230035007Abstract: A brownfield security gateway is configured to support a trusted execution environment (TEE) that employs cryptographic and physical security—which forms a trusted cyber physical system—to protect sensitive transmissions on route to a controllable device. The gateway may be implemented with a System on Chip (SoC) that utilizes an application layer gateway to filter content within a transmission. When the application layer gateway authorizes the transmission, the transmission is forwarded to a trusted peripheral device that is configured with communication transport protocols, and the trusted peripheral device transfers the transmission to the controllable device. The trusted peripheral device and the controllable device are physically protected by, for example, protected distribution systems. Accordingly, the trusted peripheral device functions as a gateway between the SoC and the controllable device.Type: ApplicationFiled: May 11, 2022Publication date: February 2, 2023Inventors: Daniel Stelian MIHAI, Brian Clifford TELFER, David Garfield THALER, III, Stefan THOM, Torsten STEIN
-
Publication number: 20220407711Abstract: A system manages access to an asset using a separate physical cryptographically-secure key device. A memory stores a public key as an unalterable record. An access configuration controller reads the public key from the memory to control the access to the asset. The public key is cryptographically paired with a private key securely recorded in the separate physical cryptographically-secure key device. The access configuration controller receives an access control change instruction signed by the private key and verifies a valid signing of the access control change instruction by the private key using the public key read from the memory. A storage system secured by the access configuration controller stores access authorization records managing access to the asset. The access configuration controller alters access authorization records according to the access control change instruction, responsive to verification of the valid signing of the access control change instruction.Type: ApplicationFiled: May 25, 2022Publication date: December 22, 2022Applicant: Microsoft Technology Licensing, LLCInventors: Stefan THOM, David THALER, Torsten STEIN
-
Patent number: 11520596Abstract: A storage device for booting a host computing device includes a first storage memory region having a first storage memory controller, a second storage memory region having a second storage memory controller, and a resilient boot controller. The resilient boot controller is configured to store boot code in the first storage memory region, prevent write access by the host computing device through the first storage memory controller to the first storage memory region, detect a reset of the host computing device through the input/output interface, copy at least a portion of the boot code from the first storage memory region to the second storage memory region, responsive to detection of the reset of the host computing device, and enable read access of the copied boot code by the host computing device through the second storage memory controller of the second storage memory region, responsive to the copy operation.Type: GrantFiled: April 20, 2020Date of Patent: December 6, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Stefan Thom, Paul England, Robert Karl Spiger, Brian Telfer, Sangho Lee, Marcus Peinado
-
Patent number: 11411933Abstract: A brownfield security gateway is configured to support a trusted execution environment (TEE) that employs cryptographic and physical security—which forms a trusted cyber physical system—to protect sensitive transmissions on route to a controllable device. The gateway may be implemented with a System on Chip (SoC) that utilizes an application layer gateway to filter content within a transmission. When the application layer gateway authorizes the transmission, the transmission is forwarded to a trusted peripheral device that is configured with communication transport protocols, and the trusted peripheral device transfers the transmission to the controllable device. The trusted peripheral device and the controllable device are physically protected by, for example, protected distribution systems. Accordingly, the trusted peripheral device functions as a gateway between the SoC and the controllable device.Type: GrantFiled: March 23, 2018Date of Patent: August 9, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Daniel Stelian Mihai, Brian Clifford Telfer, David Garfield Thaler, III, Stefan Thom, Torsten Stein
-
Patent number: 11374760Abstract: A system manages access to an asset using a separate physical cryptographically-secure key device. A memory stores a public key as an unalterable record. An access configuration controller reads the public key from the memory to control the access to the asset. The public key is cryptographically paired with a private key securely recorded in the separate physical cryptographically-secure key device. The access configuration controller receives an access control change instruction signed by the private key and verifies a valid signing of the access control change instruction by the private key using the public key read from the memory. A storage system secured by the access configuration controller stores access authorization records managing access to the asset. The access configuration controller alters access authorization records according to the access control change instruction, responsive to verification of the valid signing of the access control change instruction.Type: GrantFiled: September 13, 2017Date of Patent: June 28, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Stefan Thom, David Thaler, Torsten Stein
-
Patent number: 11328050Abstract: Trusted agents operating within a trusted execution environment (TEE) of a client computing device are configured with complex computational puzzles (e.g., hash functions or other proof of work puzzles) for a remote service to solve before the trusted agent executes an operation. The trusted agent may have a policy that the puzzle is associated with, in which the policy defines a statistically defined time period over which puzzles are solved. The statistically defined time period is effectuated through parameters which control a complexity of the puzzle. Malware or bad actors that attempt to misuse the trusted agent are throttled until the remote service solves the puzzle, which is configured with a level of complexity that takes the statistically defined time period.Type: GrantFiled: March 4, 2019Date of Patent: May 10, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Stefan Thom, Brian Clifford Telfer
-
Patent number: 11316693Abstract: A provisioning service operating on a remote server is configured to handle provisioning of Internet of Things (IoT) devices, in which IoT devices are configured to execute policies provided by the provisioning service to self-regulate access to an IoT portal. The provisioning service generates an access token and policy which are unique to a trusted platform module (TPM) for a respective IoT device. The TPM executes the policy upon each instance in which the IoT device requires authorization to perform an operation or access the IoT portal. The policy may be configured according to a prepaid or postpaid model. In both models a local counter within the TPM of the IoT device may increment upon each instance of authorization. Under the prepaid model the IoT device may acquire a set number of uses, and under the postpaid model a statement may be generated based on prior usage.Type: GrantFiled: May 14, 2018Date of Patent: April 26, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Brian Clifford Telfer, Stefan Thom, Torsten Stein
-
Patent number: 11316694Abstract: A computing device's trusted platform module (TPM) is configured with a cryptographic watchdog timer which forces a device reset if the TPM fails to solve a cryptographic challenge before the expiration of the timer. The computing device's TPM is configured to generate the cryptographic challenge, to which the computing device does not possess the cryptographic token for resolution. While the watchdog timer counts down, the computing device requests a cryptographic token from a remote service to solve the challenge. The remote service transmits the cryptographic token to the computing device so long as the remote service identifies no reason to withhold the token, such as the computing device being infected with malware. The interoperability of the computing device and remote service enables the remote service to exercise control and reset capabilities over the computing device.Type: GrantFiled: March 27, 2019Date of Patent: April 26, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Stefan Thom, Brian Clifford Telfer, Paul England, Dennis James Mattoon, Marcus Peinado
-
Publication number: 20220060455Abstract: An edge computing device includes a System-on-Module (SoM) device that communicates over USB to provide security and provides hardware artificial intelligence acceleration and hardware encryption to the edge computing device. The SoM device includes a hardware encryption module with an encryption key shared between the SoM device and the cloud server that creates an identity for the SoM device and secure authentication of the identity of the SoM device between the SoM device and a cloud server. The hardware encryption module is configured to have a secure root of trust, the ability to attest software containers distributed from the cloud server, and protect data processed on the SoM device and transmitted to the cloud server.Type: ApplicationFiled: December 18, 2020Publication date: February 24, 2022Applicant: Microsoft Technology Licensing, LLCInventors: Daniel ROSENSTEIN, David R. JACOBS, Christopher John MCMILLAN, Sven GRUENITZ, Daniel G. O'NEIL, Mohammad TANABIAN, Justin P. CAMPBELL, Abhilash IYER, Stefan THOM, Yong DING, Jayachandra GULLAPALLI, Baoxi JIA, Travis Jon PERRY, Robyn E. DUNN, Kalpesh Sudhaker PATEL
-
Publication number: 20220058268Abstract: Trusted execution of a workload payload is brokered among multiple trusted execution platforms. The workload payload is received from a source computing system and includes input data, trusted execution code, and one or more trusted execution policies. At least one of the multiple trusted execution platforms is selected based on the one or more trusted execution policies. A brokered payload is generated to include executable trusted execution code and the input data. The brokered payload is communicated to the selected at least one trusted execution platform. A brokered result generated from the brokered payload by the selected at least one trusted execution platform is received. A workload result based on the brokered result is returned to the source computing platform.Type: ApplicationFiled: November 1, 2021Publication date: February 24, 2022Inventors: Stefan THOM, Brian TELFER, Deepu C. THOMAS
-
Patent number: 11190356Abstract: Before a composition is ingested into a runtime environment at a runtime device, the composition may be verified at an authoring trusted execution environment (TEE) operating on an authoring device. A user can operate an untrusted computing platform (e.g., a personal computer, laptop computer, tablet computer, etc.) to write code, generate data, or create some other composition. Since this composition is created on an untrusted device, the authoring TEE may output the composition on a trusted peripheral device to a user for review and approval. Responsive to receiving approval at the trusted peripheral device, the authoring TEE can sign the composition with a local key and forward the composition for execution by the runtime device. The signature can be utilized by the runtime device to prove that it was reviewed and verified by an authorized user operating the authoring device.Type: GrantFiled: March 8, 2019Date of Patent: November 30, 2021Assignee: Microsoft Technology Licensing, LLCInventors: David Garfield Thaler, III, Stefan Thom, Brian Clifford Telfer
-
Patent number: 11182484Abstract: Trusted execution of a workload payload is brokered among multiple trusted execution platforms. The workload payload is received from a source computing system and includes input data, trusted execution code, and one or more trusted execution policies. At least one of the multiple trusted execution platforms is selected based on the one or more trusted execution policies. A brokered payload is generated to include executable trusted execution code and the input data. The brokered payload is communicated to the selected at least one trusted execution platform. A brokered result generated from the brokered payload by the selected at least one trusted execution platform is received. A workload result based on the brokered result is returned to the source computing platform.Type: GrantFiled: December 31, 2018Date of Patent: November 23, 2021Assignee: Microsoft Technology Licensing LLCInventors: Stefan Thom, Brian Telfer, Deepu C. Thomas
-
Publication number: 20210263746Abstract: A storage device for booting a host computing device includes a first storage memory region having a first storage memory controller, a second storage memory region having a second storage memory controller, and a resilient boot controller. The resilient boot controller is configured to store boot code in the first storage memory region, prevent write access by the host computing device through the first storage memory controller to the first storage memory region, detect a reset of the host computing device through the input/output interface, copy at least a portion of the boot code from the first storage memory region to the second storage memory region, responsive to detection of the reset of the host computing device, and enable read access of the copied boot code by the host computing device through the second storage memory controller of the second storage memory region, responsive to the copy operation.Type: ApplicationFiled: April 20, 2020Publication date: August 26, 2021Inventors: Stefan THOM, Paul ENGLAND, Robert Karl SPIGER, Brian TELFER, Sangho LEE, Marcus PEINADO
-
Publication number: 20210176141Abstract: Inducements are provided to customers to regularly connect back to a service provider and report usage that is expressed using a count of requests from a local computing device for cloud-based operations such as packet routing, container instantiation, virtual machine (VM) utilization, calls to a service or application, and the like. The count information is reported within a secure context, such as a trusted execution environment (TEE), using public-private key pair cryptography by which key derivation is dependent on some form of counting. For example, a customer computing device that is subject to a usage license encrypts an operation count and reports it to the service provider.Type: ApplicationFiled: February 21, 2021Publication date: June 10, 2021Inventors: Gerardo DIAZ-CUELLAR, Stefan THOM, Joerg-Thomas PFENNING
-
Patent number: 10965551Abstract: Inducements are provided to customers to regularly connect back to a service provider and report usage that is expressed using a count of requests from a local computing device for cloud-based operations such as packet routing, container instantiation, virtual machine (VM) utilization, calls to a service or application, and the like. The count information is reported within a secure context, such as a trusted execution environment (TEE), using public-private key pair cryptography by which key derivation is dependent on some form of counting. For example, a customer computing device that is subject to a usage license encrypts an operation count and reports it to the service provider.Type: GrantFiled: November 21, 2018Date of Patent: March 30, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Gerardo Diaz-Cuellar, Stefan Thom, Joerg-Thomas Pfenning