# US 2025/0094602 A1 · Silicon Key Exchange

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2025/0094602 A1
- Document ID: US20250094602A1
- Status: Published application
- Kind: A1
- Application number: 18/541,961
- Filed: 2023-12-15
- Published: 2025-03-20
- Earliest claimed: 2023-09-19
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Thomas P. Mensch; Elad Efrat; David Tamagno; Armaiti Ardeshiricham; Wade Benson; Yannick L. Sierra
- Web page: https://patentgrep.com/patent/US20250094602A1

## CPC

- H04L 9/083: {involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]}
- G06F 21/602: {Providing cryptographic facilities or services}
- G06F 21/606: {by securing the transmission between two devices or processes}
- G06F 21/72: in cryptographic circuits
- H04L 9/0825: {using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates}
- H04L 9/0833: {involving conference or group key (network architectures or network communication protocols for key management in group communication in a packet data network H04L63/065)}
- H04L 9/0841: {involving Diffie-Hellman or related key agreement protocols}
- H04L 9/0891: {Revocation or update of secret information, e.g. encryption key update or rekeying}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Techniques are disclosed relating to cryptographic key exchanges. In some embodiments, a computing device includes a cryptographic circuit coupled to a secure memory inaccessible to a processor of the computing device. Program instructions executing on the computing device can request performance of a key exchange to establish a shared secret with another device. The cryptographic circuit is configured to perform the key exchange including deriving the shared secret using private key material maintained in the secure memory. In some embodiments, the key exchange includes verifying a key authorization data structure issued by a key authority including a first public key of a first participant authority and a second public key of a second participant authority. In response to the verifying being successful, the exchange uses a public key pair attested to by the first participant authority as belonging to a member in the first device group.

## Claims

### Claim 1

A computing device, comprising:
a processor;
memory accessible to the processor and having program instructions stored therein that are executable by the processor to:
request performance of a key exchange to establish a shared secret with another device; and
a cryptographic circuit coupled to a secure memory inaccessible to the processor, wherein the cryptographic circuit is configured to:
perform the key exchange including deriving the shared secret using private key material maintained in the secure memory.

### Claim 2 (depends on 1)

The computing device of claim 1, further comprising:
a read only memory (ROM) having immutable program instructions stored therein that are executable by the cryptographic circuit to perform the key exchange.

### Claim 3 (depends on 1)

The computing device of claim 1, wherein the cryptographic circuit is configured to:
execute a sequence of program instructions in a particular order to perform the key exchange; and
prevent out of order execution of the sequence by clearing, in response to receiving a given program instruction in the sequence, a portion of the secure memory used by the next program instruction in the particular order.

### Claim 4 (depends on 1)

The computing device of claim 1, wherein performing the key exchange includes:
verifying, by the cryptographic circuit, a key authorization data structure received from a key authority to indicate that the computing device is authorized to participate in a key exchange with the other device, wherein the key authorization data structure includes a public key associated with the computing device and a public key associated with the other device.

### Claim 5 (depends on 4)

The computing device of claim 4, wherein the key authorization data structure indicates an authorization for a key exchange between a first device group and a second device group;
wherein the public key associated with the computing device is of a first participant authority authorized to identify the computing device as a member of the first device group; and
wherein the public key associated with the other device is of a second participant authority authorized to identify the other device as a member of the second device group.

### Claim 6 (depends on 4)

The computing device of claim 4, wherein program instructions are executable by the processor to:
receiving a disaster recovery (DR) key pair generated by the key authority in response to issuing the key authorization data structure; and
in response to the key authority being subsequently revoked, using the DR key pair to establish another key authority.

### Claim 7 (depends on 4)

The computing device of claim 4, wherein the private key material includes a public key pair attested to using a private key of one of the public keys in the key authorization data structure; and
wherein deriving the shared secret includes:
performing Elliptic-curve Diffie-Hellman (ECDH) using the private key material.

### Claim 8 (depends on 1)

The computing device of claim 1, wherein program instructions are executable by the processor to:
exchange with the other device a symmetric key encrypted using the derived shared secret.

### Claim 9 (depends on 1)

The computing device of claim 1, wherein program instructions are executable by the processor to:
exchange with the other device an authentication credential encrypted using the derived shared secret.

### Claim 10 (depends on 1)

The computing device of claim 1, wherein program instructions are executable by the processor to:
exchange with the other device a transaction credential encrypted using the derived shared secret.

### Claim 11 (depends on 1)

The computing device of claim 1, further comprising:
a random number generator circuit coupled to the cryptographic circuit and inaccessible to the processor, wherein the random number generator circuit is configured to:
provide a random value to the cryptographic circuit for storage in the secure memory as a portion of the private key material.

### Claim 12 (depends on 1)

The computing device of claim 1, further comprising:
a fuse bank coupled to the cryptographic circuit and inaccessible to the processor, wherein the fuse bank is configured at fabrication of the cryptographic circuit to store key material usable by the cryptographic circuit to derive a portion of the private key material stored in the secure memory.

### Claim 13 (depends on 1)

The computing device of claim 1, wherein the cryptographic circuit is a public key accelerator.

### Claim 14

One or more non-transitory computer readable media having program instructions stored therein that are executable by a computing device to cause the computing device perform operations comprising:
requesting, by a processor of the computing device, performance of a key exchange to establish a shared secret with another device; and
causing a cryptographic circuit of the computing device to perform the key exchange including deriving the shared secret using private key material maintained in a secure memory coupled to the cryptographic circuit and inaccessible to the processor.

### Claim 15 (depends on 14)

The computer readable media of claim 14, wherein the computer readable media include:
a read only memory (ROM) having program instructions stored therein that are executable by the cryptographic circuit to perform the key exchange.

### Claim 16 (depends on 14)

The computer readable media of claim 14, wherein the operations further comprise:
determining whether the key exchange is authorized by verifying a plurality of attestations associated with public key pairs exchanged during the key exchange.

### Claim 17 (depends on 16)

The computer readable media of claim 16, wherein the plurality of attestations include:
a first key attestation identifying a public key of the computing device as corresponding to a member of a first device group; and
a second key attestation identifying a public key of the other device as corresponding to a member of a second device group.

### Claim 18 (depends on 17)

The computer readable media of claim 17, wherein the plurality of attestations include:
a key authorization identifying 1) a first public key of a first participant authority that identified the public key of the computing device as corresponding to a member of the first device group and 2) a second public key of a second participant authority that identified the public key of the other device as corresponding to a member of the second device group.

### Claim 19 (depends on 18)

The computer readable media of claim 18, wherein the key authorization further identifies flags limiting the operations for the computing device and the other device.

### Claim 20

A non-transitory computer readable storage medium having stored thereon design information that specifies a design of at least a portion of a hardware integrated circuit in a format recognized by a semiconductor fabrication system that is configured to use the design information to produce the integrated circuit according to the design, wherein the design information specifies that the integrated circuit comprises:
a processor;
memory accessible to the processor and having program instructions stored therein that are executable by the processor to:
request performance of a key exchange to establish a shared secret with another device; and
a cryptographic circuit coupled to a secure memory inaccessible to the processor, wherein the cryptographic circuit is configured to:
perform the key exchange including deriving the shared secret using private key material maintained in the secure memory.
