Non-deterministic secure active element machine
First Claim
1. A physical computing machine implemented method for performing computations comprising:
- constructing, by the physical computing machine, a procedure, the procedure including a set of one or more machine instructions, which when invoked cause the machine to perform one or more tasks;
constructing, by the physical computing machine, a first method of a multiplicity of possible methods for performing a first instance of the procedure;
performing computations by implementing the first instance of the procedure by the first method on the physical computing machine, therein implementing the set of one or more machine instructions according to the first method;
constructing, by the physical computing machine, a second method of the multiplicity of possible methods for performing a second instance of the procedure; and
performing computations by implementing the second instance of the procedure by the second method on the physical computing machine, therein implementing the same set of one or more machine instructions according to the second method;
wherein the constructing of the first instance of the procedure on the physical computing machine and the constructing of the second instance of the procedure on the physical computing machine are based on a non-deterministic process running within the physical computing machine;
the first instance of the procedure performs an operation specified by the set of instructions and the second instance of the procedure also performs the operation specified by the set of one or more machine instructions, butthe first instance of the procedure performs the procedure by the first method, and therein performs the operation specified by the set of one or more machine instructions, via the first method, andthe second instance of the procedure performs the procedure, via the second method and therein performs the operation specified by the set of one or more machine instructions by the second method,therein protecting security of the method by obscuring the operation performed by the procedure from a potential hacker;
wherein said non-deterministic process is generated from quantum events occurring on the physical computing machine.
2 Assignments
0 Petitions
Accused Products
Abstract
Based upon Turing incomputability, connectedness and properties of the active element machine (AEM), a malware-resistant computing machine is constructed. The active element computing machine is a non-Turing, non-register machine. AEM programs are designed so that the purpose of the AEM computations are difficult to apprehend by an adversary and hijack with malware. These methods can also be used to help thwart reverse engineering of proprietary algorithms, hardware design and other areas of intellectual property. Using quantum randomness, the AEM can deterministically execute a universal Turing machine (universal digital computer program) with active element firing patterns that are Turing incomputable. In an embodiment, a more powerful computational procedure is created than Turing'"'"'s computational procedure (equivalent to a digital computer procedure). Current digital computer algorithms and procedures can be derived or designed with a Turing machine computational procedure. A novel computer is invented so that a program'"'"'s execution is difficult to apprehend.
238 Citations
29 Claims
-
1. A physical computing machine implemented method for performing computations comprising:
-
constructing, by the physical computing machine, a procedure, the procedure including a set of one or more machine instructions, which when invoked cause the machine to perform one or more tasks; constructing, by the physical computing machine, a first method of a multiplicity of possible methods for performing a first instance of the procedure; performing computations by implementing the first instance of the procedure by the first method on the physical computing machine, therein implementing the set of one or more machine instructions according to the first method; constructing, by the physical computing machine, a second method of the multiplicity of possible methods for performing a second instance of the procedure; and performing computations by implementing the second instance of the procedure by the second method on the physical computing machine, therein implementing the same set of one or more machine instructions according to the second method; wherein the constructing of the first instance of the procedure on the physical computing machine and the constructing of the second instance of the procedure on the physical computing machine are based on a non-deterministic process running within the physical computing machine;
the first instance of the procedure performs an operation specified by the set of instructions and the second instance of the procedure also performs the operation specified by the set of one or more machine instructions, butthe first instance of the procedure performs the procedure by the first method, and therein performs the operation specified by the set of one or more machine instructions, via the first method, and the second instance of the procedure performs the procedure, via the second method and therein performs the operation specified by the set of one or more machine instructions by the second method, therein protecting security of the method by obscuring the operation performed by the procedure from a potential hacker; wherein said non-deterministic process is generated from quantum events occurring on the physical computing machine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 17, 18)
-
-
13. A physical computing machine implemented method for performing computations comprising:
-
constructing, by the physical computing machine, a procedure, the procedure including a set of one or more machine instructions, which when invoked cause the machine to perform one or more tasks; constructing, by the physical computing machine, a first method of a multiplicity of possible methods for performing a first instance of the procedure; performing computations by implementing the first instance of the procedure by the first method on the physical computing machine, therein implementing the set of one or more machine instructions according to the first method; constructing, by the physical computing machine, a second method of the multiplicity of possible methods for performing a second instance of the procedure; and performing computations by implementing the second instance of the procedure by the second method on the physical computing machine, therein implementing the same set of one or more machine instructions according to the second method; wherein the constructing of the first instance of the procedure on the physical computing machine and the constructing of the second instance of the procedure on the physical computing machine are based on a non-deterministic process running within the physical computing machine;
the first instance of the procedure performs an operation specified by the set of instructions and the second instance of the procedure also perform the operation specified by the same the set of one or more machine instructions, butthe first instance of the procedure performs the procedure by the first method, and therein performs the operation specified by the set of one or more machine instructions, via the first method, and the second instance of the procedure performs the procedure, via the second method and therein performs the operation specified by the set of one or more machine instructions by the second method, therein protecting security of the method by obscuring the operation performed by the procedure from a potential hacker; wherein said physical computing machine is comprised of a multiplicity of computing elements; and
a multiplicity of couplings communicatively connecting the multiplicity of computing elements to one another, such that the couplings are capable of transmitting messages between the multiplicity of computing elements;the physical computing machine implemented method further including at least constructing a group of connected computing elements; constructing a group of sets of possible messages of a group of computing elements;
each set of messages of the group of sets being capable of computing the procedure;the multiplicity of possible methods including a multiplicity of messages of the group of the connected computing elements, the multiplicity of messages computing the procedure; selecting a first set of messages, the first set of messages performs the computations for the first instance of the procedure; and selecting a second set of messages, the second set of messages performs the computations for a second instance of the procedure.
-
-
14. A machine implemented method for performing computations comprising:
-
constructing a procedure; constructing a first method of a multiplicity of possible methods for a first instance of the procedure; performing computations using the first instance of the procedure; constructing a second method of the multiplicity of possible methods for computing a second instance of the procedure; and performing computations using the second instance of the procedure; wherein a non-deterministic process helps construct the first instance and second instances of the procedure; wherein said machine includes at least a multiplicity of computing elements; and
a multiplicity of couplings communicatively connecting the multiplicity of computing elements to one another, such that the couplings are capable of transmitting messages between the multiplicity of computing elements;constructing a group of connected computing elements; constructing a group of sets of possible messages of a group of computing elements;
each set of messages of the group of sets being capable of computing the procedure;the multiplicity of possible methods including a multiplicity of messages of the group of the connected computing elements, the multiplicity of messages computing the procedure; selecting a first set of messages, the first set of messages performs the computations for the first instance of the procedure; and selecting a second set of messages, the second set of messages performs the computations for a second instance of the procedure; wherein said computing elements and couplings are implemented with an active element machine; wherein said messages are firing patterns; and wherein said non-deterministic process is generated from quantum events. - View Dependent Claims (15, 16)
-
-
19. A system for performing computations including at least a programmed machine, the programmed machine being programmed to implement a method comprising:
-
constructing, by the programmed machine, a desired set of input/output pairs, the set including a number of input/output pairs, the set forming a procedure, wherein each input/output pair specifies at least output that results from processing the input of the input/output pair, and the procedure is a combination of one or more machine-implemented steps that are implemented as a result of invoking the set of input/output pairs; selecting, by the programmed machine, one computation, as a first computation, from a multiplicity of possible computations for computing results of implementing the input/output pairs, where each of the multiplicity of computations produces results that are independent of which computation of the multiplicity of computations is selected and each computation computes results of implementing the input/output pairs, therein causing the machine to perform the steps of the procedure, the selecting of the first computation being based upon a non-deterministic process running within hardware associated with the programmed machine; constructing, by the programmed machine, the first computation from the multiplicity of possible computations for computing results of implementing the input/output pairs, for a first instance of the procedure; performing computations, by the programmed machine, based on the first instance of the procedure; selecting another computation, as a second computation, from the multiplicity of possible computations for computing results of implementing the input/output pairs therein computing the procedure, the selecting of the second computation being based upon the non-deterministic process running within hardware associated with the programmed machine; constructing, by the programmed machine, the second computation of the multiplicity of possible computations for computing results of implementing the input/output pairs, for a second instance of the procedure; and performing, by the programmed machine, computations based on the second instance of the procedure; wherein said non-deterministic process is generated from quantum events. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A system for performing computations comprising:
-
constructing a desired set of input/output pairs, the set including a number of input/output pairs, the set forming a procedure; constructing a first computation from the multiplicity of possible computations for computing the input/output pairs, for a first instance of the procedure; performing computations using the first instance of the procedure; constructing a second computation of the multiplicity of possible computations for computing the input/output pairs, for a second instance of the procedure; and performing computations using the second instance of the procedure; wherein a non-deterministic process helps select the first and the second computations; a multiplicity of computing elements; and
a multiplicity of couplings communicatively connecting the multiplicity of computing elements to one another, such that the couplings are capable of transmitting messages between the multiplicity of computing elements;the constructing of the multiplicity of computations of computing the input/output pairs, including at least constructing a group of connected computing elements for computing the desired set of input/output pairs, each computing element being capable of sending and receiving messages, and constructing a group of sets of possible messages from a group of computing elements;
each set of messages of the group of sets being capable of computing the desired set of input/output pairs;the multiplicity of possible computations including a multiplicity of messages of the group of the connected computing elements, the multiplicity of messages computing the desired set of input/output sets; selecting a first set of messages, the first set of messages performs the computations for the first instance of the procedure; and selecting a second set of messages, the second set of firing messages performs the computations for a second instance of the procedure;
wherein said computing elements and couplings are implemented with an active element machine;
wherein said messages are firing patterns; and
wherein said non-deterministic process is generated from quantum events. - View Dependent Claims (26, 27)
-
-
28. A physical computing machine implemented method for performing computations comprising:
-
constructing, by the physical computing machine, a procedure; constructing, by the physical computing machine, a first method of a multiplicity of possible methods for a first instance of the procedure; performing computations by implementing the first instance of the procedure on the physical computing machine; constructing, by the physical computing machine, a second method of the multiplicity of possible methods for computing a second instance of the procedure; and performing computations by implementing the second instance of the procedure on the physical computing machine; wherein the constructing of the first instance of the procedure on the physical computing machine and the constructing of the second instance of the procedure on the physical computing machine are based on a non-deterministic process running within the physical computing machine;
the first instance of the procedure performs an operation specified by the set of instructions and the second instance of the procedure also perform the operation, but the first instance of the procedure performs the operation, via the first method, and the second instance of the procedure performs the procedure, via the second method, therein protecting security of the method by obscuring the operation performed by the procedure from a potential hackerwherein the first instance is a first instance of a universal machine that implements the procedure; the second instance is a second instance of the universal machine that implements the procedure; base code of each of the multiplicity of methods is different from the base code of the others of the multiplicity of methods, and the base-code that is different each implement the procedure, the universal machine is a universal Turing machine, and the base code is active element machine code.
-
-
29. A physical computing machine implemented method for performing computations comprising:
-
constructing, by the physical computing machine, a procedure; constructing, by the physical computing machine, a first method of a multiplicity of possible methods for a first instance of the procedure; performing computations by implementing the first instance of the procedure on the physical computing machine; constructing, by the physical computing machine, a second method of the multiplicity of possible methods for computing a second instance of the procedure; and performing computations by implementing the second instance of the procedure on the physical computing machine; wherein the constructing of the first instance of the procedure on the physical computing machine and the constructing of the second instance of the procedure on the physical computing machine are based on a non-deterministic process running within the physical computing machine;
the first instance of the procedure and the second instance of the procedure perform the same operation, but the first instance of the procedure performs the operation, via the first method, and the second instance of the procedure performs the procedure, via the second method, therein protecting security of the method by obscuring the operation performed by the procedure from a potential hacker,wherein the first instance is a first instance of a universal machine that implements the procedure; the second instance is a second instance of the universal machine that implements the procedure; base code of each of the multiplicity of methods is different from the base code of the others of the multiplicity of methods, and the base-code that is different each implement the procedure, the based code is active element machine code.
-
Specification