Top Banner
2019. 08. 28 Novel Side - Channel Attacks on Quasi - Cyclic Code - Based Cryptography Side Channel Analysis Design Academy 1 Novel Side - Channel Attacks on Quasi - Cyclic Code - Based Cryptography 2019.08.28 Bo-Yeon Sim 1,† , Jihoon Kwon 2 , Kyu Young Choi 2 , Jihoon Cho 2 , Aesun Park 3,† , and Dong-Guk Han 1,3, 1 Department of Mathematics, Kookmin University, Seoul, South Korea 2 Security Research Team, Samsung SDS, Inc., Seoul, South Korea 3 Department of Financial Information Security, Kookmin University, Seoul, South Korea SICADA(Side Channel Analysis Design Academy) Laboratory
58

Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

Apr 25, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 1

Novel Side-Channel Attacks

on Quasi-Cyclic Code-Based Cryptography

2019.08.28

Bo-Yeon Sim1,† , Jihoon Kwon2, Kyu Young Choi2, Jihoon Cho2, Aesun Park 3,†, and Dong-Guk Han1,3, †

1 Department of Mathematics, Kookmin University, Seoul, South Korea

2 Security Research Team, Samsung SDS, Inc., Seoul, South Korea

3 Department of Financial Information Security, Kookmin University, Seoul, South Korea

† SICADA(Side Channel Analysis Design Academy) Laboratory

Page 2: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 2

1. Related works

RSA, ECC

▣ PKC (Public Key Cryptosystem)

[1] Peter Williston Shor, “Algorithms for Quantum Computation: Discrete Logarithms and Factoring”, SFCS 1994, pp. 124-134, 1994.

Factoring and Discrete Logarithms

Page 3: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 3

1. Related works

RSA, ECC

▣ PKC (Public Key Cryptosystem)

Quantum

Computer

1994 Shor’s algorithm

(for quantum computation)

Factoring and Discrete Logarithms

[1] Peter Williston Shor, “Algorithms for Quantum Computation: Discrete Logarithms and Factoring”, SFCS 1994, pp. 124-134, 1994.

Page 4: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 4

1. Related works

RSA, ECC

Post-Quantum

Cryptography

Code-basedLattice-based

Hash-basedMultivariate

▣ PKC (Public Key Cryptosystem)

Quantum

Computer

1994 Shor’s algorithm

(for quantum computation)

Factoring and Discrete Logarithms

[1] Peter Williston Shor, “Algorithms for Quantum Computation: Discrete Logarithms and Factoring”, SFCS 1994, pp. 124-134, 1994.

Isogeny

etc.

Page 5: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 5

1. Related works

▣ PKC (Public Key Cryptosystem)

NIST First PQC

Standardization

Conference

NIST Second PQC

Standardization

Conference

April 11-13, 2018 August 22-24, 2019

PQCrypto 2016

February 24-26, 2016

co-located with co-located with

January 30, 2019

Second Round Candidates announced

(26 algorithms)

Dec 20, 2016

Formal Call for Proposals

PQCrypto 2018

Page 6: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 6

1. Related works

Quantum

Computer

Post-Quantum

Cryptography

Code-basedLattice-based

Hash-basedMultivariate

Goppa code

Reed-Solomon codes

MDPC codes

LDPC codes

QC code

QC-LDPC code

QC-MDPC code

Code

• Quasi-Cyclic code for saving memory (small key sizes)

▣ PKC (Public Key Cryptosystem)

Isogeny

etc.

Page 7: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 7

1. Related works

▣ QC (Quasi-Cyclic) Code

Circulant matrix

Quasi-Cyclic Matrix

𝐻0 𝐻1

𝑯 =

The top row (or the leftmost column) of a circulant matrix is the generator of the circulant matrix

⋙ 1

⋙ 2

⋙ 3

⋙ 4

Page 8: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 8

1. Related works

▣ QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺

=

𝐻0 ⋅ 𝑐0⊺

×

𝑐0⊺

𝑐1⊺

𝐻0 𝐻1

𝑯 ⋅ 𝒄⊺ =

× + ×

