System and method for identifying particular computer platform associated with potential altered or falsified execution of copy of software
Abstract
In a method for executing software, a result produced from an execution of a copy of the software by a corresponding platform can be received from each of a plurality of platforms. A number of results of execution of the software can be determined. The extent to which the results match can be compared to a threshold. The matching results can be accepted as an agreed-upon output of the software when the extent to which the results match is equal to or greater than the threshold. The software can include an implementation of at least a portion of an act associated with an agreement between at least two entities.
Claims
exact text as granted — not AI-modified1 . A computer-implemented method performed by a data processing apparatus, the method comprising:
receiving, by a processor, individual results produced from executions of copies of a software by a plurality of computer platforms; determining, by the processor, a set of acceptable results from the individual results, wherein a difference between any individual result in the set of acceptable results and any other individual result in the set of acceptable results is less than or equal to a first threshold; determining, by the processor, that one of the individual results is not an acceptable result; determining, by the processor, a count of individual results within the set of acceptable results; determining, by the processor, that the count of individual results is greater than or equal to a second threshold; communicating, from the processor to a first device and a second device, a signal comprising information about an action associated with an overall result of executions of the copies of the software, wherein the action is a first action when the count of individual results is greater than or equal to the second threshold and is a second action when the count of individual results is less than the second threshold; and determining, by the processor, a computer platform of the plurality of computer platforms that is associated with the one of the individual results that is not an acceptable result of the execution of the copy of the software by the computer platform of the plurality of computer platforms
2 . The computer-implemented method of claim 1 , further comprising indicating, by the processor, that the one of the individual results that is not an acceptable result is potential altered or falsified result.
3 . The computer-implemented method of claim 1 , wherein each computer platform of the plurality of computer platforms isolates a corresponding copy of the software from a resource of the each computer platform and limits an ability of the corresponding copy of the software to perform a function on the each computer platform.
4 . The computer-implemented method of claim 1 , wherein each computer platform of the plurality of computer platforms verifies, prior to each instance of an execution of the corresponding copy of the software, a sequence of instructions of the corresponding copy of the software to ensure that the sequence of instructions has not been altered prior to the execution of the corresponding copy of the software.
5 . The computer-implemented method of claim 1 , wherein each computer platform of the plurality of computer platforms performs the execution of the corresponding copy of the software in response to receiving both a signal from the first device and a signal from the second device, and wherein the corresponding copy of the software receives, as a first input from an external source, information about an existence of a condition relevant to a determination of a corresponding individual result.
6 . The computer-implemented method of claim 1 , wherein a portion of executable code of a first of the copies of the software is different from a portion of executable code of a second of the copies of the software and the first of the copies of the software is performs a same function as the second of the copies of the software.
7 . The computer-implemented method of claim 1 , further comprising sending, from the processor, a message to the each computer platform of the plurality of computer platforms, the message including a request for the each computer platform of the plurality of computer platforms to execute its own copy of the copies of the software.
8 . The computer-implemented method of claim 7 , wherein the message includes a hash of the software that identifies the software.
9 . The computer-implemented method of claim 1 , further comprising sending, from the processor, at least one copy of the software to at least one computer platform of the plurality of computer platforms.
10 . A computer-implemented system comprising:
communication circuitry; a storage; and a processor that receives, using the communication circuitry, individual results produced from executions of copies of a software by a plurality of computer platforms, determines a set of acceptable results from the individual results, wherein a difference between any individual result in the set of acceptable results and any other individual result in the set of acceptable results is less than or equal to a first threshold, determines that one of the individual results is not an acceptable result, determines a count of individual results within the set of acceptable results, determines by the processor, that the count of individual results is greater than or equal to a second threshold, communicates, using the communication circuitry, to a first device and a second device, a signal comprising information about an action associated with an overall result of executions of the copies of the software, wherein the action is a first action when the count of individual results is greater than or equal to the second threshold and is a second action when the count of individual results is less than the second threshold, and determines a computer platform of the plurality of computer platforms that is associated with the one of the individual results that is not an acceptable result of the execution of the copy of the software by the particular computer platform.
11 . The computer-implemented system of claim 10 , wherein the processor further indicates that the one of the individual results that is not an acceptable result is potential altered or falsified result.
12 . The computer-implemented system of claim 10 , wherein each computer platform of the plurality of computer platforms isolates a corresponding copy of the software from a resource of the each computer platform and limits an ability of the corresponding copy of the software to perform a function on the each computer platform.
13 . The computer-implemented system of claim 10 , wherein each computer platform of the plurality of computer platforms verifies, prior to each instance of an execution of the corresponding copy of the software, a sequence of instructions of the corresponding copy of the software to ensure that the sequence of instructions has not been altered prior to the execution of the corresponding copy of the software.
14 . The computer-implemented system of claim 10 , wherein each computer platform of the plurality of computer platforms performs the execution of the corresponding copy of the software in response to receiving both a signal from the first device and a signal from the second device, and wherein the corresponding copy of the software receives, as a first input from an external source, information about an existence of a condition relevant to a determination of a corresponding individual result.
15 . The computer-implemented system of claim 10 , wherein a portion of executable code of a first of the copies of the software is different from a portion of executable code of a second of the copies of the software and the first of the copies of the software is performs a same function as the second of the copies of the software.
16 . The computer-implemented system of claim 10 , wherein the processor sends, using the communication circuitry, a message to the each computer platform of the plurality of computer platforms, the message including a request for the each computer platform of the plurality of computer platforms to execute its own copy of the copies of the software.
17 . The computer-implemented method of claim 16 , wherein the message includes a hash of the software that identifies the software.
18 . The computer-implemented system of claim 10 , wherein the processor sends, using the communication circuitry, at least one copy of the software to at least one computer platform of the plurality of computer platforms.
19 . A system comprising: one or more computers and one or more storage devices storing instructions, on a non-transitory computer-readable storage medium, which are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:
receiving individual results produced from executions of copies of a software by a plurality of computer platforms; determining a set of acceptable results from the individual results, wherein a difference between any individual result in the set of acceptable results and any other individual result in the set of acceptable results is less than or equal to a first threshold; determining that one of the individual results is not an acceptable result; determining a count of individual results within the set of acceptable results; determining that the count of individual results is greater than or equal to a second threshold; communicating to a first device and a second device, a signal comprising information about an action associated with an overall result of executions of the copies of the software, wherein the action is a first action when the count of individual results is greater than or equal to the second threshold and is a second action when the count of individual results is less than the second threshold; and determining a computer platform of the plurality of computer platforms that is associated with the one of the individual results that is not an acceptable result of the execution of the copy of the software by the computer platform of the plurality of computer platforms
20 . The system of claim 19 , wherein the instructions which are operable, when executed by the one or more computers, to cause the one or more computers to perform operations further cause the one or more computers to perform an operation comprising indicating, that the one of the individual results that is not an acceptable result is potential altered or falsified result.Join the waitlist — get patent alerts
Track US2021089300A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.