Patents by Inventor Michael Hutter

Michael Hutter 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).

  • Patent number: 11914870
    Abstract: Aspects of the present disclosure calculate masked data shares dynamically inside the CPU boundary, and use a plurality of memory channels to write the masked data shares to an external memory location and/or to read the data shares from that external memory location. Each dynamically generated mask value is uniquely associated with a corresponding memory channel during writing data to the external memory. The modified masked data is unmasked or remasked during a subsequent read operation.
    Type: Grant
    Filed: March 4, 2020
    Date of Patent: February 27, 2024
    Assignee: CRYPTOGRAPHY RESEARCH, INC.
    Inventors: Elke De Mulder, Michael Hutter, Samantha Gummalla
  • Publication number: 20240045998
    Abstract: A bundled-data protocol can be used to synchronize the data flow in the mask shares. A random synchronization token is input and “bundled” with the combinatorial logic of a share. An additional output from the combinatorial logic is also provided such that when the original combinational output is exclusive OR'd (XOR'd) with the additional output yields the random synchronization token. When the XOR of the original and additional outputs, and the input synchronization token are equal, it indicates that the computation of the combinatorial logic is complete. Thus, the result of the comparison of the XOR of the original and additional outputs, and the input synchronization token may be used as a “done” or “enable” handshake signal to allow asynchronous gating elements (e.g., AND gates, asynchronous set-reset latches, and/or state-holding elements like the Muller C-element, etc.) to start and stop the flow of data in a mask share.
    Type: Application
    Filed: November 30, 2021
    Publication date: February 8, 2024
    Inventor: Michael HUTTER
  • Patent number: 11863670
    Abstract: Disclosed are memory encryption systems and methods that rotate encryption keys for robust resistance against side-channel-analysis (SCA)-based attacks on communication paths between an encryption engine within a trust boundary and an external memory component. A key data structure has a plurality of keys that are used to encrypt a plurality of memory blocks in the external memory. The memory blocks encrypted with the oldest key of the key data structure are identified. Encrypted data is read from the identified memory blocks. The encrypted data is decrypted from the identified memory blocks. The data is then re-encrypted using the selected key that is newer than the oldest key, and re-written to the identified memory blocks.
    Type: Grant
    Filed: April 4, 2020
    Date of Patent: January 2, 2024
    Assignee: Cryptography Research, Inc.
    Inventors: Mark Evan Marson, Michael Hutter, Bart Stevens
  • Patent number: 11822704
    Abstract: A first arithmetic input share and a second arithmetic input share of an initial arithmetically-masked cryptographic value are received. A sequence of operations using the arithmetic input shares and a randomly generated number is performed, where a current operation in the sequence of operations generates a corresponding intermediate value that is used in a subsequent operation. At the end of the sequence of operations, a first Boolean output share and a second Boolean output share are generated. The arithmetic-to-Boolean mask conversion is independent of the input bit length.
    Type: Grant
    Filed: October 28, 2019
    Date of Patent: November 21, 2023
    Assignee: CRYPTOGRAPHY RESEARCH, INC.
    Inventors: Michael Hutter, Michael Tunstall
  • Patent number: 11620109
    Abstract: A first input share value, a second input share value, and a third input share value may be received. The first input share value may be converted to a summation or subtraction between an input value and a combination of the second input share value and the third input share value. A random number value may be generated and combined with the second input share value and the third input share value to generate a combined value. Furthermore, a first output share value may be generated based on a combination of the converted first input share value, the combined value, and additional random number values.
    Type: Grant
    Filed: December 16, 2020
    Date of Patent: April 4, 2023
    Assignee: Cryptography Research, Inc.
    Inventors: Michael Hutter, Michael Tunstall
  • Publication number: 20230016420
    Abstract: Hardware masking may be used as a countermeasure to make power analysis attacks more difficult. Masking attempts to decouple the secret and/or processed values of a cryptographic algorithm from its intermediate values. One method of masking probabilistically splits each bit of a computation into multiple shares. Mask-share domains (i.e., the wires and gates that perform a computation on a share) are physically spaced to reduce coupling between mask-share domains. The mask-share domains may be connected to the same power supply network. The physical distance between mask-share domains along the power-supply network may be selected to reduce coupling between mask-share domains that may occur via the power supply network. The mask-share domains may each be connected to different on-chip power supply networks.
    Type: Application
    Filed: November 30, 2020
    Publication date: January 19, 2023
    Inventors: Michael HUTTER, Helena HANDSCHUH, Scott C. BEST
  • Patent number: 11539509
    Abstract: Disclosed is a method and a system to execute the method to perform a first hashing operation to compute a first hash value, store the first hash value in a plurality of output registers, store a second message in a plurality of input registers, perform a first iteration of a second hashing operation, with an input to the second hashing operation including the second message and the first hash value, determine that a first portion of the second message, stored in a first register of the plurality of input registers, has been processed in course of the second hashing operation, and move a first portion of the first hash value stored in a first register of the plurality of output registers to the first register of the plurality of input registers.
    Type: Grant
    Filed: January 27, 2021
    Date of Patent: December 27, 2022
    Assignee: Cryptography Research, Inc.
    Inventors: Michael Hutter, Matthew Pond Baker
  • Publication number: 20220191004
    Abstract: An input data may be received. A portion of a cryptographic operation may be performed with the received input data at a first function component. During the performance of the cryptographic operation at the first function component, a pre-charge operation may be performed at a second function component. Furthermore, the second function component may be used to perform another portion of the cryptographic operation with a result of the portion of the cryptographic operation performed at the first function component.
    Type: Application
    Filed: April 1, 2020
    Publication date: June 16, 2022
    Inventors: Pascal Sasdrich, Begül Bilgin, Michael Hutter
  • Publication number: 20220182232
    Abstract: Disclosed are memory encryption systems and methods that rotate encryption keys for robust resistance against side-channel-analysis (SCA)-based attacks on communication paths between an encryption engine within a trust boundary and an external memory component. A key data structure has a plurality of keys that are used to encrypt a plurality of memory blocks in the external memory. The memory blocks encrypted with the oldest key of the key data structure are identified. Encrypted data is read from the identified memory blocks. The encrypted data is decrypted from the identified memory blocks. The data is then re-encrypted using the selected key that is newer than the oldest key, and re-written to the identified memory blocks.
    Type: Application
    Filed: April 4, 2020
    Publication date: June 9, 2022
    Inventors: Mark Evan Marson, Michael Hutter, Bart Stevens
  • Patent number: 11353504
    Abstract: A first plurality of logic gates and a second plurality of logic gates may be associated with a symmetric configuration. A first output at a first value may be generated by the first plurality of logic gates based on a first portion of input signals. A second output may be generated by the second plurality of logic gates at the first value based on a second portion of the input signals. A subsequent first output at a particular value may be generated by the first plurality of logic gates based on a first portion of a second plurality of input signals and a subsequent second output may be generated by the second plurality of logic gates based on a second portion of the second plurality of input signals. A value of the subsequent second output may be complementary to the particular value of the subsequent first output.
    Type: Grant
    Filed: June 26, 2020
    Date of Patent: June 7, 2022
    Assignee: CRYPTOGRAPHY RESEARCH, INC.
    Inventors: Michael Hutter, Matthew Pond Baker
  • Publication number: 20220147251
    Abstract: Aspects of the present disclosure calculate masked data shares dynamically inside the CPU boundary, and use a plurality of memory channels to write the masked data shares to an external memory location and/or to read the data shares from that external memory location. Each dynamically generated mask value is uniquely associated with a corresponding memory channel during writing data to the external memory. The modified masked data is unmasked or remasked during a subsequent read operation.
    Type: Application
    Filed: March 4, 2020
    Publication date: May 12, 2022
    Inventors: Elke De Mulder, Michael Hutter, Samantha Gummalla
  • Publication number: 20220075879
    Abstract: Aspects of the present disclosure involve a method and a system to support execution of the method to perform a cryptographic operation involving a first vector and a second vector, by projectively scaling the first vector, performing a first operation involving the scaled first vector and the second vector to obtain a third vector, generating a random number, storing the third vector in a first location, responsive to the random number having a first value, or in a second location, responsive to the random number having a second value, and performing a second operation involving a first input and a second input, wherein, based on the random number having the first value or the second value, the first input is the third vector stored in the first location or the second location and the second input is a fourth vector stored in the second location or the first location.
    Type: Application
    Filed: January 6, 2020
    Publication date: March 10, 2022
    Inventors: Michael Alexander Hamburg, Michael Tunstall, Michael Hutter
  • Publication number: 20210406406
    Abstract: A first arithmetic input share and a second arithmetic input share of an initial arithmetically-masked cryptographic value are received. A sequence of operations using the arithmetic input shares and a randomly generated number is performed, where a current operation in the sequence of operations generates a corresponding intermediate value that is used in a subsequent operation. At the end of the sequence of operations, a first Boolean output share and a second Boolean output share are generated. The arithmetic-to-Boolean mask conversion is independent of the input bit length.
    Type: Application
    Filed: October 28, 2019
    Publication date: December 30, 2021
    Inventors: Michael Hutter, Michael Tunstall
  • Patent number: 11101981
    Abstract: Share values for use in a cryptographic operation may be received and the cryptographic operation may be performed based on the share values. A pseudorandom number that is to be used by the cryptographic operation may be identified and the pseudorandom number may be generated based on a portion of the share values that are used in the cryptographic operation. The cryptographic operation may then be performed based on the generated pseudorandom number.
    Type: Grant
    Filed: June 18, 2019
    Date of Patent: August 24, 2021
    Assignee: Cryptography Research, Inc.
    Inventors: Pankaj Rohatgi, Elke De Mulder, Michael Hutter
  • Publication number: 20210226775
    Abstract: Disclosed is a method and a system to execute the method to perform a first hashing operation to compute a first hash value, store the first hash value in a plurality of output registers, store a second message in a plurality of input registers, perform a first iteration of a second hashing operation, with an input to the second hashing operation including the second message and the first hash value, determine that a first portion of the second message, stored in a first register of the plurality of input registers, has been processed in course of the second hashing operation, and move a first portion of the first hash value stored in a first register of the plurality of output registers to the first register of the plurality of input registers.
    Type: Application
    Filed: January 27, 2021
    Publication date: July 22, 2021
    Inventors: Michael Hutter, Matthew Pond Baker
  • Publication number: 20210173618
    Abstract: A first input share value, a second input share value, and a third input share value may be received. The first input share value may be converted to a summation or subtraction between an input value and a combination of the second input share value and the third input share value. A random number value may be generated and combined with the second input share value and the third input share value to generate a combined value. Furthermore, a first output share value may be generated based on a combination of the converted first input share value, the combined value, and additional random number values.
    Type: Application
    Filed: December 16, 2020
    Publication date: June 10, 2021
    Inventors: Michael Hutter, Michael Tunstall
  • Patent number: 11018849
    Abstract: An integrated circuit may implement a masked substitution box that includes substitution function components, a decoder, and a logic component. Each of the substitution function components may receive a same input value and a different mask value and may generate a respective output mask value based on the same input value and respective different mask value The decoder may receive an input mask value and generate a decoded output value that is based on the received input mask value. The logic component may select one of the output mask values from one of the substitution function components based on the decoded output value.
    Type: Grant
    Filed: October 28, 2019
    Date of Patent: May 25, 2021
    Assignee: CRYPTOGRAPHY RESEARCH, INC.
    Inventors: Matthew Pond Baker, Elena Trichina, Jean-Michel Cioranesco, Michael Hutter
  • Patent number: 10911221
    Abstract: A first hash value is calculated by using a first input value that is stored in a first set of registers. The first hash value is then stored in a second set of registers. A second input value is stored in the first set of registers after calculating the first hash value. The second hash value is calculated based on the first hash value and the second input value. During the calculating of the second hash value, the first hash value is shifted from the second set of registers to a portion of the first set of registers when the calculating of the second hash value has reached a state where the portion of the first set of registers is no longer used to store the second input value.
    Type: Grant
    Filed: October 17, 2019
    Date of Patent: February 2, 2021
    Assignee: Cryptography Research, Inc.
    Inventors: Michael Hutter, Matthew Pond Baker
  • Patent number: 10871947
    Abstract: A first input share value, a second input share value, and a third input share value may be received. The first input share value may be converted to a summation or subtraction between an input value and a combination of the second input share value and the third input share value. A random number value may be generated and combined with the second input share value and the third input share value to generate a combined value. Furthermore, a first output share value may be generated based on a combination of the converted first input share value, the combined value, and additional random number values.
    Type: Grant
    Filed: March 3, 2017
    Date of Patent: December 22, 2020
    Assignee: Cryptography Research, Inc.
    Inventors: Michael Hutter, Michael Tunstall
  • Publication number: 20200393510
    Abstract: A first plurality of logic gates and a second plurality of logic gates may be associated with a symmetric configuration. A first output at a first value may be generated by the first plurality of logic gates based on a first portion of input signals. A second output may be generated by the second plurality of logic gates at the first value based on a second portion of the input signals. A subsequent first output at a particular value may be generated by the first plurality of logic gates based on a first portion of a second plurality of input signals and a subsequent second output may be generated by the second plurality of logic gates based on a second portion of the second plurality of input signals. A value of the subsequent second output may be complementary to the particular value of the subsequent first output.
    Type: Application
    Filed: June 26, 2020
    Publication date: December 17, 2020
    Inventors: Michael Hutter, Matthew Pond Baker