Some content of this application is unavailable at the moment.
If this situation persist, please contact us atFeedback&Contact
1. (WO2019025181) METHOD TO SECURE A SOFTWARE CODE PERFORMING ACCESSES TO LOOK-UP TABLES
Latest bibliographic data on file with the International Bureau    Submit observation

Pub. No.: WO/2019/025181 International Application No.: PCT/EP2018/069409
Publication Date: 07.02.2019 International Filing Date: 17.07.2018
IPC:
H04L 9/00 (2006.01) ,G06F 21/14 (2013.01) ,H04L 9/06 (2006.01)
H ELECTRICITY
04
ELECTRIC COMMUNICATION TECHNIQUE
L
TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
9
Arrangements for secret or secure communication
G PHYSICS
06
COMPUTING; CALCULATING; COUNTING
F
ELECTRIC DIGITAL DATA PROCESSING
21
Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
10
Protecting distributed programs or content, e.g. vending or licensing of copyrighted material
12
Protecting executable software
14
against software analysis or reverse engineering, e.g. by obfuscation
H ELECTRICITY
04
ELECTRIC COMMUNICATION TECHNIQUE
L
TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
9
Arrangements for secret or secure communication
06
the encryption apparatus using shift registers or memories for blockwise coding, e.g. D.E.S. systems
Applicants:
GEMALTO SA [FR/FR]; 6, rue de la Verrerie 92190 Meudon, FR
Inventors:
ADJEDJ, Michael; FR
LEVEQUE, Sylvain; FR
Agent:
BRICKS, Amélie; FR
Priority Data:
17306033.602.08.2017EP
Title (EN) METHOD TO SECURE A SOFTWARE CODE PERFORMING ACCESSES TO LOOK-UP TABLES
(FR) PROCÉDÉ DE SÉCURISATION D'UN CODE LOGICIEL RÉALISANT DES ACCÈS À DES TABLES DE CONSULTATION
Abstract:
(EN) The present invention relates to a method of securing by a first processor of a securing device, a software code performing, when executed by an execution device, a sensitive operation performing accesses to a plurality of look-up tables (T0 ,T1,... Tn), wherein said software code comprises first sequences of instructions performing said accesses, said method comprising the steps of: - a) generating (S1 ) a packed table (T) gathering said look-up tables (T0 ,T1,... Tn), - b) applying (S2) a permutation (P) to said packed table (T) to obtain a permuted table (TP), - c) replacing (S3) in the software code (SC) at least one of said first sequences of instructions, which when executed at runtime by a second processor of said execution device performs an access to a target value (X) located at a first index (i) in a first look-up table among said plurality of look-up tables by a new sequence of instructions which: o c1) determines using said permutation (P) a permuted index (iP) of the target value (X) in the permuted table, o c2) returns the value memorized at the permuted index in said permuted table (TP).
(FR) La présente invention concerne un procédé de sécurisation par un premier processeur d'un dispositif de sécurisation, d'un code logiciel réalisant, lorsqu'il est exécuté par un dispositif d'exécution, une opération sensible réalisant des accès à une pluralité de tables de consultation (T0 ,T1,... Tn), ledit code logiciel comprenant des premières séquences d'instructions réalisant lesdits accès, ledit procédé comprenant les étapes consistant : - a) à générer (S1) une table compressée (T) réunissant lesdites tables de consultation (T0 ,T1,... Tn), - b) à appliquer (S2) une permutation (P) à ladite table compressée (T) afin d'obtenir une table permutée (TP), - c) à remplacer (S3) dans le code logiciel (SC) au moins l'une desdites premières séquences d'instructions, qui, lorsqu'elle est exécutée au moment de l'exécution par un second processeur dudit dispositif d'exécution, effectue un accès à une valeur cible (X) située à un premier indice (i) dans une première table de consultation parmi ladite pluralité de tables de consultation par une nouvelle séquence d'instructions qui : o c1) détermine à l'aide de ladite permutation (P) un indice permuté (iP) de la valeur cible (X) dans la table permutée, o c2) renvoie la valeur mémorisée à l'indice permuté dans ladite table permutée (TP).
front page image
Designated States: AE, AG, AL, AM, AO, AT, AU, AZ, BA, BB, BG, BH, BN, BR, BW, BY, BZ, CA, CH, CL, CN, CO, CR, CU, CZ, DE, DJ, DK, DM, DO, DZ, EC, EE, EG, ES, FI, GB, GD, GE, GH, GM, GT, HN, HR, HU, ID, IL, IN, IR, IS, JO, JP, KE, KG, KH, KN, KP, KR, KW, KZ, LA, LC, LK, LR, LS, LU, LY, MA, MD, ME, MG, MK, MN, MW, MX, MY, MZ, NA, NG, NI, NO, NZ, OM, PA, PE, PG, PH, PL, PT, QA, RO, RS, RU, RW, SA, SC, SD, SE, SG, SK, SL, SM, ST, SV, SY, TH, TJ, TM, TN, TR, TT, TZ, UA, UG, US, UZ, VC, VN, ZA, ZM, ZW
African Regional Intellectual Property Organization (ARIPO) (BW, GH, GM, KE, LR, LS, MW, MZ, NA, RW, SD, SL, ST, SZ, TZ, UG, ZM, ZW)
Eurasian Patent Office (AM, AZ, BY, KG, KZ, RU, TJ, TM)
European Patent Office (EPO) (AL, AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, HR, HU, IE, IS, IT, LT, LU, LV, MC, MK, MT, NL, NO, PL, PT, RO, RS, SE, SI, SK, SM, TR)
African Intellectual Property Organization (BF, BJ, CF, CG, CI, CM, GA, GN, GQ, GW, KM, ML, MR, NE, SN, TD, TG)
Publication Language: English (EN)
Filing Language: English (EN)