𝐻1 ⋅ 𝑐1⊺

Page 9: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 9

1. Related works

0 1 0 0 1

0 1 0 01

0 1 00 1

0 10 0 1

01 0 0 1

▣ QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺

0 1 2 3 4

𝐻0

×

𝑐0⊺

2014 Timing Attack

(Simple Power Analysis)

Page 10: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 10

1. Related works

0 1 0 0 1

0 1 0 01

0 1 00 1

0 10 0 1

01 0 0 1

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺

0 1 2 3 4

𝐻0

×

𝑐0⊺

2014 Timing Attack

(Simple Power Analysis)

2016 Constant-Time Implementation

Page 11: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 11

1. Related works

*

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

×

*

*

= +

𝐻0 𝑐0⊺ 𝑐0 ⋘ 𝟏 ⊺ 𝑐0 ⋘ 𝟒 ⊺

Syndrome computation 𝑯 ⋅ 𝒄⊺

Calculated by

Constant-Time Multiplication

11

11

11

1 1

1 1

0 1 2 3 4⋘ ⋘

1-bit

* ∈ {0,1}

Page 12: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 12

1. Related works

1

1

1

1

1

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 8-bit word

8-bit

𝑟 ×

𝐻0 𝑐0⊺

𝑟 − 10 ⋯

𝒓-bit

Page 13: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 13

1. Related works

**1

1

1

1

1

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 8-bit word

8-bit

𝑟 − 10 ⋯ 𝒅 ⋯

𝑟 ×

**

𝐻0 𝑐0⊺

=

𝑐0 ⋘𝒅 ⊺

+ ⋯

** ∈ 0,1 8

Page 14: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 14

1. Related works

𝑹

16-byte rotate << 𝑹

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺

𝑐0 ⋘𝒅 ⊺

8-bit word𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝟐𝟕 = 128-bit 16-byte

unrotated

rotated

𝒅𝟕

Page 15: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 15

1. Related works

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 8-bit word𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑹

16-byte rotate << 𝑹

unrotated

rotated 𝒅𝟕 = 𝟏

𝟐𝟕 = 128-bit 16-byte

& 0𝑥00⋯00

& 0𝑥𝑓𝑓⋯𝑓𝑓

𝑐0 ⋘𝒅 ⊺

𝒅𝟕

Page 16: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 16

1. Related works

𝒅𝟕 = 𝟏

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 8-bit word𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝟐𝟔 = 64-bit 8-byte

𝑹

16-byte rotate << 𝑹

unrotated

rotated

𝑹

8-byte rotate << 𝑹

unrotated

rotated 𝒅𝟔 = 𝟏

& 0𝑥00⋯00

& 0𝑥𝑓𝑓⋯𝑓𝑓

𝑐0 ⋘𝒅 ⊺

𝒅𝟔

Page 17: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 17

1. Related works

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 8-bit word𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝟐𝟓 = 32-bit 4-byte

𝑹

16-byte rotate << 𝑹

unrotated

rotated 𝒅𝟕 = 𝟏

unrotated

rotated 𝒅𝟔 = 𝟏

𝑹

4-byte rotate << 𝑹

unrotated

rotated 𝒅𝟓 = 𝟏

& 0𝑥00⋯00

& 0𝑥𝑓𝑓⋯𝑓𝑓

𝑐0 ⋘𝒅 ⊺

𝒅𝟓

𝑹

8-byte rotate << 𝑹

Page 18: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 18

1. Related works

𝑹

4-byte rotate << 𝑹

𝑹

8-byte rotate << 𝑹

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 8-bit word𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝟐𝟒 = 16-bit 2-byte

𝑹

16-byte rotate << 𝑹

unrotated

rotated 𝒅𝟕 = 𝟏

unrotated

rotated 𝒅𝟔 = 𝟏

unrotated

rotated 𝒅𝟓 = 𝟏

𝑹

2-byte rotate << 𝑹

unrotated

rotated

𝒅𝟒 = 𝟎

& 0𝑥00⋯00

& 0𝑥𝑓𝑓⋯𝑓𝑓

𝑐0 ⋘𝒅 ⊺

