# US 12,008,537 B2 · Systems and methods for distributed peer to peer analytics

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

- Number: US 12,008,537 B2
- Document ID: US12008537B2
- Status: Granted
- Kind: B2
- Application number: 17/486,453
- Filed: 2021-09-27
- Published: 2022-01-13
- Granted: 2024-06-11
- Earliest claimed: 2017-12-12
- Assignees: Mastercard International Incorporated
- Applicants: Mastercard International Incorporated
- Inventors: Navjot S. Sidhu; Vishal Anand; Ryan Senci
- Web page: https://patentgrep.com/patent/US12008537B2

## CPC

- G06Q 20/223: {based on the use of peer-to-peer networks}
- G06Q 20/06: Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q 20/20: Point-of-sale [POS] network systems
- G06Q 20/3829: {involving key management}
- G06Q 20/401: {Transaction verification}
- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- H04L 63/102: {Entity profiles}
- H04L 63/123: {received data contents, e.g. message integrity}
- H04L 67/104: Peer-to-peer [P2P] networks
- G06Q 20/382: {insuring higher security of transaction}
- G06Q 2220/00: Business processing using cryptography
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- H04L 2209/56: Financial cryptography, e.g. electronic payment or e-cash
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method of operating a distributed peer to peer analytics system of a permissioned distributed ledger is provided. The system includes a plurality of node computing devices in operable communication with each other over an electronic network. The method includes capturing, by a merchant computing device, sales data from a payment transaction, storing the captured sales data in a database of a first node, compiling within the first node the stored sales data into a transaction envelope, encrypting the transaction envelope with a private key of the first node, submitting, by the first node, the encrypted envelope to the permissioned distributed ledger, verifying, by a second node, the submitted encrypted envelope and adding the compiled sales data to a data block, committing, by the second node, the data block to the distributed ledger, and validating, by a consensus of the plurality of node computing devices, the committed data block.

## Claims

### Claim 1

A computer-implemented method for operating a permissioned distributed ledger on a peer to peer electronic network including a plurality of node computing devices, the method comprising the steps of: implementing, by a dataadmin node of the plurality of node computing devices, a certificate authority which issues and manages a plurality of public and private keys for controlling access to specific blocks on the permissioned distributed ledger, wherein the dataadmin node is configured to control access to anonymized data over the electronic network; assigning, by the dataadmin node, a first private key to a data owner, wherein the first private key designates ownership of data blocks encrypted using the first private key; receiving, by a collector node of the plurality of node computing devices, a transaction envelope encrypted with the first private key of the data owner, the transaction envelope including compiled data captured from a point-of-sale computing device associated with the data owner, wherein the compiled data is added to a data block, and wherein the data block is validated by the plurality of node computing devices and added to the permissioned distributed ledger; receiving, by the dataadmin node from the data owner subsequent to addition of the data block to the permissioned distributed ledger, an instruction to grant, to a candidate node, a first level of access to a specified entry of the permissioned distributed ledger corresponding to the data block; setting, by the dataadmin node, one or more access permissions for the candidate node based on the first level of access to the data block, setting the one or more access permissions comprising assigning a permission key of the plurality of public and private keys, the permission key compliant with the first level of access to the data block; and registering, by the dataadmin node, the candidate node on the electronic network according to the access permissions as an analytics node, including providing the permission key to the candidate node, wherein registering the candidate node comprises transmitting, by the candidate node, a heartbeat message to the plurality of node computing devices, the heartbeat message indicating that the candidate node is active and should remain registered in the electronic network.

### Claim 2 (depends on 1)

The method in accordance with claim 1, wherein the permissioned distributed ledger is a blockchain including at least one blockchain processor.

### Claim 3 (depends on 1)

The method in accordance with claim 1, wherein the received transaction envelope further includes one or more of an envelope ID (identifier), a transaction ID, a network ID, a merchant ID, a certificate of the data owner, a user ID, a device ID, a hash, currency information, and timestamps.

### Claim 4 (depends on 1)

The method in accordance with claim 1, wherein the step of receiving, by the collector node, the transaction envelope comprises receiving the transaction envelope from a broadcast by a transaction node over the electronic network to the plurality of node computing devices.

### Claim 5 (depends on 1)

The method in accordance with claim 1, wherein one or more of the plurality of node computing devices has listening capability.

### Claim 6 (depends on 1)

The method in accordance with claim 1, wherein the step of receiving the instruction to grant the candidate node the first level of access further comprises receiving a unique address of the candidate node.

### Claim 7 (depends on 1)

The method in accordance with claim 1, further comprising: receiving, by the dataadmin node subsequent to the step of receiving the instruction to grant the candidate node the first level of access, an instruction to revoke the first level of access to the specified entry of the permissioned distributed ledger corresponding to the data block; and unregistering, by the dataadmin node, the permission key from the first level of access to the data block.

### Claim 8

