Certains contenus de cette application ne sont pas disponibles pour le moment.
Si cette situation persiste, veuillez nous contacter àObservations et contact
1. (WO2018138212) PROCÉDÉ DE SÉCURISATION D'UN CODE LOGICIEL
Dernières données bibliographiques dont dispose le Bureau international    Formuler une observation

N° de publication : WO/2018/138212 N° de la demande internationale : PCT/EP2018/051866
Date de publication : 02.08.2018 Date de dépôt international : 25.01.2018
CIB :
G06F 21/12 (2013.01) ,G06F 21/14 (2013.01)
G PHYSIQUE
06
CALCUL; COMPTAGE
F
TRAITEMENT ÉLECTRIQUE DE DONNÉES NUMÉRIQUES
21
Dispositions de sécurité pour protéger les calculateurs, leurs composants, les programmes ou les données contre une activité non autorisée
10
Protection de programmes ou contenus distribués, p.ex. vente ou concession de licence de matériel soumis à droit de reproduction
12
Protection des logiciels exécutables
G PHYSIQUE
06
CALCUL; COMPTAGE
F
TRAITEMENT ÉLECTRIQUE DE DONNÉES NUMÉRIQUES
21
Dispositions de sécurité pour protéger les calculateurs, leurs composants, les programmes ou les données contre une activité non autorisée
10
Protection de programmes ou contenus distribués, p.ex. vente ou concession de licence de matériel soumis à droit de reproduction
12
Protection des logiciels exécutables
14
contre l’analyse de logiciel ou l'ingénierie inverse, p.ex. par masquage
Déposants :
GEMALTO SA [FR/FR]; 6, rue de la Verrerie 92190 Meudon, FR
SFNT GERMANY GMBH [DE/DE]; Werinherstrasse 81 81541 München, DE
Inventeurs :
GARREAU, Eric; FR
VOLPE, Sébastien; FR
GARBA, Peter; FR
Mandataire :
BRICKS, Amélie; FR
Données relatives à la priorité :
17153409.226.01.2017EP
Titre (EN) METHOD TO SECURE A SOFTWARE CODE
(FR) PROCÉDÉ DE SÉCURISATION D'UN CODE LOGICIEL
Abrégé :
(EN) The present invention relates to a method of securing a compiled software code (SC) comprising computer code instructions organized in a plurality of basic blocks, said method generating a secure software code (SSC) and comprising the steps of : • determining (S1) by a processor a portion of the software code to be protected, • inserting (S2) by the processor in a selected basic block of the software code a first sequence of instructions which when executed at runtime: computes an integrity check value on said portion of the software code to be protected and computes an index value based on said computed integrity check value, • inserting (S3) by the processor in the selected basic block of the software code an indexed array of memory addresses in which the address, when executing the secure software code, of a following basic block to be executed after the selected basic block is indexed by said index value, • inserting (S4) by the processor at the end of the selected basic block of the software code a jump instruction to the address indexed in the array by said index value computed at runtime.
(FR) La présente invention concerne un procédé de sécurisation d'un code logiciel (SC) compilé comprenant des instructions de code d'ordinateur organisées en une pluralité de blocs de base, ledit procédé générant un code logiciel sécurisé (SSC) et comprenant les étapes consistant à : • déterminer (S1), par un processeur, une partie du code logiciel à protéger, • insérer (S2), par le processeur, dans un bloc de base sélectionné du code logiciel, une première séquence d'instructions qui, lorsqu'elle est exécutée au moment de l'exécution : calcule une valeur de vérification d'intégrité de ladite partie du code logiciel à protéger et calcule une valeur d'index sur la base de ladite valeur de vérification d'intégrité calculée, • insérer (S3), par le processeur, dans le bloc de base sélectionné du code logiciel, un réseau indexé d'adresses de mémoire dans lequel l'adresse, lors de l'exécution du code logiciel sécurisé, d'un bloc de base suivant à exécuter après le bloc de base sélectionné, est indexée par ladite valeur d'index, • insérer (S4), par le processeur, à l'extrémité du bloc de base sélectionné du code logiciel, une instruction de saut à l'adresse indexée dans le réseau par ladite valeur d'index calculée au moment de l'exécution.
front page image
États désignés : 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
Organisation régionale africaine de la propriété intellectuelle (ARIPO) (BW, GH, GM, KE, LR, LS, MW, MZ, NA, RW, SD, SL, ST, SZ, TZ, UG, ZM, ZW)
Office eurasien des brevets (OEAB) (AM, AZ, BY, KG, KZ, RU, TJ, TM)
Office européen des brevets (OEB (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)
Organisation africaine de la propriété intellectuelle (OAPI) (BF, BJ, CF, CG, CI, CM, GA, GN, GQ, GW, KM, ML, MR, NE, SN, TD, TG)
Langue de publication : anglais (EN)
Langue de dépôt : anglais (EN)