# US 10,454,878 B2 · System and method for identity resolution across disparate distributed immutable ledger networks

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

- Number: US 10,454,878 B2
- Document ID: US10454878B2
- Status: Granted
- Kind: B2
- Application number: 16/150,790
- Filed: 2018-10-03
- Published: 2019-04-04
- Granted: 2019-10-22
- Earliest claimed: 2017-10-04
- Assignees: The Dun & Bradstreet Corporation
- Applicants: The Dun & Bradstreet Corporation
- Inventors: Saleem Khan; Jacob Caleb Gostylo
- Web page: https://patentgrep.com/patent/US10454878B2

## CPC

- H04L 61/103: across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
- H04L 63/12: {Applying verification of the received information (cryptographic mechanisms or cryptographic arrangements for data integrity or data verification H04L9/32)}
- G06F 16/1805: {Append-only file systems, e.g. using logs or journals to store data}
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06Q 20/382: {insuring higher security of transaction}
- H04L 9/0643: {Hash functions, e.g. MD5, SHA, HMAC or f9 MAC}
- H04L 9/0825: {using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates}
- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- H04L 9/3247: {involving digital signatures}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- H04L 61/45: Network directories; Name-to-address mapping
- 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)
- 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

## Abstract

A system and method for identifying previously unknown counterparties by registering distributed ledger public keys and/or addresses associated with specific business entities and/or individuals. The system and method are configured to provide tools for administering public facing distributed ledger identifiers using cryptographic proof messaging and transactions made on the Distributed Ledger. It also provides queries and lookups to discover public keys associated with entities and allows users to link identifiers on competing Distributed Ledgers to a disambiguated entity, thereby enabling cross Ledger transactions to occur.

## Claims

### Claim 1

A method comprising, for a platform host:
generating a datastore and Entity ID for an entity;
linking, in the datastore, a plurality of public key distributed ledger addresses to each Entity ID;
linking, in the datastore, each of the public key distributed ledger addresses to their respective distributed ledger network;
providing a hub server connected to an ID resolution server, the ID resolution server comprising an identity resolution database lookup table;
storing a plurality of the datastores in the identity resolution database lookup table; and
connecting a plurality of distributed ledger network platform nodes on each of a respective plurality of the distributed ledger networks to the hub server;
wherein the ID resolution server is configured to perform identity resolution for a single entity on a plurality of distributed ledger networks.

### Claim 2 (depends on 1)

The method of claim 1 further comprising:
embedding the plurality of the distributed ledger network platform nodes on a respective plurality of the distributed ledger networks.

### Claim 3 (depends on 1)

The method of claim 1 wherein the hub server is connected to a business information database server.

### Claim 4 (depends on 1)

The method of claim 1 further comprising:
receiving, at one of the distributed ledger network platform nodes on one of the distributed ledger networks, a request for business information for a counterparty to a transaction on the distributed ledger network;
sending the request from the distributed ledger network platform node to the hub server; and
identifying the Entity ID for the counterparty at the ID resolution server.

### Claim 5 (depends on 4)

The method of claim 4 further comprising:
automatically executing, by the distributed ledger network platform node, a transaction to the distributed ledger network.

### Claim 6 (depends on 4)

The method of claim 4 further comprising:
routing the request from the hub server to a business information database server;
obtaining business entity firmographic information about the counterparty from the business information database server; and
outputting the business entity firmographic information to the distributed ledger network platform node.

### Claim 7 (depends on 6)

The method of claim 6, wherein the business entity firmographic information includes business linkage information.

### Claim 8 (depends on 6)

The method of claim 6 further comprising:
automatically executing, by the distributed ledger network platform node, a transaction to the distributed ledger network.

### Claim 9 (depends on 1)

The method of claim 1 further comprising:
verifying, by the hub server, that a plurality of entities that are counter-parties to a contract on the first distributed ledger are counter-parties to a contract on another distributed ledger network.

### Claim 10 (depends on 8)

The method of claim 8 further comprising:
receiving, from a distributed ledger network platform node on a first distributed ledger network, a request to verify that the plurality of entities that are counter-parties to the contract on the first distributed ledger network are counter-parties to the contract on another distributed ledger network;
associating, at the hub server, the contract on the first distributed ledger network with the contract on the other distributed ledger network;
receiving, at a platform node on the other distributed ledger network, a transaction message to resolve the Entity IDs for the counter-parties to the contract on the other distributed ledger network,
receiving, from the distributed ledger network platform node on the other distributed ledger network, a transaction message with instructions to resolve the Entity IDs;
resolving, at the ID resolution server, the Entity IDs for the counter-parties to the contract on the other distributed ledger network;
receiving a transaction message at the distributed ledger network platform node on the other distributed ledger network that the contract has executed;
sending a resolve message to the hub server confirming the contract on the other distributed ledger network has executed;
resolving, by the hub server, the request from the distributed ledger network platform node on the first distributed ledger network to verify that the plurality of entities that are counter-parties to the contract on the first distributed ledger are counter-parties to the contract on the other distributed ledger network, and
sending the verification message to the distributed ledger network platform node on the first distributed ledger network.

### Claim 11 (depends on 10)

The method of claim 10 further comprising:
obtaining, by the hub server, business entity firmographic information about the counterparties from the business information database server; and
outputting the business entity firmographic information to the platform node on the other distributed ledger network.

### Claim 12 (depends on 11)

The method of claim 11, wherein the business entity firmographic information includes business linkage information.

### Claim 13 (depends on 1)

The method of claim 1, wherein the method comprises:
verifying an entity to the platform;
storing a Verified Network ID for the entity in the entity datastore; and
sending a Verified private key to the entity.

### Claim 14 (depends on 13)