𝒅𝟒

Page 19: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 19

1. Related works

𝑹

4-byte rotate << 𝑹

𝑹

8-byte rotate << 𝑹

𝑹

2-byte rotate << 𝑹

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 8-bit word𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝟐𝟑 = 8-bit 1-byte

𝑹

16-byte rotate << 𝑹

unrotated

rotated 𝒅𝟕 = 𝟏

unrotated

rotated 𝒅𝟔 = 𝟏

unrotated

rotated 𝒅𝟓 = 𝟏

unrotated

rotated

𝒅𝟒 = 𝟎

𝑹

1-byte rotate << 𝑹

unrotated

rotated 𝒅𝟑 = 𝟏

& 0𝑥00⋯00

& 0𝑥𝑓𝑓⋯𝑓𝑓

𝑐0 ⋘𝒅 ⊺

𝒅𝟑

Page 20: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 20

1. Related works

𝑹

4-byte rotate << 𝑹

𝑹

8-byte rotate << 𝑹

𝑹

2-byte rotate << 𝑹

𝑹

1-byte rotate << 𝑹

𝒅𝟕 = 𝟏

𝒅𝟔 = 𝟏

𝒅𝟓 = 𝟏

𝒅𝟒 = 𝟎

𝒅𝟑 = 𝟏

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐 8-bit word

𝟎 ⋅ 𝟐𝟐 + 𝟏 ⋅ 𝟐𝟏 + 𝟎 ⋅ 𝟐𝟎 = 2-bit

𝑹

16-byte rotate << 𝑹

unrotated

rotated

unrotated

rotated

unrotated

rotated

unrotated

rotated

unrotated

rotated

𝑐0 ⋘𝒅 ⊺

< 8-bit𝒅𝟐𝒅𝟏𝒅𝟎 𝟐

2-bit rotate <<

Page 21: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 21

1. Related works

𝑹

4-byte rotate << 𝑹

𝑹

8-byte rotate << 𝑹

𝑹

2-byte rotate << 𝑹

𝑹

1-byte rotate << 𝑹

𝒅𝟕 = 𝟏

𝒅𝟔 = 𝟏

𝒅𝟓 = 𝟏

𝒅𝟒 = 𝟎

𝒅𝟑 = 𝟏

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐 8-bit word

𝟎 ⋅ 𝟐𝟐 + 𝟏 ⋅ 𝟐𝟏 + 𝟎 ⋅ 𝟐𝟎 = 2-bit

𝑹

16-byte rotate << 𝑹

unrotated

rotated

unrotated

rotated

unrotated

rotated

unrotated

rotated

unrotated

rotated

2-bit left shift | 6-bit right shift

𝑐0 ⋘𝒅 ⊺

< 8-bit𝒅𝟐𝒅𝟏𝒅𝟎 𝟐

2-bit rotate <<

Page 22: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 22

1. Related works

2016 Constant-Time Implementation

2014 Timing Attack

(Simple Power Analysis)

2017 Differential Power Analysis on Constant-Time Implementation

Syndrome computation 𝑯 ⋅ 𝒄⊺

▣ Side-Channel Attacks on QC Code-Based Cryptography

Page 23: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 23

1. Related works

2016 Constant-Time Implementation

2014 Timing Attack

(Simple Power Analysis)

2017 Differential Power Analysis on Constant-Time Implementation

Syndrome computation 𝑯 ⋅ 𝒄⊺

▣ Motivations and Contributions

Limitation: It could not completely recover accurate secret indices,

requiring further solving linear equations to obtain entire secret information

Is there no method allows to recover accurate secret indices

using only side-channel information?

Page 24: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 24

1. Related works

2016 Constant-Time Implementation

2014 Timing Attack

(Simple Power Analysis)

2017 Differential Power Analysis on Constant-Time Implementation

Syndrome computation 𝑯 ⋅ 𝒄⊺

▣ Motivations and Contributions

Limitation: It could not completely recover accurate secret indices,

requiring further solving linear equations to obtain entire secret information

Is there no method allows to recover accurate secret indices

using only side-channel information?

