Secure logic interlocking
First Claim
1. A system for assuring proper execution of a software computer program on a computer apparatus, the system comprising:
- an integrated combination of computer software program comprised of a software application logic module and an operation assurance logic module;
wherein the software application logic module and the operational assurance logic module each provide a plurality of sub-procedures which operate as a combined plurality of sub-procedures that are executed to provide combined computing functions comprised of the functionality of the respective software application module, and an integrated concurrent generation of unique security tags utilizing the functionality of the respective operational assurance logic module;
storage for the integrated computer software program;
a controller of the integrated computer software program for execution on the computer apparatus of a concurrent executed integrated combination of the respective software application logic module, and the respective operational assurance logic module, as expressly provided in the associated computer software program;
wherein during the combined computing functions, the unique security tags which provide for validating that the software computer program as executed was not tampered with, are selectively generated by the sub-procedures of the operational assurance logic module and are only generated when the integrated software computer program is executed and has not been tampered with; and
an associated operational checking logic, for validating that the integrated software computer program as executed was not tampered with responsive to the unique security tags.
3 Assignments
0 Petitions
Accused Products
Abstract
This invention discloses a method and system for processing logic modules, each having a separate functionality, into a unique functionality that is to be executed in an interlocked mode as a unique functionality. The method is based on taking logic modules (programs and data) with known functionality and transforming them into a hidden program by integrating modules to execute together into a logic which is partially obfuscated and/or encrypted and/or physically hidden. The hidden program is being updated dynamically to strengthen it against reverse engineering efforts. The program includes the functionality for generating security signals, which are unpredictable by observers, such as a pseudo random sequence of security signals. Only elements that share the means for producing the security signals can check their validity. The modules include operational tasks and performance parameters for this operation. The operation can be transmission of data packets with given parameters of performance that the hidden program contains. The generated security signals thus assure that the correct operation was taken place and can be used to signal various cryptographic parameters as well.
38 Citations
74 Claims
-
1. A system for assuring proper execution of a software computer program on a computer apparatus, the system comprising:
-
an integrated combination of computer software program comprised of a software application logic module and an operation assurance logic module; wherein the software application logic module and the operational assurance logic module each provide a plurality of sub-procedures which operate as a combined plurality of sub-procedures that are executed to provide combined computing functions comprised of the functionality of the respective software application module, and an integrated concurrent generation of unique security tags utilizing the functionality of the respective operational assurance logic module; storage for the integrated computer software program; a controller of the integrated computer software program for execution on the computer apparatus of a concurrent executed integrated combination of the respective software application logic module, and the respective operational assurance logic module, as expressly provided in the associated computer software program; wherein during the combined computing functions, the unique security tags which provide for validating that the software computer program as executed was not tampered with, are selectively generated by the sub-procedures of the operational assurance logic module and are only generated when the integrated software computer program is executed and has not been tampered with; and an associated operational checking logic, for validating that the integrated software computer program as executed was not tampered with responsive to the unique security tags. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A method for assuring proper execution of a software computer program executing on a computing system, the method comprising:
-
providing an integrated computer software program comprised of a software application logic module and an operational assurance logic module; wherein the software application logic module is operable to provide a plurality of sub-procedures to provide computing functions associated with the software application logic module execution of the integrated software computer program and as a part of the integrated software computer program; wherein the operational assurance logic provides for generation of unique security tags securely associated with the execution of the integrated software computer program; executing the integrated software computer program to provide generation of the unique software keys by the operation assurance logic when the integrated software computer program as executed is unaltered, to provide thr validating that the integrated software computer program that is being executed was not altered and that there was no tampering of the integrated software computer program; wherein the executing of the integrated software computer program provides a set of combined computing functions; wherein during the combined computing functions, an operational set of unique data tags are generated by the sub-procedures of the operational assurance logic module to provide for validating that the integrated software computer program as executed was not tampered with; wherein the integrated software computer program generates the operational unique data tags which only when operating as a part of the integrated software computer program; and validating that the integrated software computer program as executed was not tampered with, responsive to the unique data tags. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60)
-
-
61. A method for assuring non-tampered proper execution of a software computer program executing on a computing subsystem, the method comprising:
-
providing an integrated combination of computer software program comprised of a software application logic module and an operation assurance logic module; wherein the software application logic module and the operational assurance logic module each provide a plurality of sub-procedures which operate as a combined plurality of sub-procedures that are executed to provide combined computing functions comprised of the functionality of the respective software application module, and an integrated concurrent generation of unique security tags utilizing the functionality of the respective operational assurance logic module; executing on the computer apparatus a concurrently executed integrated combination of the respective software application logic module and the respective operational assurance logic module, as expressly provided in the associated computer software program; wherein during the combined computing functions, the unique security tags which provide for validating that the software computer program as executed was not tampered with, are selectively generated by the sub-procedures of the operational assurance logic module and are only generated when the integrated software computer program is executed and has not been tampered with; and validating that the integrated software computer program as executed was not tampered with responsive to the unique security tags. - View Dependent Claims (62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74)
-
Specification