The method of claim 13, comprising:
receiving a message including information for a New Network ID for a Distributed Ledger Network, wherein the message is signed with a new private key; and
wherein the message has appended a Verified Network ID message detailing a Verified Network ID and a signature for the Verified Network ID message with a corresponding Verified private key;
the platform host verifies the signature of the Verified private key;
the platform host verifies the signature of the new key;
the platform host verifies a checksum of the new ID with the Distributed Ledger Network identified in the New Network ID; and
the platform host adds a new Network ID to the ID resolution datastore the entity.

### Claim 15

A system for verifying entities on a plurality of distributed immutable ledgers comprising a network computer comprising:
a hub server;
an ID resolution server comprising an identity resolution database lookup table;
a memory for storing a database and program instructions; and
a processor device that is operative to execute program instructions that enable actions, comprising:
generating, for each of a plurality of entities, a datastore and Entity ID for an entity;
linking, in the datastore, a plurality of public key distributed ledger addresses to each Entity ID;
linking, in the datastore, each of the public key distributed ledger addresses to the distributed ledger network to which they belong;
storing the datastore in the identity resolution database lookup table, the identity resolution database lookup table comprising a plurality of the datastores; and
connecting a plurality of distributed ledger network platform nodes on each of a respective plurality of the distributed ledger networks to the hub server;
wherein the system is configured to perform identity resolution for a single entity on a plurality of distributed ledger networks.

### Claim 16 (depends on 15)

The system of claim 15, wherein the system is further configured to execute program instructions that enable actions, comprising:
embedding a plurality of the distributed ledger network platform nodes on a respective plurality of the distributed ledger networks.

### Claim 17 (depends on 15)

The system of claim 15 wherein the hub server is connected to a business information database server.

### Claim 18 (depends on 15)

The system of claim 15, wherein the system is further configured to execute program instructions that enable actions, comprising:
receiving, at one of the platform nodes on one of the distributed ledger networks, a request for business information for a counter-party to a transaction on the distributed ledger network;
sending the request from the platform node to the hub server; and
identifying the Entity ID for the counterparty at the ID resolution server.

### Claim 19 (depends on 18)

The system of claim 18, wherein the system is further configured to execute program instructions that enable actions, comprising:
automatically executing, by the distributed ledger network platform node, a transaction to the distributed immutable ledger.

### Claim 20 (depends on 18)

The system of claim 18, wherein the system is further configured to execute program instructions that enable actions, comprising:
routing the request from the hub server to a business information database server;
obtaining business entity firmographic information about the counterparty from the business information database server; and
outputting the business entity firmographic information to the distributed ledger network platform node.

### Claim 21 (depends on 20)

The system of claim 20, wherein the business entity firmographic information includes business linkage information.

### Claim 22 (depends on 20)

The system of claim 20, wherein the system is further configured to execute program instructions that enable actions, comprising:
automatically executing, by the platform node, a transaction to the distributed immutable ledger.

### Claim 23 (depends on 15)

The system of claim 15, wherein the system is further configured to execute program instructions that enable actions, comprising:
verifying, by the hub server, that a plurality of entities that are counter-parties to a contract on the first distributed ledger are counter-parties to a contract on another distributed ledger network.

### Claim 24 (depends on 23)

The system of claim 23, wherein the system is further configured to execute program instructions that enable actions, comprising:
receiving, from the distributed ledger network platform node on a first distributed ledger network, a request to verify that the plurality of entities that are counter-parties to the contract on the first distributed ledger are counter-parties to the contract on another distributed ledger network;
associating, at the hub server, the contract on the first distributed ledger network with the contract on the other distributed ledger network;
receiving, at a platform node on the other distributed ledger network, a transaction message to resolve the Entity IDs for the counterparties to the contract on the other distributed ledger network,
receiving, from the distributed ledger network platform node on the other distributed ledger network, a transaction message with instructions to resolve the Entity IDs;
resolving, at the ID resolution server, the Entity IDs for the counter-parties to the contract on the other distributed ledger network;
receiving a transaction message at the distributed ledger network platform node on the other distributed ledger network that the contract has executed;
sending a resolve message to the hub server confirming the contract on the other distributed ledger network has executed;
resolving, by the hub server, the request from the distributed ledger network platform node on the first distributed ledger network to verify that the plurality of entities that are counter-parties to the contract on the first distributed ledger are counter-parties to the contract on the other distributed ledger network; and
sending the verification message to the distributed ledger network platform node on the first distributed ledger network.

### Claim 25 (depends on 24)

The system of claim 24, wherein the system is further configured to execute program instructions that enable actions, comprising:
obtaining, by the hub server, business entity firmographic information about the counterparties from the business information database server; and
outputting the business entity firmographic information to the distributed ledger network platform node on the other distributed ledger network.

### Claim 26 (depends on 25)

The system of claim 25, wherein the business entity firmographic information includes business linkage information.

### Claim 27 (depends on 15)

The system of claim 15, wherein the system is further configured to execute program instructions that enable actions, comprising:
verifying an entity to the platform;
storing a Verified Network ID for the entity in the entity datastore; and
sending a Verified private key to the entity.

### Claim 28 (depends on 27)

The system of claim 27, wherein the system is further configured to execute program instructions that enable actions, comprising:
receiving a message including information for a New Network ID for a Distributed Ledger Network, wherein the message is signed with a new private key; and
wherein the message has appended a Verified Network ID message detailing a Verified Network ID and a signature for the Verified Network ID message with a corresponding Verified private key;
the platform host verifies the signature of the Verified private key;
the platform host verifies the signature of the new key;
the platform host verifies a checksum of the new ID with the Distributed Ledger Network identified in the New Network ID; and
the platform host adds a new Network ID to the ID resolution datastore the entity.
