发明名称 |
Secure software components anti-reverse-engineering by table interleaving |
摘要 |
A method of securely implementing functions in a secure software application, including: determining, by a processor, two functions to be implemented by the secure software application; generating a first function lookup table; encrypting the first function lookup table; sorting the first function lookup table by encrypted operand; generating a second function lookup table; encrypting the second function lookup table; sorting the second function lookup table by encrypted operand; generating a flattened lookup table from a combination of the encrypted first and second function lookup tables; permutating the flattened table indices e.g. by use of public key cryptography encryption; and sorting the flattened table by the permutated flattened table indices. |
申请公布号 |
US9576116(B2) |
申请公布日期 |
2017.02.21 |
申请号 |
US201314140938 |
申请日期 |
2013.12.26 |
申请人 |
NXP B.V. |
发明人 |
Teuwen Philippe;Nikov Ventzislav;Rombouts Peter Maria Franciscus |
分类号 |
G06F21/14;H04L9/00 |
主分类号 |
G06F21/14 |
代理机构 |
|
代理人 |
|
主权项 |
1. A method of securely implementing functions in a secure software application, comprising:
determining, by a hardware processor, two functions to be implemented by the secure software application; generating a first function lookup table; encrypting the first function lookup table; sorting the first function lookup table by encrypted operand; generating a second function lookup table; encrypting the second function lookup table; sorting the second function lookup table by encrypted operand; generating a flattened lookup table from a combination of the encrypted first and second function lookup tables; permutating indices of the flattened table; and sorting the flattened table by the permutated flattened table indices. |
地址 |
Eindhoven NL |