A system for operating a permissioned distributed ledger on a peer to peer electronic network including a plurality of node computing devices, the system comprising: a collector node computing device programmed to receive a transaction envelope encrypted with a first private key of a data owner, the transaction envelope including compiled data captured from a point-of-sale computing device associated with the data owner, wherein the compiled data is added to a data block, and wherein the data block is validated by the plurality of node computing devices and added to the permissioned distributed ledger; and a dataadmin node computing device programmed to: implement a certificate authority which issues and manages a plurality of public and private keys for controlling access to specific blocks on the permissioned distributed ledger, wherein the dataadmin node computing device is configured to control access to anonymized data over the electronic network; assign the first private key to the data owner, wherein the first private key designates ownership of data blocks encrypted using the first private key; receive, from the data owner subsequent to addition of the data block to the permissioned distributed ledger, an instruction to grant, to a candidate node, a first level of access to a specified entry of the permissioned distributed ledger corresponding to the data block; set one or more access permissions for the candidate node based on the first level of access to the data block, setting the one or more access permissions comprising assigning a permission key of the plurality of public and private keys, the permission key compliant with the first level of access to the data block; and register the candidate node on the electronic network according to the access permissions as an analytics node, including providing the permission key to the candidate node, wherein registering the candidate node includes transmitting, by the candidate node, a heartbeat message to the plurality of node computing devices, the heartbeat message indicating that the candidate node is active and should remain registered in the electronic network.

### Claim 9 (depends on 8)

The system in accordance with claim 8, wherein the permissioned distributed ledger is a blockchain including at least one blockchain processor.

### Claim 10 (depends on 8)

The system in accordance with claim 8, wherein the received transaction envelope further includes one or more of an envelope ID (identifier), a transaction ID, a network ID, a merchant ID, a certificate of the data owner, a user ID, a device ID, a hash, currency information, and timestamps.

### Claim 11 (depends on 8)

The system in accordance with claim 8, wherein the collector node computing device is further programmed to receive the transaction envelope from a broadcast by a transaction node over the electronic network to the plurality of node computing devices.

### Claim 12 (depends on 8)

The system in accordance with claim 8, wherein one or more of the plurality of node computing devices has listening capability.

### Claim 13 (depends on 8)

The system in accordance with claim 8, wherein the dataadmin node computing device is further programmed to receive a unique address of the candidate node in the instruction to grant the candidate node the first level of access.

### Claim 14 (depends on 8)

The system in accordance with claim 8, wherein the dataadmin node computing device is further programmed to: receive, subsequent to receiving the instruction to grant the candidate node the first level of access, an instruction to revoke the first level of access to the specified entry of the permissioned distributed ledger corresponding to the data block; and unregister the permission key from the first level of access to the data block.

### Claim 15

At least one non-transitory computer-readable medium comprising instructions thereon for operating a permissioned distributed ledger on a peer to peer electronic network including a plurality of node computing devices, the instructions including: a first set of instructions executable by at least one processor of a collector node computing device to cause the collector node computing device to receive a transaction envelope encrypted with a first private key of a data owner, the transaction envelope including compiled data captured from a point-of-sale computing device associated with the data owner, wherein the compiled data is added to a data block, and wherein the data block is validated by the plurality of node computing devices and added to the permissioned distributed ledger; and a second set of instructions executable by at least one processor of a dataadmin node computing device to cause the dataadmin node computing device to: implement a certificate authority which issues and manages a plurality of public and private keys for controlling access to specific blocks on the permissioned distributed ledger, wherein the dataadmin node is configured to control access to anonymized data over the electronic network; assign the first private key to the data owner, wherein the first private key designates ownership of data blocks encrypted using the first private key; receive, from the data owner subsequent to addition of the data block to the permissioned distributed ledger, an instruction to grant, to a candidate node, a first level of access to a specified entry of the permissioned distributed ledger corresponding to the data block; set one or more access permissions for the candidate node based on the first level of access to the data block, setting the one or more access permissions comprising assigning a permission key of the plurality of public and private keys, the permission key compliant with the first level of access to the data block; and register the candidate node on the electronic network according to the access permissions as an analytics node, including providing the permission key to the candidate node, wherein registering the candidate node includes transmitting, by the candidate node, a heartbeat message to the plurality of node computing devices, the heartbeat message indicating that the candidate node is active and should remain registered in the electronic network.

### Claim 16 (depends on 15)

The at least one non-transitory computer-readable medium in accordance with claim 15, wherein the permissioned distributed ledger is a blockchain including at least one blockchain processor.

### Claim 17 (depends on 15)

The at least one non-transitory computer-readable medium in accordance with claim 15, wherein the received transaction envelope further includes one or more of an envelope ID (identifier), a transaction ID, a network ID, a merchant ID, a certificate of the data owner, a user ID, a device ID, a hash, currency information, and timestamps.

### Claim 18 (depends on 15)

The at least one non-transitory computer-readable medium in accordance with claim 15, wherein the first set of instructions further cause the collector node computing device to receive the transaction envelope from a broadcast by a transaction node over the electronic network to the plurality of node computing devices.

### Claim 19 (depends on 15)

The at least one non-transitory computer-readable medium in accordance with claim 15, wherein the dataadmin node computing device is further programmed to receive a unique address of the candidate node in the instruction to grant the candidate node the first level of access.

### Claim 20 (depends on 15)

The at least one non-transitory computer-readable medium in accordance with claim 15, wherein the second set of instructions further cause the dataadmin node computing device to: receive, subsequent to receiving the instruction to grant the candidate node the first level of access, an instruction to revoke the first level of access to the specified entry of the permissioned distributed ledger corresponding to the data block; and unregister the permission key from the first level of access to the data block.
