Patents by Inventor Sylvain LEVEQUE
Sylvain LEVEQUE has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20240064002Abstract: The present disclosure relates to a method for securing an execution of an algorithm of a cryptographic process comprising several operations Oj with n,j integers and j in [0 . . . n?1], to be executed each once for a complete execution of said algorithm and which may be executed independently, said method being performed by a processor of a cryptographic device and comprising, for one execution of said algorithm, repeating the following steps, until each of said several operations has been executed at least once: drawing at random an operation to be executed among all several operations comprised in the algorithm, executing said drawn operation.Type: ApplicationFiled: July 30, 2021Publication date: February 22, 2024Applicant: THALES DIS FRANCE SASInventors: Sylvain LEVEQUE, ADJEDJ Michael
-
Publication number: 20230169186Abstract: Provided is a method and device for securing a software code. The steps include determining a salt value, generating an encrypted sensitive string by applying to said sensitive string an encryption process depending on the salt value and on an encryption key, concatenating the salt value and the encrypted sensitive string to obtain a concatenated result, and replacing in said software code said sensitive string by a protected value depending on said concatenated result. Other embodiments disclosed.Type: ApplicationFiled: May 19, 2021Publication date: June 1, 2023Applicant: THALES DIS FRANCE SASInventors: Sylvain LEVEQUE, Samuele DE FRANCESCO
-
Patent number: 11604857Abstract: Protection of a data file to be used by a white-box cryptography software application installed in memory of a device to prevent the malevolent use of a digital copy of the data file by a white-box cryptography (WBC) software application installed in memory of another device. The mechanism includes extracting an unique identifier for the device from the environment of the device and modifying data in the data file according to the unique identifier, the available white-box cryptography software application includes a software security layer to retrieve the unique identifier from the environment of the device in which the software application is installed and to use this unique identifier in combination with the stored data file when executing, the result of the execution being correct only in case where the correct unique identifier has been extracted by the executed WBC software application.Type: GrantFiled: July 16, 2019Date of Patent: March 14, 2023Assignee: THALES DIS FRANCE SASInventors: Michael Adjedj, Aline Gouget, Stéphane Grellier, Sylvain Leveque, Jan Vacek
-
Publication number: 20210312018Abstract: The present invention relates to a method to protect a data file to be used by a white-box cryptography software application installed in memory of a device to prevent the malevolent use of a digital copy of the data file by a white-box cryptography software application installed in memory of another device, said method comprising the steps of extracting an unique identifier for the device from the environment of the device and modifying data in the data file according to the unique identifier, the available white-box cryptography software application being such that it comprises a software security layer adapted to, when the WBC software application is executed, retrieve the unique identifier from the environment of the device in which it is installed and to use this unique identifier in combination with the stored data file in its execution, the result of the execution being correct only in case where the correct unique identifier has been extracted by the executed WBC software application.Type: ApplicationFiled: July 16, 2019Publication date: October 7, 2021Inventors: Michael ADJEDJ, Aline GOUGET, Stéphane GRELLIER, Sylvain LEVEQUE, Jan VACEK
-
Patent number: 11121852Abstract: 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.Type: GrantFiled: June 1, 2017Date of Patent: September 14, 2021Assignee: THALES DIS FRANCE SAInventor: Sylvain Leveque
-
Publication number: 20210143978Abstract: 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, . . .Type: ApplicationFiled: July 17, 2018Publication date: May 13, 2021Inventors: Michael ADJEDJ, Sylvain LEVEQUE
-
Patent number: 10545759Abstract: A processing unit executes a sensitive computation using multiple different and independent branches that each necessitate a given number of processing unit time units to be executed. Each execution of a sensitive computation includes: generating at least as many identifiers as the number of branches; associating each identifier to a unique branch; generating a random permutation of identifiers, wherein the number of occurrences of each identifier in the permutation is at least equal to the number of processing unit time units in the shortest of the branches; successively determining, wherein the determining includes processing each identifier in the random permutation, which branch to execute by each successive processing unit time units according to the identifier in the random permutation; and for each identifier of the random permutation, executing a processing unit time unit for the branch determined according to the identifier in the random permutation.Type: GrantFiled: November 24, 2015Date of Patent: January 28, 2020Assignee: THALES DIS FRANCE SAInventors: Karine Villegas, Fabrice Perion, Sylvain Leveque
-
Publication number: 20190182026Abstract: 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?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.Type: ApplicationFiled: June 1, 2017Publication date: June 13, 2019Inventor: Sylvain LEVEQUE
-
Publication number: 20170344376Abstract: The present invention relates to a method to execute by a processing unit a sensitive computation using multiple different and independent branches each necessitating a given number of processing unit time units to be executed, characterized in that it comprises the following steps of, at each execution of a sensitive computation: generating at least as many identifiers as the number of branches, associating each identifier to a unique branch, generating a random permutation of identifiers, the number of occurrences of each identifier in the permutation being at least equal to the number of central processing unit time units in the shortest of the branches, by processing each identifier in the random permutation, determining successively the branch to execute by each successive central processing unit time units according to the identifier value, for each identifier of the random permutation, executing a central processing unit time unit for the branch determined according to the identifier value.Type: ApplicationFiled: November 24, 2015Publication date: November 30, 2017Applicant: Gemalto SAInventors: Karine VILLEGAS, Fabrice PERION, Sylvain LEVEQUE