Enhanced Multiple-Trace Attack which can recover accurate secret indices

using only side-channel information

Page 25: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 25

1. Related works

▣ Motivations and Contributions

2016 Constant-Time Implementation

2014 Timing Attack

(Simple Power Analysis)

2017 Differential Power Analysis on Constant-Time Implementation

2017 Codeword Randomization (Masking)

Syndrome computation 𝑯 ⋅ 𝒄⊺

Systems use ephemeral key pairsor

Page 26: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 26

1. Related works

▣ Motivations and Contributions

2016 Constant-Time Implementation

2014 Timing Attack

(Simple Power Analysis)

2017 Differential Power Analysis on Constant-Time Implementation

2017 Codeword Randomization (Masking)

Syndrome computation 𝑯 ⋅ 𝒄⊺

Systems use ephemeral key pairs

Constraint : Cannot use multiple traces

or

Is it impossible to attack using only a single trace?

Page 27: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 27

1. Related works

▣ Motivations and Contributions

2016 Constant-Time Implementation

2014 Timing Attack

(Simple Power Analysis)

2017 Differential Power Analysis on Constant-Time Implementation

2017 Codeword Randomization (Masking)

Syndrome computation 𝑯 ⋅ 𝒄⊺

Systems use ephemeral key pairsor

Novel Single-Trace Attack on QC Code-Based Cryptography

Using Masked Constant-Time Multiplication

Constraint : Cannot use multiple traces

Is it impossible to attack using only a single trace?

Page 28: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 28

1. Related works

▣ Contributions

Enhanced Multiple-Trace Attack on QC Code-Based Cryptography

Using Constant-Time Multiplication

Novel Single-Trace Attack on QC Code-Based Cryptography

Using Masked Constant-Time Multiplication

BIKE

LEDAcryptConstant-Time Multiplication

Use the ephemeral key pairs

Codeword Randomization (Masking)

It is insecure against our

multiple-trace attack

It is insecure against our

single-trace attack

It is insecure against our

single-trace attack

Page 29: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 29

2. Multiple-Trace Attack

𝑹

4-byte rotate << 𝑹

𝑹

8-byte rotate << 𝑹

𝑹

2-byte rotate << 𝑹

𝑹

1-byte rotate << 𝑹

𝑹

16-byte rotate << 𝑹

2-bit rotate <<

𝒅𝟕 = 𝟏

𝒅𝟔 = 𝟏

𝒅𝟓 = 𝟏

𝒅𝟒 = 𝟎

𝒅𝟑 = 𝟏

▣ Constant-Time Multiplication for QC (Quasi-Cyclic) Code

Syndrome computation 𝑯 ⋅ 𝒄⊺ 8-bit word

unrotated

rotated

unrotated

rotated

unrotated

rotated

unrotated

rotated

unrotated

rotated

2-bit left shift | 6-bit right shift

Word unit rotation

Bit rotation

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

< 8-bitmultiples of 8

𝑐0 ⋘𝒅 ⊺

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

Page 30: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 30

2. Multiple-Trace Attack

Bit rotation

Word unit rotation

▣ Multiple-Trace Attack on Constant-Time Multiplication

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝟎𝟎 ⊕ 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝒇𝒇 = 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎

𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝒇𝒇 ⊕ 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝟎𝟎 = 𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐

𝒓𝒆𝒔𝒖𝒍𝒕 = (≪𝟖−𝑳)|(≫𝑳)

0 ≤ 𝑳 = 𝒅𝟐𝒅𝟏𝒅𝟎 𝟐 < 8

Correlation

Occurring

Position

Correlation

Power

Analysis

8-bit word

Page 31: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 31

2. Multiple-Trace Attack

𝟐𝟕 bit rotate

𝒅𝟕

𝟐𝟔 bit rotate

𝒅𝟔

𝟐𝟓 bit rotate

𝒅𝟓

𝟐𝟒 bit rotate

𝒅𝟒

𝟐𝟑 bit rotate

𝒅𝟑

Last 3-bit

𝒅𝟐𝒅𝟏𝒅𝟎

▣ Experiment

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

Word unit rotation Bit rotation

8-bit word

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

