Secure public key acceleration

US9547778B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9547778-B1
Application numberUS-201414498820-A
CountryUS
Kind codeB1
Filing dateSep 26, 2014
Priority dateSep 26, 2014
Publication dateJan 17, 2017
Grant dateJan 17, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In an embodiment, a system is provided in which the private key is managed in hardware and is not visible to software. The system may provide hardware support for public key generation, digital signature generation, encryption/decryption, and large random prime number generation without revealing the private key to software. The private key may thus be more secure than software-based versions. In an embodiment, the private key and the hardware that has access to the private key may be integrated onto the same semiconductor substrate as an integrated circuit (e.g. a system on a chip (SOC)). The private key may not be available outside of the integrated circuit, and thus a nefarious third party faces high hurdles in attempting to obtain the private key.

First claim

Opening claim text (preview).

What is claimed is: 1. An integrated circuit comprising: at least one first processor; a security circuit coupled to the first processor, wherein: the security circuit is isolated from access by the first processor except through a secure mailbox mechanism; the security circuit comprises at least one second processor, a memory, and at least one public key circuit; the second processor is configured to process commands from the secure mailbox; the second processor is configured to invoke the public key circuit in response to a first command that involves a private key maintained by the security circuit; the private key is isolated from access by the second processor; the private key is accessible to the public key circuit and the public key circuit is configured to perform one or more cryptographic operations using the private key; the public key circuit is configured to write data to the memory during processing of the first command; the public key circuit is configured to overwrite the data in the memory at completion of the first command; the public key circuit includes a sequencer and at least one other circuit coupled to the memory; the sequencer is configured to generate a plurality of subcommands in response to the first command; and at least one of the plurality of subcommands is performed by the other circuit. 2. The integrated circuit as recited in claim 1 , wherein the plurality of subcommands include at least a first subcommand that overwrites the data in the memory at completion of the first command, and wherein the first subcommand is performed subsequent to other subcommands of the plurality of subcommands that implement the first command. 3. The integrated circuit as recited in claim 2 wherein the first subcommand zeros the data. 4. The integrated circuit as recited in claim 1 , wherein the security circuit comprises at least one additional security peripheral coupled to the public key circuit, and wherein at least a second subcommand of the plurality of subcommands is performed by the additional security peripheral, and wherein the sequencer is configured to arbitrate with the second processor for access to the additional security peripheral to perform the second subcommand. 5. The integrated circuit as recited in claim 4 , wherein the additional security peripheral comprises a random number generator circuit. 6. The integrated circuit as recited in claim 4 , wherein the additional security peripheral comprises an authentication circuit. 7. The integrated circuit as recited in claim 1 , wherein the plurality of subcommands include at least a first subcommand that causes an interrupt of the second processor at a completion of the plurality of subcommands. 8. A device comprising: a system on a chip (SOC) including at least a first processor that serves as a central processing unit (CPU) of the device, the SOC further including a security circuit coupled to the first processor, wherein the security circuit includes a first key that is inaccessible to instructions executed on any processor in the SOC, and the security circuit including a public key circuit that includes a sequencer and at least one other circuit, wherein the sequencer is configured to generate a plurality of subcommands in response to a command mapped to the public key circuit, and at least one of the plurality of subcommands is performed by the other circuit; and a biometric sensor coupled to the SOC and configured to sense biometric information for an authorized user of the device, wherein: the biometric sensor and the SOC are configured to interoperate responsive to authenticating each other based on the first key; the security circuit is configured to authenticate the biometric sensor on behalf of the SOC using the first key; and interoperating between the SOC and the biometric sensor includes the SOC accepting biometric information from the biometric sensor subsequent to the security circuit authenticating the biometric sensor using the first key. 9. The device as recited in claim 8 , wherein the biometric sensor comprises a fingerprint sensor. 10. The device as recited in claim 8 wherein, responsive to user information input to the biometric sensor, the device is configured to validate the user. 11. The device as recited in claim 10 , wherein the device prevents access responsive to a user validation failure. 12. The device as recited in claim 10 , wherein the device permits access responsive to a user validation success. 13. The device as recited in claim 12 , wherein the device is configured communicate with another secure element, and wherein the security circuit is configured to confirm an identity of the user to the secure element responsive to the user validation success. 14. A method comprising: receiving a command in a secure mailbox mechanism in a security circuit within a system on a chip (SOC); determining that the command is mapped to a public key acceleration circuit in the security circuit; issuing the command to the public key acceleration circuit; performing the command by the public key acceleration circuit, wherein: the public key acceleration circuit has access to a private key to perform the command; the private key is inaccessible to software executable within the SOC, including software executed by a processor with the security circuit that performs the determining that the command is mapped to the public key acceleration circuit; and performing the command comprises performing one or more cryptographic operations using the private key; the public key acceleration circuit includes a sequencer and at least one other circuit; the sequencer is configured to generate a plurality of subcommands in response to the command; and at least one of the plurality of subcommands is performed by the other circuit; reading a result from the public key acceleration circuit by the processor; and transmitting the result through the secure mailbox mechanism by the processor. 15. The method as recited in claim 14 , wherein the command is part of authenticating the SOC to another secure circuit in a device with the SOC. 16. The method as recited in claim 15 , wherein the secure circuit comprises a biometric sensor, and the method further comprises: capturing biometric data from a user via the biometric sensor; verifying that the user has access to the device responsive to the biometric data; and permitting access to the device by the user responsive to the verifying. 17. The method as recited in claim 16 further comprising: communicating between the device and an external secure element; and confirming the user's identity to the external secure element by the device responsive to the verifying that the user has access. 18. The method as recited in claim 17 further comprising: storing data that is associated with the device by the external secure element; and transmitting the data to the device responsive to the confirming. 19. The method as recited in claim 18 further comprising validating the device at the external secure element prior to accepting the confirming of the user's identity from the device.

Assignees

Inventors

Classifications

  • Biological data, e.g. fingerprint, voice or retina (network architectures or network communication protocols for supporting authentication of entities using biometrical features in a packet data network H04L63/0861) · CPC title

  • Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system (cryptographic typewriters G09C3/00) · CPC title

  • involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics · CPC title

  • Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy · CPC title

  • using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9547778B1 cover?
In an embodiment, a system is provided in which the private key is managed in hardware and is not visible to software. The system may provide hardware support for public key generation, digital signature generation, encryption/decryption, and large random prime number generation without revealing the private key to software. The private key may thus be more secure than software-based versions. …
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification G06F21/71. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 17 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).