Technology for generating a keystream while combatting side-channel attacks
AssigneeIntel Corporation
InventorsSudhir Satpathy, Vikram Suresh, Sanu Mathew
Life of this patent
Estimating the term…
Abstract
An integrated circuit features technology for generating a keystream. The integrated circuit comprises a cipher block with a linear feedback shift register (LFSR) and a finite state machine (FSM). The LFSR and the FSM are configured to generate a stream of keys, based on an initialization value and an initialization key. The FSM comprises an Sbox that is configured to use a multiplicative mask to mask data that is processed by the Sbox when the LFSR and the FSM are generating the stream of keys. Other embodiments are described and claimed.
Claims20
An integrated circuit with technology for generating a keystream, the integrated circuit comprising:
- a cipher block in the integrated circuit, the cipher block comprising a linear feedback shift register (LFSR) and a finite state machine (FSM), wherein the LFSR and the FSM are configured to generate a stream of keys, based on an initialization value and an initialization key;
- an Sbox in the FSM, wherein the SBox is configured to receive an additively masked version of content from the LFSR;
- and
- a fused conversion-and-masking unit (FCMU) in the Sbox, wherein the FCMU is configured to convert the additively masked version of content from the LFSR to a multiplicatively masked version of content from the LFSR.
At least one non-transitory machine-accessible medium comprising computer instructions for generating a keystream, wherein the computer instructions, when executed on a data processing system, enable the data processing system to:
- instantiate a finite state machine (FSM) that comprises an Sbox;
- and
- use the FSM and a linear feedback shift register (LFSR) in the data processing system to generate a stream of keys based on an initialization value and an initialization key, wherein the operation of using the FSM and the LFSR to generate a stream of keys based on an initialization value and an initialization key comprises:
- receiving, at the Sbox, an additively masked version of content from the LFSR;
- at the Sbox, converting the additively masked version of content from the LFSR to a first multiplicatively masked version of content from the LFSR;
- and
- at the Sbox, (a) using a sequence of squaring elements to generate a second multiplicatively masked version of content from the LFSR, based on the first multiplicatively masked version of content from the LFSR, and (b) producing additively masked output, based on the second multiplicatively masked version of content from the LFSR.
A method for generating a keystream, the method comprising:
- using a linear feedback shift register (LFSR) and a finite state machine (FSM) to generate a stream of keys, based on an initialization value and an initialization key;
- and
- wherein the operation of using the LFSR and the FSM to generate the stream of keys comprises:
- at an Sbox in the FSM, receiving an additively masked version of content from the LFSR;
- at the Sbox, converting the additively masked version of content from the LFSR to a first multiplicatively masked version of content from the LFSR;
- and
- at the Sbox, (a) using a sequence of squaring elements to generate a second multiplicatively masked version of content from the LFSR, based on the first multiplicatively masked version of content from the LFSR, and (b) producing additively masked output, based on the second multiplicatively masked version of content from the LFSR.
Dependencies are inferred from the claim text.