𝒓𝒆𝒔𝒖𝒍𝒕= (≪(𝟖−𝑳))|(≫𝑳)

Page 32: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 32

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

Page 33: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 33

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

Property 1.

𝑹

16-byte rotate << 𝑹

Property 1.

𝒅 = (𝟎𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

Unrotated value is chosen

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

Page 34: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 34

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

Property 1.

𝑹

16-byte rotate << 𝑹

Property 1. 𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝒅 = (𝟎𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑹 is loaded and saved

L S L

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

Page 35: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 35

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

Property 1.

𝑹

16-byte rotate << 𝑹

Property 1. 𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝒅 = (𝟎𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑹 is loaded and saved

L S L

𝑹

16-byte rotate << 𝑹

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

Rotated value is chosen

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

Page 36: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 36

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

Property 1.

𝑹

16-byte rotate << 𝑹

Property 1. 𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝒅 = (𝟎𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑹 is loaded and saved

L S L

𝑹

16-byte rotate << 𝑹

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑹 is only loaded

L L S

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

Page 37: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 37

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

Property 2. 𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝑹

16-byte rotate << 𝑹

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑹

8-byte rotate << 𝑹

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑑𝑖+1 𝑑𝑖

L L S

Rotated value is chosen

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

Page 38: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 38

2. Multiple-Trace Attack

𝑹

8-byte rotate << 𝑹

▣ Multiple-Trace Attack on the Word Unit Rotation

Property 2. 𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝑹

16-byte rotate << 𝑹

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑑𝑖+1

L L S L S L

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

different

𝑑𝑖

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

Page 39: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 39

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

Property 2. 𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝑹

4-byte rotate << 𝑹

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑑𝑖+1

L L S

𝑹

2-byte rotate << 𝑹

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑑𝑖

Unrotated value is chosen

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

Page 40: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 40

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

Property 2. 𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

8-bit word

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑑𝑖+1

L SL

Ab

solu

te C

orr

ela

tio

n C

oef

fici

ent

𝒅 = (𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎)𝟐

𝑑𝑖

same

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

𝑹

4-byte rotate << 𝑹

L L S

𝑹

2-byte rotate << 𝑹

Page 41: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 41

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

8-bit word Step 1. Find the most significant bit 𝒅𝟕 based on Property 1

𝒅𝟕 𝑹 is only loaded in the first operation

Power consumption related to 𝑹

does not occurs sequentially twice

in the first operation part𝒅𝟕 = 𝟏

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

Page 42: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 42

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Word Unit Rotation

8-bit word Step 2. Find from 𝒅𝟔 to 𝒅𝟑 based on Property 2

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑹 ∈𝑹𝒂𝒏𝒅𝒐𝒎 𝟎,𝟏 𝟖

samedifferent different different

power consumption related to 𝑹 occurs sequentially twice in the ___ iteration

𝒅𝟔 𝒅𝟓 𝒅𝟒 𝒅𝟑

𝒅𝟒 = 𝟎𝒅𝟔 = 𝟏 𝒅𝟓 = 𝟏 𝒅𝟑 = 𝟏

Page 43: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 43

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Bit Rotation

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝒓𝒆𝒔𝒖𝒍𝒕 = (≪(𝟖−𝑳))|(≫𝑳)

0 ≤ 𝑳 = 𝒅𝟐𝒅𝟏𝒅𝟎 𝟐 < 8

Page 44: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 44

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on the Bit Rotation

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝒓𝒆𝒔𝒖𝒍𝒕 = (≪(𝟖−𝑳))|(≫𝑳)

0 ≤ 𝑳 = 𝒅𝟐𝒅𝟏𝒅𝟎 𝟐 < 8

Guess the 𝑳 value from 0 to 7

and calculate Pearson’s correlation coefficient between traces and 𝒓𝒆𝒔𝒖𝒍𝒕 values

50 traces

are sufficient

Page 45: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 45

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on Constant-Time Multiplication

Correlation

Occurring

Position

Correlation

Power

Analysis

We can accurately recover all secret indices

regardless of word size and security level

(We described the experiment results on a 32-bit processor in Appendix B)

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐

Page 46: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 46

2. Multiple-Trace Attack

▣ Multiple-Trace Attack on Constant-Time Multiplication

2016 Constant-Time Implementation

2014 Timing Attack

(Simple Power Analysis)

2017 Differential Power Analysis on Constant-Time Implementation

Syndrome computation 𝑯 ⋅ 𝒄⊺

Enhanced Multiple-Trace Attack which can accurately recover secret indices

regardless of word size and security level

It is not feasible on 64-bit processor

Limitation: It could not completely recover accurate secret indices,

requiring further solving linear equations to obtain entire secret information

8-bit 16-bit 32-bit 64-bit

80-bit security 0.4 seconds 15 seconds 16 hours ≈ 530 years

128-bit security 2 seconds 4 minutes ≈ 7 days ≈ 790,000 years

Page 47: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 47

3. Single-Trace Attack

Bit rotation

Word unit rotation𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ

𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝟎𝟎 ⊕ 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝒇𝒇 = 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎

𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝒇𝒇 ⊕ 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝟎𝟎 = 𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

▣ Single-Trace Attack on Constant-Time Multiplication

Key

Bit-dependent

Attack

Simple

Power

Analysis

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐

𝒓𝒆𝒔𝒖𝒍𝒕 = (≪𝟖−𝑳)|(≫𝑳)

0 ≤ 𝑳 = 𝒅𝟐𝒅𝟏𝒅𝟎 𝟐 < 8

8-bit word

𝒎𝒂𝒔𝒌 = ቊ𝟎𝒙𝟎𝟎 , 𝒊𝒇 𝒅𝒊 = 𝟎𝟎𝒙𝒇𝒇 , 𝒊𝒇 𝒅𝒊 = 𝟏

Page 48: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 48

3. Single-Trace Attack

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

▣ Single-Trace Attack on the Word Unit Rotation

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

Property 3.

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝟎𝟎 ⊕ 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝒇𝒇 = 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎

𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝒇𝒇 ⊕ 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝟎𝟎 = 𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

PoIs

Page 49: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 49

3. Single-Trace Attack

▣ Single-Trace Attack on the Word Unit Rotation

8-bit word

𝒓𝒆𝒔𝒖𝒍𝒕 = ቊ𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝟎𝟎 ⊕ 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝒇𝒇 = 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟎

𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝒇𝒇 ⊕ 𝒖𝒏𝒓𝒐𝒕𝒂𝒕𝒆𝒅 & 𝟎𝒙𝟎𝟎 = 𝒓𝒐𝒕𝒂𝒕𝒆𝒅 , 𝒊𝒇 𝒅𝒊 = 𝟏

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏} : 675 ~ 695 points

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝑚𝑎𝑠𝑘 ¬𝑚𝑎𝑠𝑘

Key Bit-dependent Property

Page 50: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 50

3. Single-Trace Attack

▣ Single-Trace Attack on the Word Unit Rotation

233 = 11101001 2169 = 10101001 2 201 = 11001001 2

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

𝑾 = 𝟖

𝒎𝒂𝒔𝒌 = ቊ𝟎𝒙𝟎𝟎 , 𝒊𝒇 𝒅𝒊 = 𝟎𝟎𝒙𝒇𝒇 , 𝒊𝒇 𝒅𝒊 = 𝟏

• K-means clustering

• Fuzzy k-means clustering

• EM (Expectation-maximization)

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

Page 51: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 51

3. Single-Trace Attack

▣ Single-Trace Attack on the Bit Rotation

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝒓𝒆𝒔𝒖𝒍𝒕 = (≪𝟖−𝑳)|(≫𝑳)

0 ≤ 𝑳 = 𝒅𝟐𝒅𝟏𝒅𝟎 𝟐 < 8

Bit rotate Left shift Right shift SPA

8-bit word Single bit shift instructions(8 − 𝐿) times

((8 − 𝐿) clock cycles)

𝐿 times

(𝐿 clock cycles)O

16-bit word Single bit shift instructions(8 − 𝐿) times

((8 − 𝐿) clock cycles)

𝐿 times

(𝐿 clock cycles)O

Page 52: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 52

3. Single-Trace Attack

𝟏𝟏𝟏𝟎𝟏𝟎𝟎𝟏 𝟐

𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟎 𝟐

𝟏𝟏𝟏𝟎𝟏𝟎𝟏𝟏 𝟐

𝟏𝟏𝟏𝟎𝟏𝟏𝟎𝟎 𝟐

𝟏𝟏𝟏𝟎𝟏𝟏𝟎𝟏 𝟐

𝟏𝟏𝟏𝟎𝟏𝟏𝟏𝟎 𝟐

𝟏𝟏𝟏𝟎𝟏𝟏𝟏𝟏 𝟐

𝟏𝟏𝟏𝟎𝟏𝟎𝟎𝟎 𝟐

▣ Single-Trace Attack on the Bit Rotation

1 2 3 4 5 6 7

1 2 3 4 5 6

1 2 3 4 5

1 2 3 4

1 2 3

1 2

1

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

Page 53: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 53

3. Single-Trace Attack

▣ Single-Trace Attack on the Bit Rotation

8-bit word

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐, 𝒅𝒊 ∈ {𝟎, 𝟏}

target

𝒓𝒆𝒔𝒖𝒍𝒕 = (≪𝟖−𝑳)|(≫𝑳)

0 ≤ 𝑳 = 𝒅𝟐𝒅𝟏𝒅𝟎 𝟐 < 8

Bit rotate Left shift Right shift SPA

8-bit word Single bit shift instructions(8 − 𝐿) times

((8 − 𝐿) clock cycles)

𝐿 times

(𝐿 clock cycles)O

16-bit word Single bit shift instructions(8 − 𝐿) times

((8 − 𝐿) clock cycles)

𝐿 times

(𝐿 clock cycles)O

32-bit wordMultiple bit shift instructions

(ex. barrel shifter)One clock One clock X

64-bit wordMultiple bit shift instructions

(ex. barrel shifter)One clock One clock X

In the cases of 32-bit and 64-bit, we need to solve linear equations to find accurate indices

Page 54: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 54

3. Single-Trace Attack

▣ Single-Trace Attack on Constant-Time Multiplication

We can accurately recover all secret indices

if processor provides single bit shift instructions

(We described the experiment results on a 32-bit processor in Section 5 and Appendix B)

Even if processor does not provide single bit shift instructions,

we can extract substantial parts of secret indices

Key

Bit-dependent

Attack

Simple

Power

Analysis

𝒅 = 𝒅𝟕𝒅𝟔𝒅𝟓𝒅𝟒𝒅𝟑𝒅𝟐𝒅𝟏𝒅𝟎 𝟐

Page 55: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 55

4. Case Study: NIST PQC Standardization

CodeBIKE

LEDAcrypt

RQC HQC

ROLLO

Classic McElice

▣ Case Study: NIST Round 2 Code-Based Cryptography

BIKE

QC-MDPC

LEDAcrypt

QC-LDPC

BIKE

LEDAcryptConstant-Time Multiplication

Use the ephemeral key pairs

Codeword Randomization (Masking)

Page 56: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 56

4. Case Study: NIST PQC Standardization

▣ Case Study: NIST Round 2 Code-Based Cryptography

BIKE

QC-MDPC

LEDAcrypt

QC-LDPC

𝐻

𝐻𝑄

Page 57: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 57

Enhanced Multiple-Trace Attack on QC Code-Based Cryptography

Using Constant-Time Multiplication

BIKE

LEDAcryptConstant-Time Multiplication

Use the ephemeral key pairs

Codeword Randomization (Masking)

It is insecure against our

multiple-trace attack

It is insecure against our

single-trace attack

It is insecure against our

single-trace attack

Novel Single-Trace Attack on QC Code-Based Cryptography

Using Masked Constant-Time Multiplication

▣ Conclusion

Page 58: Novel Side-Channel Attacks on Quasi-Cyclic Code-Based ... Shor’s algorithm ... Enhanced Multiple-Trace Attack which can recover accurate secret indices using only side-channel information.

2019. 08. 28 Novel Side-Channel Attacks on Quasi-Cyclic Code-Based CryptographySide Channel Analysis Design Academy 58