System and method of interlocking to protect software—mediated program and device behaviors
AssigneeIrdeto Canada Corporation
InventorsHarold Joseph Johnson, Yuan Xiang Gu, Yongxin Zhou
Life of this patent
Estimating the term…
Loading patent…
AssigneeIrdeto Canada Corporation
InventorsHarold Joseph Johnson, Yuan Xiang Gu, Yongxin Zhou
Estimating the term…
A method for rendering software resistant to reverse engineering. Replace at least one first constant (mathematical expression, etc.) in a computational expression with a second mixed mathematical and bitwise-Boolean expression, the first constant being simpler than the second expression and the second expression being based on the value or the variables found in the first constant (or expression). Evaluation of the second mixed mathematical and bitwise-Boolean expression produces a value preserving the value of the first constant, either: with the original value of the first constant or the original value of the result of the first expression, in which case the second mixed mathematical and bitwise-Boolean expression is obtained from the first constant by converting the first constant by mathematical identities; or, in an encoded form, as a new value, which can be converted back to the original value of the first constant by applying an information-preserving decoding function, in which case the second mixed mathematical and bitwise-Boolean expression is obtained from the first constant by modifying the first constant by a combination of conversion according to mathematical identities and transformation according to an information preserving encoding function.
An automated method for rendering a software program resistant to reverse engineering analysis, whereby existing methods are based on substituting, modifying, or encoding computational expressions or statements, in any one of the following application:
An automated method for rendering a software program resistant to reverse engineering analysis, whereby existing methods are based on substituting, modifying, or encoding computational expressions or statements, in any one of the following application:
An automated method for rendering a software program resistant to reverse engineering analysis, whereby existing methods are based on substituting, modifying, or encoding computational expressions or statements, in any one of the following application:
Dependencies are inferred from the claim text.