Patents by Inventor Bruno Kindarji

Bruno Kindarji 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: 20230089689
    Abstract: The present disclosure generally relates to digital identification user interfaces.
    Type: Application
    Filed: August 31, 2022
    Publication date: March 23, 2023
    Inventors: Pablo PONS BORDES, Gianpaolo FASOLI, Tyler GENTLES, Bruno KINDARJI, Petr KOSTKA, Rohit NARULA, David W. SILVER, Libor SYKORA, Ka YANG
  • Patent number: 10868672
    Abstract: A user device can verify a user's identity to a server while protecting user privacy by not sharing any personal data with any other device. To ensure user privacy and to allow multiple independent enrollments, the user device performs an enrollment process in which the user device locally collects and uses biometric data together with a random salt to generate a set of public/private key pairs from which biometric information cannot be extracted. The public keys and the salt, but not the biometric data, are sent to a server to store. To verify user identity, a user device can repeat the collection of biometric data from the user and the generation of public/private key pairs using the salt obtained from the server. If the device can prove to the server its possession of at least a minimum number of correct private keys, the user's identity can be verified.
    Type: Grant
    Filed: September 18, 2019
    Date of Patent: December 15, 2020
    Assignee: Apple Inc.
    Inventors: Augustin J. Farrugia, Ritwik K. Kumar, Gianpaolo Fasoli, Mathieu Ciet, Bruno Kindarji, Eric D. Friedman, Gianluca Barbieri, Lucas O. Winstrom
  • Patent number: 9774443
    Abstract: Some embodiments provide a method for performing a cryptographic process. The method receives first and second cipher keys. The method generates a set of subkeys corresponding to each of the first and second cipher keys. The set of subkeys for the first cipher key is dependent on the first cipher key and the second cipher key. The method performs the cryptographic process by using the generated sets of subkeys.
    Type: Grant
    Filed: March 4, 2015
    Date of Patent: September 26, 2017
    Assignee: Apple Inc.
    Inventors: Benoit Chevallier-Mames, Bruno Kindarji, Thomas Icart, Augustin J. Farrugia, Mathieu Ciet
  • Patent number: 9716586
    Abstract: Methods, media, and systems for, in one embodiment, protecting one or more keys in an encryption and/or decryption process can use precomputed values in the process such that at least a portion of the one or more keys is not used or exposed in the process. In one example of a method, internal states of an AES encryption process are saved for use in a counter mode stream cipher operation in which the key used in the AES encryption process is not exposed or used.
    Type: Grant
    Filed: January 19, 2016
    Date of Patent: July 25, 2017
    Assignee: Apple Inc.
    Inventors: Benoit Chevallier-Mames, Mathieu Ciet, Thomas Icart, Bruno Kindarji, Augustin J. Farrugia
  • Patent number: 9692592
    Abstract: Some embodiments provide a method for performing an iterative block cipher. Line rotations and column rotations are combined to have a diversity of representations of the AES state. These protections can be performed either in static mode where the rotations are directly included in the code and the tables or in dynamic mode where the rotations are chosen randomly at execution time, depending on some entropic context variables. The two modes can also be advantageously combined together.
    Type: Grant
    Filed: September 27, 2015
    Date of Patent: June 27, 2017
    Assignee: Apple Inc.
    Inventors: Bruno Kindarji, Benoit Chevallier-Mames, Mathieu Ciet, Augustin J. Farrugia, Thomas Icart
  • Patent number: 9639673
    Abstract: The fake cryptographic layer obfuscation technique can be used to lure an attacker into expending reverse engineering efforts on sections of code the attacker would normally ignore. To do this the obfuscation technique can identify sections of code that are likely to be of lesser interest to the attacker and disguise them as higher value sections. This can be achieved by transforming a lower value section of code to include code patterns, constants, or other characteristics known to exist in sections of code of higher value, such as cryptographic routines. To transform a code section, the obfuscation technique can use one or more program modifications including control flow modifications, constant value adjustments to simulate well-known cryptographic scalars, buffer extensions, fake characteristic table insertion, debug-like information insertion, derivation function-code generation linking, and/or cryptographic algorithm specific instruction insertion.
    Type: Grant
    Filed: June 17, 2014
    Date of Patent: May 2, 2017
    Assignee: Apple Inc.
    Inventors: Pierre Betouin, Augustin J. Farrugia, Benoit Chevallier-Mames, Bruno Kindarji, Cédric Tessier, Jean-Baptiste Aviat, Mathieu Ciet, Thomas Icart
  • Patent number: 9565018
    Abstract: Some embodiments provide for an improved method for performing AES cryptographic operations. The method applies a look up table operation that includes several operations embedded within look up tables. The embedded operations include a permutation operation to permute several bytes of AES state, a multiplication operation to apply a next round's protection to the AES state, an affine function and an inverse affine function to conceal the multiplication operation, and an inverse permutation operation to remove a previous round's protection. Some embodiments provide for an optimized method for efficiently performing such protected AES operations. The method alternates rounds of AES processing between software processing (e.g. processing by a CPU, performed according to software instructions) and hardware processing (e.g. processing by cryptographic ASIC).
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: February 7, 2017
    Assignee: APPLE INC.
    Inventors: Augustin J. Farrugia, Benoit Chevallier-Mames, Bruno Kindarji, Mathieu Ciet, Thomas Icart
  • Publication number: 20160359618
    Abstract: Some embodiments provide a method for performing an iterative block cipher. Line rotations and column rotations are combined to have a diversity of representations of the AES state. These protections can be performed either in static mode where the rotations are directly included in the code and the tables or in dynamic mode where the rotations are chosen randomly at execution time, depending on some entropic context variables. The two modes can also be advantageously combined together.
    Type: Application
    Filed: September 27, 2015
    Publication date: December 8, 2016
    Inventors: Bruno Kindarji, Benoit Chevallier-Mames, Mathieu Ciet, Augustin J. Farrugia, Thomas Icart
  • Patent number: 9515818
    Abstract: Some embodiments provide a method for performing a block cryptographic operation that includes a plurality of rounds. The method receives a message that includes several blocks. The method selects a set of the blocks. The set has a particular number of blocks. The method applies a cryptographic operation to the selected set of blocks. A particular round of the cryptographic operation for a first block in the set is performed after a later round than the particular round for a second block in the set, while a different particular round for the first block is performed before an earlier round than the different particular round for the second block. In some embodiments, at least two rounds for the first block are performed one after the other without any intervening rounds for any other blocks in the set.
    Type: Grant
    Filed: September 16, 2014
    Date of Patent: December 6, 2016
    Assignee: APPLE INC.
    Inventors: Bruno Kindarji, Mathieu Ciet, Benoit Chevallier-Mames, Thomas Icart, Augustin J. Farrugia
  • Publication number: 20160261405
    Abstract: Some embodiments provide a method for performing a cryptographic process. The method receives first and second cipher keys. The method generates a set of subkeys corresponding to each of the first and second cipher keys. The set of subkeys for the first cipher key is dependent on the first cipher key and the second cipher key. The method performs the cryptographic process by using the generated sets of subkeys.
    Type: Application
    Filed: March 4, 2015
    Publication date: September 8, 2016
    Inventors: Benoit Chevallier-Mames, Bruno Kindarji, Thomas Icart, Augustin J. Farrugia, Mathieu Ciet
  • Publication number: 20160211972
    Abstract: Methods, media, and systems for, in one embodiment, protecting one or more keys in an encryption and/or decryption process can use precomputed values in the process such that at least a portion of the one or more keys is not used or exposed in the process. In one example of a method, internal states of an AES encryption process are saved for use in a counter mode stream cipher operation in which the key used in the AES encryption process is not exposed or used.
    Type: Application
    Filed: January 19, 2016
    Publication date: July 21, 2016
    Inventors: Benoit Chevallier-Mames, Mathieu Ciet, Thomas Icart, Bruno Kindarji, Augustin J. Farrugia
  • Publication number: 20160080143
    Abstract: Some embodiments provide a method for performing a block cryptographic operation that includes a plurality of rounds. The method receives a message that includes several blocks. The method selects a set of the blocks. The set has a particular number of blocks. The method applies a cryptographic operation to the selected set of blocks. A particular round of the cryptographic operation for a first block in the set is performed after a later round than the particular round for a second block in the set, while a different particular round for the first block is performed before an earlier round than the different particular round for the second block. In some embodiments, at least two rounds for the first block are performed one after the other without any intervening rounds for any other blocks in the set.
    Type: Application
    Filed: September 16, 2014
    Publication date: March 17, 2016
    Inventors: Bruno Kindarji, Mathieu Ciet, Benoit Chevallier-Mames, Thomas Icart, Augustin J. Farrugia
  • Patent number: 9264222
    Abstract: Methods, media, and systems for, in one embodiment, protecting one or more keys in an encryption and/or decryption process can use precomputed values in the process such that at least a portion of the one or more keys is not used or exposed in the process. In one example of a method, internal states of an AES encryption process are saved for use in a counter mode stream cipher operation in which the key used in the AES encryption process is not exposed or used.
    Type: Grant
    Filed: August 30, 2013
    Date of Patent: February 16, 2016
    Assignee: Apple Inc.
    Inventors: Benoit Chevallier-Mames, Mathieu Ciet, Thomas Icart, Bruno Kindarji, Augustin J. Farrugia
  • Publication number: 20150363580
    Abstract: The fake cryptographic layer obfuscation technique can be used to lure an attacker into expending reverse engineering efforts on sections of code the attacker would normally ignore. To do this the obfuscation technique can identify sections of code that are likely to be of lesser interest to the attacker and disguise them as higher value sections. This can be achieved by transforming a lower value section of code to include code patterns, constants, or other characteristics known to exist in sections of code of higher value, such as cryptographic routines. To transform a code section, the obfuscation technique can use one or more program modifications including control flow modifications, constant value adjustments to simulate well-known cryptographic scalars, buffer extensions, fake characteristic table insertion, debug-like information insertion, derivation function-code generation linking, and/or cryptographic algorithm specific instruction insertion.
    Type: Application
    Filed: June 17, 2014
    Publication date: December 17, 2015
    Inventors: Pierre Betouin, Augustin J. Farrugia, Benoit Chevallier-Mames, Bruno Kindarji, Cédric Tessier, Jean-Baptiste Aviat, Mathieu Ciet, Thomas Icart
  • Publication number: 20150349951
    Abstract: Some embodiments provide for an improved method for performing AES cryptographic operations. The method applies a look up table operation that includes several operations embedded within look up tables. The embedded operations include a permutation operation to permute several bytes of AES state, a multiplication operation to apply a next round's protection to the AES state, an affine function and an inverse affine function to conceal the multiplication operation, and an inverse permutation operation to remove a previous round's protection. Some embodiments provide for an optimized method for efficiently performing such protected AES operations. The method alternates rounds of AES processing between software processing (e.g. processing by a CPU, performed according to software instructions) and hardware processing (e.g. processing by cryptographic ASIC).
    Type: Application
    Filed: May 30, 2014
    Publication date: December 3, 2015
    Applicant: Apple Inc.
    Inventors: Augustin J. Farrugia, Benoit Chevallier-Mames, Bruno Kindarji, Mathieu Ciet, Thomas Icart
  • Patent number: 9189425
    Abstract: In the field of computer enabled cryptography, such as a cipher using lookup tables, the cipher is hardened against an attack by a protection process which obscures the lookup tables using the properties of bijective functions and applying masks to the tables' input and output values, for encryption or decryption. This is especially advantageous in a “White Box” environment where an attacker has full access to the cipher algorithm, including the algorithm's internal state during its execution. This method and the associated computing apparatus are useful for protection against known attacks on “White Box” ciphers, by obfuscating lookup table data, thereby increasing the cipher's complexity against reverse engineering and other attacks.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: November 17, 2015
    Assignee: Apple Inc.
    Inventors: Augustin J. Farrugia, Benoit Chevallier-Mames, Bruno Kindarji, Mathieu Ciet, Thomas Icart
  • Patent number: 9143317
    Abstract: Various embodiments of a computer-implemented method of information security using block cipher column rotations are described. The cipher state column rotations provide resistance to white box side channel memory correlation attacks designed to reverse-engineer a symmetric cipher key associated with the information security system. The column rotation operations can be performed on the cipher state of a block cipher, and then removed from the result, to provide obfuscation of the data when in memory, while not impacting the resulting output of the cipher or decipher operation. The method additionally includes performing a first rotation of an iteration specific cipher subkey according to the first rotation index, performing an iteration of the block cipher operations on the cipher state matrix, and rotating the columns of the cipher state matrix according to an inverse of the first rotation index.
    Type: Grant
    Filed: May 24, 2013
    Date of Patent: September 22, 2015
    Assignee: Apple Inc.
    Inventors: Benoit Chevallier-Mames, Mathieu Ciet, Thomas Icart, Bruno Kindarji, Augustin J. Farrugia
  • Patent number: 8976960
    Abstract: A method and an apparatus that generate a plurality of elements randomly as a split representation of an input used to provide an output data cryptographically representing an input data are described. The input may correspond to a result of a combination operation on the elements. Cryptographic operations may be performed on the input data and the elements to generate a plurality of data elements without providing data correlated with the key. The combination operation may be performed on the data elements for the output data.
    Type: Grant
    Filed: April 2, 2012
    Date of Patent: March 10, 2015
    Assignee: Apple Inc.
    Inventors: Mathieu Ciet, Benoit Chevallier-Mames, Thomas Icart, Bruno Kindarji, Augustin J. Farrugia
  • Patent number: 8972727
    Abstract: Method of identification or of authorization using a system comprising at least one sensor for acquiring biometric data and one secure module storing a set of digital data obtained starting from a set of respective biometric data by means of a digitization algorithm. According to this method, a biometric data value is obtained, acquired by the sensor; a digital value is obtained by application of the digitization algorithm to the acquired biometric data value; within the secure module, at least some of the digital data from said set of digital data are ranked according to their proximity to the digital value obtained; and a biometric data value is obtained from said set of biometric data by taking into account a position of the corresponding digital data within the ranking.
    Type: Grant
    Filed: December 4, 2009
    Date of Patent: March 3, 2015
    Assignee: Morpho
    Inventors: Bruno Kindarji, Hervé Chabanne, Julien Bringer
  • Patent number: 8966279
    Abstract: In the field of computer enabled cryptography, such as a keyed block cipher having a plurality of rounds, the cipher is hardened against an attack by protecting the cipher key by means of a key expansion process which obscures the cipher and/or the round keys by increasing their lengths to provide an expanded version of the keys for carrying out encryption or decryption using the cipher. This is especially advantageous in a “White Box” environment where an attacker has full access to the cipher algorithm, including the algorithm's internal state during its execution. This method and the associated computing apparatus are useful where the key is derived through a process and so is unknown when the software code embodying the cipher is compiled. This is typically the case where there are many users of the cipher and each has his own key, or where each user session has its own key.
    Type: Grant
    Filed: December 21, 2010
    Date of Patent: February 24, 2015
    Assignee: Apple Inc.
    Inventors: Augustin J. Farrugia, Benoit Chevallier-Mames, Mathieu Ciet, Thomas Icart, Bruno Kindarji