# US 11,451,530 B2 · Systems, methods, and apparatuses for implementing super community and community sidechains with consent management for distributed ledger technologies in a cloud based computing environment

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

- Number: US 11,451,530 B2
- Document ID: US11451530B2
- Status: Granted
- Kind: B2
- Application number: 17/157,995
- Filed: 2021-01-25
- Published: 2021-05-20
- Granted: 2022-09-20
- Earliest claimed: 2018-01-31
- Assignees: salesforce.com, inc.
- Applicants: salesforce.com, inc.
- Inventors: Prithvi Krishnan Padmanabhan; Sriram Gopalan; Venkata Sarath Maddali; Darpan Dhamija; Jyoti Raj
- Web page: https://patentgrep.com/patent/US11451530B2

## CPC

- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- G06F 21/6245: {Protecting personal data, e.g. for financial or medical purposes}
- H04L 9/3236: {using cryptographic hash functions}
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- H04L 63/101: {Access control lists [ACL]}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- 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

Systems, methods, and apparatuses for implementing super community and community sidechains with consent management for distributed ledger technologies in a cloud based computing environment are described herein. For example, according to one embodiment there is a system having at least a processor and a memory therein executing within a host organization and having therein: means for operating a blockchain interface to a blockchain on behalf of a plurality of tenants of the host organization, wherein each of the plurality of tenants are participating nodes with the blockchain; means for receiving a login request from a user device, the login request requesting access to a user profile associated with a first one of the plurality of tenants; means for authenticating the user device and retrieving a user profile from the blockchain based on the authentication of the user device, wherein the user profile is stored as a blockchain asset within the blockchain with a first portion of the user profile comprising non-protected data accessible to all participating nodes on the blockchain and with a second portion of the user profile comprising protected data accessible only to participating nodes having user consent; means for prompting the user device to grant user consent to share the protected data with a second one of the plurality of tenants; and means for sharing the protected data with the second one of the plurality of tenants by permitting access to the protected data within the blockchain asset by the second tenant's participating node. Other related embodiments are disclosed.

## Claims

### Claim 1

A method, performed by a system of a host organization, the system having at least a processor and a memory therein, wherein the method comprises:
operating a blockchain interface to a plurality of private blockchains on behalf of a plurality of tenant orgs of the host organization, wherein each tenant org has a plurality of associated users;
granting the plurality of tenant orgs access to the private blockchains, wherein each tenant org operates as a node on each of the plurality of private blockchains;
granting a plurality of users of a tenant org access to two or more of the plurality of private blockchains, operating one or more user nodes for each of the plurality of users on the private blockchains;
performing a first mapping operation to map data based on a table provided by a virtual chain interface to a specified one of the plurality of private blockchains by:
receiving a structured query at the blockchain interface to affect a pending transaction on a specified one of the plurality of private blockchains, and
translating the structured query into native blockchain protocol to generate a translated query;
performing a second mapping operation to map the data to a participating user node on the specified private blockchain where the pending transaction is being affected; and
executing the translated query against the specified private blockchain via the participating user node.

### Claim 2 (depends on 1)

The method of claim 1:
wherein the first mapping operation targets the specific one of the plurality of private blockchains where the pending transaction is occurring, wherein the translated query of the first mapping operation represents the asset payload of the specific one of the plurality of private blockchains; and
wherein the second mapping operation targets the participating user node on the specific one of the plurality of private blockchains in order to affect the pending transaction.

### Claim 3 (depends on 1)

The method of claim 1, wherein the participating user node corresponds with at least one of:
(i) a user ID for one of the plurality of users of a tenant org and (ii) a requestor of the structured query.

### Claim 4 (depends on 1)

The method of claim 1, wherein an access control layer grants the plurality of tenant orgs access to the private blockchains.

### Claim 5 (depends on 1)

The method of claim 1, wherein performing a second mapping operation further includes mapping the data to one or more of: (i) a blockchain asset; (ii) metadata stored on the specified private blockchain, or (iii) other readable storage location on the specified private blockchain where the pending transaction is being affected.

### Claim 6 (depends on 1)

The method of claim 1, wherein the structured query is parsed into logic elements via a query parser.

### Claim 7 (depends on 1)

The method of claim 1, wherein issuing the translated query to affect the pending transaction on the specified private blockchain involves the blockchain interface handling back-end administration required to transact on the targeted blockchain, wherein handling back-end administration includes automatically populating a requisite asset ID.

### Claim 8 (depends on 1)

The method of claim 1, wherein the structured query is an SQL command.

### Claim 9 (depends on 1)

The method of claim 1, wherein the data includes at least one of the following: (i) a table name; and (ii) object.

