# US 10,771,245 B2 · Systems and methods for use in computer network security

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

- Number: US 10,771,245 B2
- Document ID: US10771245B2
- Status: Granted
- Kind: B2
- Application number: 15/958,289
- Filed: 2018-04-20
- Published: 2019-10-24
- Granted: 2020-09-08
- Earliest claimed: 2018-04-20
- Assignees: Mastercard International Incorporated
- Applicants: Mastercard International Incorporated
- Inventors: Keyur Patel
- Web page: https://patentgrep.com/patent/US10771245B2

## CPC

- H04L 9/085: {Secret sharing or secret splitting, e.g. threshold schemes}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- G06F 21/6209: {to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself}
- G06F 21/6245: {Protecting personal data, e.g. for financial or medical purposes}
- H04L 9/0861: {Generation of secret information including derivation or calculation of cryptographic keys or passwords}
- 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/0894: {Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage}
- H04L 9/3213: {using tickets or tokens, e.g. Kerberos (network architectures or network communication protocols for entities authentication using tickets in a packet data network H04L63/0807)}
- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- H04L 63/061: {for key exchange, e.g. in peer-to-peer networks (cryptographic mechanisms or cryptographic arrangements for key agreement H04L9/0838)}
- 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 63/12: {Applying verification of the received information (cryptographic mechanisms or cryptographic arrangements for data integrity or data verification H04L9/32)}
- H04W 12/02: Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
- H04W 12/0471: Key exchange
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- 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)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

Systems and methods are provided for managing data across a network based on multiple keys assigned to different participants in association with the data. One exemplary method includes identifying, by an originating party, a relying party, identifying data relevant to at least one interaction between the originating party and the relying party, and encrypting the data based on a secret. The method also includes generating a key set based on the secret, where the key set has at least three keys and is structured such that the secret is derivable from at least two of the at least three keys, and disseminating a first key of the key set and the encrypted data to a control party and disseminating a second key of the key set to the relying party.

## Claims

### Claim 1

A computer-implemented method for use in managing certain data across a network based on multiple keys assigned to different participants in association with the certain data, the method comprising:
identifying, by an originating party, a relying party;
identifying data relevant to at least one interaction between the originating party and the relying party, the data including identifying data specific to the originating party;
encrypting, by a computing device, the data based on a secret;
generating, by the computing device, a key set based on the secret, the key set having at least three keys and structured such that the secret is derivable from at least two of the at least three keys;
disseminating, by the computing device, a first key of the key set and the encrypted data to a control party; and
disseminating, by the computing device, a second key of the key set to the relying party, thereby enabling the relying party to submit a request including the second key to the control party and the control party to decrypt the encrypted data disseminated to the control party, using the first and second keys, in order to respond to the request from the relying party.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein generating the key set includes generating the key set based on the secret and a Shamir secret sharing algorithm.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, further comprising generating a token and associating the token with the key set, prior to disseminating the first key and the second key; and
wherein disseminating the first key and the encrypted data to the control party includes disseminating the first key, the encrypted data, and the token to the control party; and
wherein disseminating the second key to the relying party includes disseminating the second key and the token to the relying party.

### Claim 4 (depends on 2)

The computer-implemented method of claim 2, wherein the identifying data includes a government ID number associated with the originating party; and
wherein the request includes a request for a credit score.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, further comprising:
receiving the request from the relying party, the request including the second key of the key set;
retrieving, by a second computing device associated with the control party, the first key from memory associated with the second computing device;
deriving, by the second computing device, the secret from the first and second keys; and
decrypting, by the second computing device, the encrypted data disseminated to the control party based on the derived secret.

### Claim 6 (depends on 5)

The computer-implemented method of claim 5, further comprising transmitting, by the second computing device, a reply to the relying party in response to the request, the reply based on the encrypted data as decrypted by the second computing device but not including the actual encrypted data.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, further comprising:
storing a third key of the key set in memory of the computing device; and
transmitting, by the computing device, a request to the control party to modify and/or confirm the encrypted data disseminated to the control party, the request including the third key, thereby enabling the control party to decrypt the encrypted data using the first and third keys in order to modify and/or confirm the encrypted data based on the request from the originating party.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, further comprising generating, by the computing device, the secret prior to encrypting the data based on the secret.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
submitting, by the relying party, the request including the second key to the control party; and
decrypting, by the control party, the encrypted data disseminated to the control party, using the first and second keys, in order to respond to the request from the relying party.

