# US 2016/0366180 A1 · System, apparatus and method for privacy preserving distributed attestation for devices

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

- Number: US 2016/0366180 A1
- Document ID: US20160366180A1
- Status: Published application
- Kind: A1
- Application number: 14/859,572
- Filed: 2015-09-21
- Published: 2016-12-15
- Earliest claimed: 2015-06-09
- Assignees: Intel Corporation
- Applicants: Intel Corporation
- Inventors: Ned M. Smith; Rajesh Poornachandran
- Web page: https://patentgrep.com/patent/US20160366180A1

## CPC

- H04L 63/20: {for managing network security; network security policies in general (filtering policies H04L63/0227)}
- H04L 9/008: {involving homomorphic encryption}
- H04L 9/088: {Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms (network architectures or network communication protocols for using time-dependent keys in a packet data network H04L63/068)}
- H04L 9/30: Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04W 4/70: Services for machine-to-machine communication [M2M] or machine type communication [MTC]
- H04W 12/03: Protecting confidentiality, e.g. by encryption
- H04W 12/043: using a trusted network node as an anchor
- H04L 63/0421: {Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer}
- H04L 63/0442: {wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for public-key encryption H04L9/30)}
- H04L 63/062: {for key distribution, e.g. centrally by trusted party (cryptographic mechanisms or cryptographic arrangements for key distribution involving a central third party H04L9/0819)}
- H04L 2209/42: Anonymization, e.g. involving pseudonyms
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

In one embodiment, a method includes receiving, in a system of an external verifier of a first network, a plurality of attestation reports and a plurality of attestation values from a plurality of reporting nodes of the first network, each of the plurality of attestation values randomly generated in the corresponding reporting node based on a common random seed value; determining whether at least a threshold number of the plurality of attestation values match; responsive to at least the threshold number of the plurality of attestation values matching, decrypting the plurality of attestation reports, processing the decrypted plurality of attestation reports to obtain aggregated telemetry data of the plurality of nodes, where identity of the plurality of nodes remains anonymous to the external verifier; and enforcing a security policy based at least in part on the aggregated telemetry data. Other embodiments are described and claimed.

## Claims

### Claim 1

At least one computer readable storage medium comprising instructions that when executed enable a system to:
receive, in the system of an external verifier of a first network including a plurality of nodes, a plurality of attestation reports and a plurality of attestation values from a plurality of reporting nodes of the first network, each of the plurality of attestation values randomly generated in the corresponding reporting node based on a common random seed value;
determine whether at least a threshold number of the plurality of attestation values match;
responsive to at least the threshold number of the plurality of attestation values matching, decrypt the plurality of attestation reports, process the decrypted plurality of attestation reports to obtain aggregated telemetry data of the plurality of nodes, wherein identity of the plurality of nodes remains anonymous to the external verifier; and
enforce a security policy based at least in part on the aggregated telemetry data.

### Claim 2 (depends on 1)

The at least one computer readable storage medium of claim 1, further comprising instructions that when executed enable the system to receive the plurality of attestation reports via an anonymizer network coupled to the first network, the anonymizer network to enable the identity of the plurality of nodes to remain anonymous to the external verifier.

### Claim 3 (depends on 1)

The at least one computer readable storage medium of claim 1, further comprising instructions that when executed enable the system to provide a public key to the first network, to enable the public key to be distributed to the plurality of nodes.

### Claim 4 (depends on 1)

The at least one computer readable storage medium of claim 1, further comprising instructions that when executed enable the system to generate a telemetry record and provide the telemetry record to the first network, to enable the telemetry record to be distributed to the plurality of nodes, to enable each of the plurality of nodes to generate a telemetry report to be provided within one of the plurality of attestation reports.

### Claim 5 (depends on 1)

The at least one computer readable storage medium of claim 1, wherein the plurality of nodes comprises Internet of Things (IoT) devices, wherein the first network comprises an IoT network, the system of the external verifier coupled to the first network via an anonymizer network.

### Claim 6 (depends on 1)

The at least one computer readable storage medium of claim 1, wherein processing the decrypted plurality of attestation reports comprises determining a number of the plurality of nodes providing a first value for a first telemetry datum.

