Partial unrolling for software security
AssigneeThales Dis France SAS
InventorSylvain Leveque
Life of this patent
Estimating the term…
Loading patent…
AssigneeThales Dis France SAS
InventorSylvain Leveque
Estimating the term…
The present invention relates to a method to intrinsically protect a computer program having a driving value dedicated to handle sensitive data, said driving value comprising a plurality of N computation units to perform computations using sensitive data and susceptible to let sensitive data leak, each unit having V possible values, said method comprising a step of unrolling k parts of P units, with P>1 and P<N and N≥P*k, by rewriting them in an equivalent sequence of computations protecting the sensitive data, said unrolling step resulting in a plurality of V{circumflex over ( )}P possible parts of P units, said method further comprising the step of introducing, in the finally executed computer program, instructions to dynamically execute the driving value by selecting, at end of each executed part, the next part to be executed among the possible parts.
A method to protect a computer program stored in a computerized device against leakage of sensitive data by said computerized device wherein a plurality of N computation units are executed depending on a driving value (DV), the driving value (DV) being a sequence of condition values having a length of N units, each unit having V possible values, wherein V≥2, the driving value (DV) being dedicated to handle sensitive data, each of the plurality of N computation units comprising a code to perform computations using sensitive data and susceptible to let sensitive data leak, said method comprising:
A non-transitory storage comprising:
A method to protect a computer program stored in a computerized device against leakage of sensitive data by said computerized device wherein a plurality of N computation units are executed depending on a driving value (DV), the driving value (DV) being a sequence of condition values having N condition values, each condition value having V possible values, the driving value (DV) being dedicated to handle sensitive data, each of the plurality of N computation units comprising a code to perform computations using sensitive data and susceptible to let sensitive data leak, said method comprising:
Dependencies are inferred from the claim text.