### Claim 10 (depends on 1)

The method of claim 1, wherein one of the plurality of the tenant orgs is a retailer that has at least one tenant node on each of: (i) a private financial blockchain; and (ii) a private shipping blockchain.

### Claim 11 (depends on 1)

The method of claim 1, wherein operating one or more user nodes for each of the plurality of users on the private blockchains comprises creating a user node for each of the plurality of users on the private blockchains via a blockchain services interface.

### Claim 12 (depends on 11)

The method of claim 11, wherein creating a user node for each of the plurality of users on the private blockchains via a blockchain services interface is based on user registration and authentication with the host organization.

### Claim 13 (depends on 1)

The method of claim 1, wherein the structured query includes a SELECT FROM command instructing the virtual chain interface to retrieve specific query elements.

### Claim 14 (depends on 13)

The method of claim 13, wherein the SELECT FROM command specifies a target object name, wherein the virtual chain interface translates the target object name to a corresponding blockchain asset, wherein payload data for the corresponding blockchain asset is read and retrieved in reply to the structured query.

### Claim 15

Non-transitory computer-readable storage media having instructions stored thereupon that, when executed by a processor of a system of a host organization having at least a processor and a memory therein, the instructions cause the system to perform operations comprising:
executing instructions via the processor configurable to cause the system to operate a blockchain interface to a plurality of private blockchains on behalf of a plurality of tenant orgs of the host organization, wherein each tenant org has a plurality of associated users;
granting the plurality of tenant orgs access to the private blockchains, wherein each tenant org operates as a node on each of the plurality of private blockchains;
granting a plurality of users of a tenant org access to two or more of the plurality of private blockchains,
operating one or more user nodes for each of the plurality of users on the private blockchains;
performing a first mapping operation to map data based on a table provided by a virtual chain interface to a specified one of the plurality of private blockchains by:
receiving a structured query at the blockchain interface to affect a pending transaction on a specified one of the plurality of private blockchains, and
translating the structured query into native blockchain protocol to generate a translated query;
performing a second mapping operation to map the data to a participating user node on the specified private blockchain where the pending transaction is being affected; and
executing the translated query against the specified private blockchain via the participating user node.

### Claim 16 (depends on 15)

The non-transitory computer-readable storage media of claim 15, wherein the system implements a cloud computing platform to provide on-demand cloud based computing services to subscribers of the cloud computing platform; and
wherein end users of the cloud computing platform are each associated with one of a plurality of customer organizations having subscriber access to the on-demand cloud based computing services provided by the cloud computing platform.

### Claim 17 (depends on 15)

The non-transitory computer-readable storage media of claim 15, wherein issuing the translated query to affect the pending transaction on the specified private blockchain involves the blockchain interface handling back-end administration required to transact on the targeted blockchain, wherein handling back-end administration includes automatically populating a requisite asset ID.

### Claim 18 (depends on 15)

The non-transitory computer-readable storage media of claim 15, wherein operating one or more user nodes for each of the plurality of users on the private blockchains comprises creating a user node for each of the plurality of users on the private blockchains via a blockchain services interface.

### Claim 19

A system to execute at a host organization, wherein the system comprises:
a memory to store instructions;
a set of one or more processors;
a non-transitory machine-readable storage medium that provides instructions that, when executed by the set of one or more processors, the instructions stored in the memory are configurable to cause the system to perform operations comprising:
executing instructions via the processor configurable to cause the system to operate a blockchain interface to a plurality of private blockchains on behalf of a plurality of tenant orgs of the host organization, wherein each tenant org has a plurality of associated users;
granting the plurality of tenant orgs access to the private blockchains, wherein each tenant org operates as a node on each of the plurality of private blockchains;
granting a plurality of users of a tenant org access to two or more of the plurality of private blockchains, operating one or more user nodes for each of the plurality of users on the private blockchains;
performing a first mapping operation to map data based on a table provided by a virtual chain interface to a specified one of the plurality of private blockchains by:
receiving a structured query at the blockchain interface to affect a pending transaction on a specified one of the plurality of private blockchains, and
translating the structured query into native blockchain protocol to generate a translated query;
performing a second mapping operation to map the data to a participating user node on the specified private blockchain where the pending transaction is being affected; and
executing the translated query against the specified private blockchain via the participating user node.

### Claim 20 (depends on 19)

The system of claim 19, wherein the system implements a cloud computing platform to provide on-demand cloud based computing services to subscribers of the cloud computing platform; and
wherein end users of the cloud computing platform are each associated with one of a plurality of customer organizations having subscriber access to the on-demand cloud based computing services provided by the cloud computing platform.
