SYSTEM, METHOD, AND COMPUTER PROGRAM PRODUCT FOR PRIVACY-PRESERVING TRANSACTION VALIDATION MECHANISMS FOR SMART CONTRACTS THAT ARE INCLUDED IN A LEDGER
First Claim
Patent Images
1. A method of processing digital transactions in a network of computer systems comprising:
- creating a digital message including;
a specification of a set of validator computer systems to validate the computer program instructions and results of execution of the computer program instructions, wherein each validator computer system is provided with a signing key, andcomputer program instructions to be executed to perform at least one function relating to a digital transaction, wherein the computer program instructions are encrypted so that the computer program instructions are accessible only by the specified set of validator computer systems;
signing the digital message using a user-private system key;
generating a copy of the digital message for each specified validator computer system and signing the copy for each specified validator computer system with that validator computer system'"'"'s public signing key;
transmitting the digital messages over the network to at least the plurality of validator computer systems; and
receiving a validation result from at least some of the plurality of validator computer systems, wherein a validation result is generated at a validator computer system by;
decrypting the signed digital message,executing the computer program instructions in the digital message to determine if the computer program instructions are valid,generating a result indicating whether the computer program instructions are valid, andsigning the result with a system provided signing key and with the signing key provided in the digital message.
2 Assignments
0 Petitions
Accused Products
Abstract
The system, method, and computer program product described herein may provide the capability to handle a variety of types of transactions, not just payment transactions. In addition, system, method, and computer program product described herein may provide the capability for users to be able to control the confidentiality of their transactions, for the system to control access to transactions, for the system to be capable of auditing transactions, and to provide accountability of the validating entities.
174 Citations
21 Claims
-
1. A method of processing digital transactions in a network of computer systems comprising:
-
creating a digital message including; a specification of a set of validator computer systems to validate the computer program instructions and results of execution of the computer program instructions, wherein each validator computer system is provided with a signing key, and computer program instructions to be executed to perform at least one function relating to a digital transaction, wherein the computer program instructions are encrypted so that the computer program instructions are accessible only by the specified set of validator computer systems; signing the digital message using a user-private system key; generating a copy of the digital message for each specified validator computer system and signing the copy for each specified validator computer system with that validator computer system'"'"'s public signing key; transmitting the digital messages over the network to at least the plurality of validator computer systems; and receiving a validation result from at least some of the plurality of validator computer systems, wherein a validation result is generated at a validator computer system by; decrypting the signed digital message, executing the computer program instructions in the digital message to determine if the computer program instructions are valid, generating a result indicating whether the computer program instructions are valid, and signing the result with a system provided signing key and with the signing key provided in the digital message. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for processing digital transactions in a network of computer systems, the system comprising a processor, memory accessible by the processor, and computer program instructions stored in the memory and executable by the processor to perform:
-
creating a digital message including; a specification of a set of validator computer systems to validate the computer program instructions and results of execution of the computer program instructions, wherein each validator computer system is provided with a signing key, and computer program instructions to be executed to perform at least one function relating to a digital transaction, wherein the computer program instructions are encrypted so that the computer program instructions are accessible only by the specified set of validator computer systems; signing the digital message using a user-private system key; generating a copy of the digital message for each specified validator computer system and signing the copy for each specified validator computer system with that validator computer system'"'"'s public signing key; transmitting the digital messages over the network to at least the plurality of validator computer systems; and receiving a validation result from at least some of the plurality of validator computer systems, wherein a validation result is generated at a validator computer system by; decrypting the signed digital message, executing the computer program instructions in the digital message to determine if the computer program instructions are valid, generating a result indicating whether the computer program instructions are valid, and signing the result with a system provided signing key and with the signing key provided in the digital message. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer program product for processing digital transactions in a network of computer systems, the computer program product comprising a non-transitory computer readable medium and computer program instructions stored on the non-transitory computer readable medium and executable by a processor to perform:
-
creating a digital message including; a specification of a set of validator computer systems to validate the computer program instructions and results of execution of the computer program instructions, wherein each validator computer system is provided with a signing key, and computer program instructions to be executed to perform at least one function relating to a digital transaction, wherein the computer program instructions are encrypted so that the computer program instructions are accessible only by the specified set of validator computer systems; signing the digital message using a user-private system key; generating a copy of the digital message for each specified validator computer system and signing the copy for each specified validator computer system with that validator computer system'"'"'s public signing key; transmitting the digital messages over the network to at least the plurality of validator computer systems; and receiving a validation result from at least some of the plurality of validator computer systems, wherein a validation result is generated at a validator computer system by; decrypting the signed digital message, executing the computer program instructions in the digital message to determine if the computer program instructions are valid, generating a result indicating whether the computer program instructions are valid, and signing the result with a system provided signing key and with the signing key provided in the digital message. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification