System or method to run distributed validation of workflows across a network in a shared distributed ledger in multi-tenant cloud environment
AssigneeSalesforce, Inc.
InventorPrithvi Krishnan Padmanabhan
Life of this patent
Estimating the term…
Abstract
A method of distributed smart contract deployment in a multi-tenant environment implemented by a computing device. The method including receiving a smart contract source, converting the smart contract source to a smart contract code for a tenant of the multi-tenant environment, the smart contract code to manage blockchain data transaction validation, and installing the smart contract code at the tenant to enforce logic of the smart contract source at the tenant in the multi-tenant environment.
Claims16
A method of distributed smart contract deployment in a multi-tenant environment implemented by a computing device, the method comprising:
- receiving a smart contract source;
- converting the smart contract source to a smart contract that is supported by a target blockchain and causing installation of the smart contract into the target blockchain to enable invocation of a smart contract consensus process of the target blockchain;
- converting the smart contract source to executable code for a tenant of the multi-tenant environment, the executable code to manage validation of a data transaction before the transaction is sent to the target blockchain for validation by the smart contract;
- and
- installing the executable code at the tenant to enforce logic of the smart contract source at the tenant of the multi-tenant environment, the logic of the smart contract source to:
- determine whether conditions for validating the transaction are met without invoking the smart contract consensus process of the target blockchain;
- reject the transaction when the conditions are not met;
- and
- when (i) the conditions are met or (ii) the logic is unable to determine whether the conditions are met, send the transaction to the smart contract installed to the target blockchain for validation thereby invoking the smart contract consensus process of the target blockchain.
A method of distributed smart contract enforcement in a multi-tenant environment implemented by a computing device, the method comprising:
- initiating execution of executable code at a tenant of the multi-tenant environment to evaluate a transaction, the executable code being converted specific to the tenant from a smart contract source, the tenant being indicated by a membership of a target blockchain to which the smart contract source relates, the executable code to evaluate the transaction before the transaction is sent to the target blockchain for validation by a smart contract installed to the target blockchain;
- determining, at the tenant, by the executable code, whether conditions for validating the transaction are met without invoking the smart contract installed to the target blockchain;
- rejecting the transaction by the executable code in response to the conditions not being met, wherein rejecting the transaction comprises forgoing sending the transaction to the target blockchain for validation by the smart contract installed to the target blockchain;
- and
- in response to (i) the conditions being met or (ii) an inability to determine whether the conditions are being met, sending the transaction to the target blockchain for validation by the smart contract installed to the target blockchain.
A computing device configured to execute a smart contract deployment service in a multi-tenant environment, the computing device comprising:
- a non-transitory computer readable medium having stored therein the smart contract deployment service;
- and
- a processor coupled to the non-transitory computer readable medium, the processor configured to execute the smart contract deployment service to receive a smart contract source, converting the smart contract source to a smart contract that is supported by a target blockchain and causing installation of the smart contract into the target blockchain to enable invocation of a smart contract consensus process of the target blockchain, convert the smart contract source to executable code for a tenant of the multi-tenant environment, the executable code to manage validation of a data transaction before the transaction is sent to the target blockchain for validation by the smart contract, and to install the executable code at the tenant to enforce logic of the smart contract source at the tenant of the multi-tenant environment, the logic of the smart contract source to:
- determine whether conditions for validating the transaction are met without invoking the smart contract consensus process of the target blockchain;
- reject the transaction when the conditions are not met;
- and
- when (i) the conditions are met or (ii) the logic is unable to determine whether the conditions are met, send the transaction to the smart contract installed to the target blockchain for validation thereby invoking the smart contract consensus process of the target blockchain.
A computing device configured to execute a smart contract enforcement process, the computing device comprising:
- a non-transitory computer readable medium having stored therein a smart contract enforcement service;
- and
- a processor coupled to the non-transitory computer readable medium, the processor configured to execute the smart contract enforcement service to initiate execution of executable code at a tenant of a multi-tenant environment to evaluate a transaction, the executable code being converted specific to the tenant from a smart contract source, the tenant being indicated by a membership of a target blockchain to which the smart contract source relates, the executable code to evaluate the transaction before the transaction is sent to the target blockchain for validation by a smart contract installed to the target blockchain, determine at the tenant by the executable code, whether conditions for validating the transaction are met without invoking the smart contract installed to the target blockchain, reject the transaction by the executable code in response to the conditions not being met, wherein rejecting the transaction comprises forgoing sending the transaction to the target blockchain for validation by the smart contract installed to the target blockchain, and in response to (i) the conditions being met or (ii) an inability to determine whether the conditions are being met, sending the transaction to the target blockchain for validation by the smart contract installed to the target blockchain.
Dependencies are inferred from the claim text.