### Claim 7 (depends on 1)

The at least one computer readable storage medium of claim 1, wherein the system is to enter a trusted execution environment to receive the plurality of attestation reports and determine whether at least the threshold number of the plurality of attestation values comprises a common ga value.

### Claim 8

A method comprising:
receiving, in a system of a network, an encrypted telemetry data collection of one or more other systems of the network;
in a trusted execution environment (TEE) of the system, encrypting local telemetry data of the system;
in the TEE, performing an addition operation using the encrypted local telemetry data and the encrypted telemetry data collection to generate an encrypted telemetry report; and
sending the encrypted telemetry report to a reporting system of the network, the encrypted telemetry report to be routed to the reporting system via one or more other systems of the network, wherein the reporting system is to send the encrypted telemetry report to an external verifier.

### Claim 9 (depends on 8)

The method of claim 8, further comprising receiving, in the system, a public key of the external verifier, wherein the public key is received from another system of the network.

### Claim 10 (depends on 9)

The method of claim 9, further comprising encrypting the local telemetry data of the system using the public key of the external verifier.

### Claim 11 (depends on 9)

The method of claim 9, further comprising receiving a telemetry record from the another system of the network, the telemetry record generated by the external verifier to provide a format for collection of the local telemetry data.

### Claim 12 (depends on 11)

The method of claim 11, further comprising collecting the local telemetry data responsive to the telemetry record.

### Claim 13 (depends on 12)

The method of claim 12, wherein at least one datum of the local telemetry data comprises a Boolean value.

### Claim 14 (depends on 8)

The method of claim 8, further comprising routing the encrypted local telemetry data to the reporting system according to a mesh routing protocol.

### Claim 15 (depends on 8)

The method of claim 8, further comprising generating, in the reporting system, a first random attestation value at a first time based on a common random seed value, the common random seed value shared by a plurality of reporting systems of the network.

### Claim 16 (depends on 8)

The method of claim 8, further comprising discarding, from the system, a first encrypted telemetry data collection of a first system of the network, wherein the first encrypted telemetry data collection comprises a redundant collection received in at least two systems of the network.

### Claim 17 (depends on 8)

The method of claim 8, wherein the external verifier comprises at least one system of a second level of a multi-level network, the network comprising a first level of the multi-level network, and further comprising sending the encrypted telemetry report to the external verifier via an anonymizer network, to enable an identity of the system to remain anonymous to the external verifier.

### Claim 18

A system comprising:
a processor to execute in a trusted execution environment (TEE), the processor to receive a plurality of attestation reports in a plurality of attestation sessions from a plurality of reporting nodes of a first network including a plurality of nodes, each of the plurality of attestation sessions in the corresponding reporting node based on a common random seed value used to form a Diffie-Hellman exponent that is common among the plurality of reporting nodes, determine whether at least a threshold number of the plurality of attestation sessions produce identical attestation reports, responsive to at least the threshold number of the plurality of attestation sessions providing the identical attestation reports, decrypt the plurality of attestation reports, process the decrypted plurality of attestation reports to obtain aggregated telemetry data of the plurality of nodes, and enforce a security policy based at least in part on the aggregated telemetry data, wherein an identity of the plurality of nodes is to remain anonymous to the system.

### Claim 19 (depends on 18)

The system of claim 18, wherein the system is to receive the plurality of attestation reports via an anonymizer network coupled to the first network, the anonymizer network to enable the identity of the plurality of nodes to remain anonymous.

### Claim 20 (depends on 18)

The system of claim 18, wherein the system is to determine whether at least the threshold number of the plurality of attestation sessions comprises a common ga value.

### Claim 21 (depends on 18)

The system of claim 18, wherein the system is to generate a public key and a telemetry record and provide the public key and the telemetry record to the first network, to enable the public key and the telemetry record to be distributed to the plurality of nodes, to enable each of the plurality of nodes to generate a telemetry report to be provided within one of the plurality of attestation reports, each telemetry report to be encrypted using the public key.

### Claim 22 (depends on 18)

The system of claim 18, wherein the system comprises an external verifier having a private key that is used to decrypt the plurality of attestation reports having the aggregate telemetry data.
