摘要 |
A method for rendering software resistant to reverse engineering. Replace at least one first constant (mathematical expression, etc.) in a computatio nal expression with a second mixed mathematical and bitwise-Boolean expressi on, the first constant being simpler than the second expression and the seco nd expression being based on the value or the variables found in the first c onstant (or expression). Evaluation of the second mixed mathematical and bit wise-Boolean expression produces a value preserving the value of the first c onstant, either: with the original value of the first constant or the origin al value of the result of the first expression, in which case the second mix ed mathematical and bitwise-Boolean expression is obtained from the first co nstant by converting the first constant by mathematical identities; or, in a n 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 f unction, in which case the second mixed mathematical and bitwise-Boolean exp ression is obtained from the first constant by modifying the first constant by a combination of conversion according to mathematical identities and tran sformation according to an information preserving encoding function. |