### Claim 10

A system for use in managing certain data across a network based on multiple keys assigned to different participants in association with the certain data, the system comprising an originating party computing device having a memory and a processor coupled to the memory, the processor configured, by executable instructions stored in the memory of the originating party computing device, to:
receive, from an originating party, an indication of a relying party in connection with an identification interaction of the originating party to the relying party;
encrypt data based on a secret, the data including identifying data specific to the originating party;
generate a key set based on the secret and store the key set in the memory, the key set having at least three keys and structured such that the secret is derivable from at least two of the at least three keys;
generate a token associated with the originating party, the encrypted data and/or the key set;
disseminate the token, a first key of the key set, and the encrypted data to a control party; and
disseminate the token and a second key of the key set to the relying party, thereby enabling the relying party to submit a request including the token and the second key to the control party and the control party to identify the first key based on the token and to decrypt the encrypted data disseminated to the control party, using the first and second keys, in order to respond to the request from the relying party.

### Claim 11 (depends on 10)

The system of claim 10, where in the processor of the originating party computing device is further configured, by the executable instructions, to generate the secret prior to encrypting the data based on the secret.

### Claim 12 (depends on 11)

The system of claim 11, wherein the processor of the originating party computing device is configured, by the executable instructions, in connection with generating the key set, to generate the key set based on the secret and a Shamir secret sharing algorithm.

### Claim 13 (depends on 10)

The system of claim 10, wherein the processor of the originating party computing device is further configured, by the executable instructions, to store a third key of the key set in the memory of the originating party computing device.

### Claim 14 (depends on 13)

The system of claim 13, further comprising a control party computing device associated with the control party, the control party computing device having a memory and a processor coupled to the memory, the processor of the control party computing device configured, by executable instructions stored in the memory of the control party computing device, to:
receive the request from the relying party, the request including the second key of the key set;
retrieve, from the memory of the control party computing device, the first key disseminated to the control party by the processor of the originating party computing device;
derive the secret from the first and second keys;
decrypt the encrypted data based on the derived secret; and
transmit a reply to the request to the relying party, the reply including decrypted data and/or data accessible based on the decrypted data.

### Claim 15 (depends on 14)

The system of claim 14, wherein the request includes at least one of a name, address, phone number and birthdate of the originating party; and
wherein the control party computing device is configured to verify the identity of the originating party based on the decrypted data and the at least one of the name, address, phone number and birthdate of the originating party, prior to transmitting the reply to the request to the relying party.

### Claim 16 (depends on 15)

The system of claim 15, wherein the reply transmitted to the relying party includes at least some of the encrypted data but does not include all of the encrypted data.

### Claim 17 (depends on 14)

The system of claim 14, wherein the processor of the originating party computing device is further configured, by the executable instructions stored in the memory of the originating party computing device, to transmit a request to the control party to modify and/or confirm the encrypted data disseminated to the control party, the request including the third key.

### Claim 18 (depends on 17)

The system of claim 17, wherein the processor of the control party computing device is further configured, by the executable instructions stored in the memory of the control party computing device, to decrypt the encrypted data using the first and third keys and to modify and/or confirm the encrypted data based on the request from the processor of the originating party computing device.

### Claim 19

A non-transitory computer-readable storage media including executable instructions for use in managing certain data across a network based on multiple keys assigned to different participants in association with the certain data, which, when executed by at least one processor, cause the at least one processor to:
identify a relying party;
encrypt data based on a secret, the data including identifying data specific to the originating party;
generate a key set based on the secret and a Shamir secret sharing algorithm, the key set having N keys and structured such that the secret is derivable from at least N−1 of the N keys, where N is an integer greater than 2;
disseminate a first key of the key set and the encrypted data to a control party; and
disseminate a second key of the key set to the relying party, thereby enabling the relying party to submit a request associated with the data and including the second key to the control party and the control party to decrypt the encrypted data disseminated to the control party, by use of the first and second keys, in order to respond to the request from the relying party.

### Claim 20 (depends on 19)

The non-transitory computer-readable storage media of claim 19, wherein the executable instructions, when executed by the at least one processor, further cause the at least one processor to:
generate a token and associate the token with the key set, prior to disseminating the first key and the second key;
disseminate the token along with the first key and the encrypted data to the control party; and
disseminate the token along with the second key to the relying party.
