+ All Categories
Home > Documents > CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Date post: 04-Jan-2016
Category:
Upload: nicholas-leonard
View: 223 times
Download: 6 times
Share this document with a friend
24
CHES 2002 CHES 2002 Presented at the workshop Presented at the workshop CHES 2002, August 13-15, CHES 2002, August 13-15, 2002, Redwood Shores, 2002, Redwood Shores, California, USA California, USA
Transcript
Page 1: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

CHES 2002CHES 2002

Presented at the workshop CHES Presented at the workshop CHES 2002, August 13-15, 2002, 2002, August 13-15, 2002,

Redwood Shores, California, USARedwood Shores, California, USA

Page 2: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Main TopicsMain Topics

Another possible side channel attack Another possible side channel attack on RSAES-OAEPon RSAES-OAEP

Fault side channel attacks on RSA-KEMFault side channel attacks on RSA-KEM

Note on the conversion from plaintext-Note on the conversion from plaintext-oriented attacks to signature-oriented oriented attacks to signature-oriented onesones

Page 3: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

PART IPART I

Another possible side channel attack Another possible side channel attack on RSAES-OAEPon RSAES-OAEP

Page 4: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Partial Information OraclePartial Information Oracle Definition: Definition: Partial Information OraclePartial Information Oracle

(PIO) is a black-box function of the (PIO) is a black-box function of the ciphertext cciphertext c,, c c CC,, such that:such that:

PIO: PIO: CC Im( Im(PIOPIO)),, for at least one bit for at least one bit mmii of the RSA plaintext of the RSA plaintext

mm, , mm==ccdd modmod n n, we have:, we have: HH((mmii || PIO(PIO(cc)) < H()) < H(mmii),), information from PIO gained in this way must information from PIO gained in this way must

be non negligiblebe non negligible – – is induced by a is induced by a non non negligible advantage negligible advantage ((advadv))..

Page 5: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Whole Information OracleWhole Information Oracle

Definition: Definition: Whole Information OracleWhole Information Oracle (WIO) is a known algorithm based on (WIO) is a known algorithm based on an access to the particular PIO. It an access to the particular PIO. It takes as an input the value of takes as an input the value of ciphertext ciphertext cc and it and it returns the value returns the value of the whole plaintextof the whole plaintext mm, , mm = = ccdd mod n.mod n.

WIOWIOPIOPIO: : CC M M : : cc m m = (= (ccdd mod mod nn))

Page 6: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

WIO Existence WIO Existence

Having an access to the particular Having an access to the particular PIO, it is possible to build up the PIO, it is possible to build up the WIO.WIO.

Given the ciphertext Given the ciphertext cc, WIO returns the , WIO returns the corresponding plaintext corresponding plaintext mm in the in the random polynomial time.random polynomial time.

The proof of WIO existence is based on The proof of WIO existence is based on the theorem of the theorem of The Security of The Security of Individual RSA BitsIndividual RSA Bits [13][13]..

Page 7: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

PIO Hunting ProblemPIO Hunting Problem

Where and how to find an Where and how to find an appropriate PIO...appropriate PIO... Once we are having one, we are also Once we are having one, we are also

having a chance to develop an efficient having a chance to develop an efficient chosen ciphertext attack on the whole chosen ciphertext attack on the whole RSA scheme.RSA scheme.

Page 8: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

PIO – Examples (1)PIO – Examples (1)

PIOPIOlsblsb

Returns the least significant bit of the Returns the least significant bit of the plaintext (plaintext (i.e.i.e. mm00).).

PIOPIOhalfhalf

Says whether the plaintext Says whether the plaintext mm is less or is less or higher then one half of the modulus higher then one half of the modulus nn..

Note: A PIONote: A PIOlsblsb and a PIO and a PIOhalfhalf are are polynomially equivalent ([25]).polynomially equivalent ([25]).

Page 9: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

PIO – Examples (2)PIO – Examples (2) PIOPIOMSByteMSByte

Indicates whether the most significant Indicates whether the most significant byte is zero or not.byte is zero or not.

Used in the Manger’s attack on the Used in the Manger’s attack on the RSAES-OAEP [15].RSAES-OAEP [15].

PIOPIOPKCS1-v1_5PKCS1-v1_5

Indicates whether the plaintext is Indicates whether the plaintext is „PKCS1-v1_5 conforming“ or not.„PKCS1-v1_5 conforming“ or not.

Used in the Bleichenbacher’s attack on Used in the Bleichenbacher’s attack on the RSAES-PKCS1-v1_5 [5].the RSAES-PKCS1-v1_5 [5].

Page 10: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

PIO Based on a PowerPIO Based on a PowerSide ChannelSide Channel

We assume that Hamming weights of arguments of the We assume that Hamming weights of arguments of the particular inner operation in the RSAES-OAEP scheme are particular inner operation in the RSAES-OAEP scheme are leaking through a power side channel. We have PIOleaking through a power side channel. We have PIOPAPA..

([16])

Page 11: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Place of Our Attack on RSAES-Place of Our Attack on RSAES-OAEPOAEP

Page 12: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Assumptions on PIOAssumptions on PIOPAPA

Let us send Let us send cc and and c’c’ to a PIO to a PIOPAPA ... ... Let Let mm = = mm[[kk-1] || ... || -1] || ... || mm[0].[0]. Let us denote (we use MGF/SHA-1 notation):Let us denote (we use MGF/SHA-1 notation):

WW88 = = mm[10] || [10] || mm[9] || [9] || mm[8] || [8] || mm[7],[7], WW99 = = mm[6] || [6] || mm[5] || [5] || mm[4] || [4] || mm[3],[3], WW1010 = = mm[2] || [2] || mm[1] || [1] || mm[0] || 00. [0] || 00. (00 appended (00 appended

by MGF)by MGF) Analogically also for Analogically also for mm’ and ’ and WW88’, ’, WW99’, ’, WW1010’.’.

Main assumptionMain assumption From PIOFrom PIOPAPA we get triplets of Hamming weights: we get triplets of Hamming weights:

HW = (w(HW = (w(WW88), w(), w(WW99), w(), w(WW1010)))) HW’ = (w(HW’ = (w(W’W’88), w(), w(W’W’99), w(), w(W’W’1010)).)).

Page 13: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Converting PIOConverting PIOPA PA to a PIOto a PIOlsblsb (1)(1)

Main aimMain aim Convert a PIOConvert a PIOPAPA to a PIO to a PIOlsblsb

Main ideaMain idea Let Let cc’ = ’ = cc*2*2-e-e modmod n n. Let . Let mm = = ccdd mod mod n n and and m’m’=(=(cc’)’)dd mod mod nn. . If lsb(If lsb(mm) = 0 then ) = 0 then mm’ = ’ = mm >> 1. >> 1. If lsb(If lsb(mm) = 1 then ) = 1 then mm’ = (’ = (m m + + nn) >> 1.) >> 1.

Here the operator ”>> 1” denotes a right shift by one bit.Here the operator ”>> 1” denotes a right shift by one bit. Putting it togetherPutting it together

If lsb(If lsb(mm) = 0 then ) = 0 then HW and HW’ are related linearly.HW and HW’ are related linearly. If lsb(If lsb(mm) = 1 then the probability of a random linear ) = 1 then the probability of a random linear

relationship is very low.relationship is very low. From here we get lsb(From here we get lsb(mm).).

Page 14: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Converting PIOConverting PIOPA PA to a PIOto a PIOlsblsb ((22))

Page 15: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Closure: Building WIO from Closure: Building WIO from PIOPIOlsblsb

PIOPIOlsblsb seems to be on of those best oracles seems to be on of those best oracles suitable for building up an efficient WIO.suitable for building up an efficient WIO.

We suggest the We suggest the RSA inversionRSA inversion algorithm algorithm c.f. [10, p. 226]: Fischlin, R. and Schnorr, C. P.: c.f. [10, p. 226]: Fischlin, R. and Schnorr, C. P.: Stronger Stronger

Security Proofs for RSA and Rabin BitsSecurity Proofs for RSA and Rabin Bits, Journal of , Journal of Cryptology, Vol. 13, No. 2, pp. 221-244, IACR, 2000Cryptology, Vol. 13, No. 2, pp. 221-244, IACR, 2000

This algorithm is based on a binary halving technique, This algorithm is based on a binary halving technique, errors are corrected through a majority decision.errors are corrected through a majority decision.

It requires It requires OO(L((L(nn))22adv adv -2-2) oracle calls, where:) oracle calls, where: L(L(nn) is the length of an RSA modulus,) is the length of an RSA modulus, advadv is the oracle advantage in the lsb prediction. is the oracle advantage in the lsb prediction.

Post-processing complexity is Post-processing complexity is OO(L((L(nn))22adv adv -6-6).). Doesn’t require further oracle access.Doesn’t require further oracle access.

Page 16: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

PART IPART III

Fault side channel attacks on RSA-Fault side channel attacks on RSA-KEMKEM

Page 17: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Confirmation Oracle (CO)Confirmation Oracle (CO)

For arbitrary chosen integers For arbitrary chosen integers rr, , yy confirms confirms whether whether rr = = yydd mod mod nn.. Can be generalized for any encryption scheme Can be generalized for any encryption scheme

(the condition tested may be also more general). (the condition tested may be also more general). Here we use RSA-CO only.Here we use RSA-CO only.

If there If there are faultsare faults then an RSA-CO may then an RSA-CO may reveal nontrivial information about the reveal nontrivial information about the private key.private key. Depends on what kind of error it is and on a Depends on what kind of error it is and on a

description accuracy.description accuracy.

Page 18: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Example – Bit ErrorsExample – Bit Errors

In [3] it was shown that bit errors in a private In [3] it was shown that bit errors in a private exponent exponent dd enable us to compute the whole private enable us to compute the whole private key efficiently.key efficiently.

We observed that it is not necessary to have an We observed that it is not necessary to have an access to the whole result of the faulty computation.access to the whole result of the faulty computation. Having an access to an RSA-CO is enough.Having an access to an RSA-CO is enough. RSA-CO seems to be an effective generalization of some RSA-CO seems to be an effective generalization of some

existing (as well as new ones) attacks developed with the existing (as well as new ones) attacks developed with the assumption that an attacker could observe the whole assumption that an attacker could observe the whole output of an RSA computation (i.e. corrupted plaintext or output of an RSA computation (i.e. corrupted plaintext or signature).signature).

Bit errors are becoming even more interesting due Bit errors are becoming even more interesting due to to Optical Fault Induction AttacksOptical Fault Induction Attacks.. Sergei Skorobogatov and Ross Anderson: Sergei Skorobogatov and Ross Anderson: Optical Fault Optical Fault

Induction AttacksInduction Attacks, here on CHES 2002., here on CHES 2002.

Page 19: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Modified Pohlig-Hellman Modified Pohlig-Hellman AlgorithmAlgorithm

This well known algorithm can also be This well known algorithm can also be modified to use only an access to an RSA-CO.modified to use only an access to an RSA-CO. Suppose that we want to use it to compute the Suppose that we want to use it to compute the

private exponent private exponent dd from the triplet ( from the triplet (rr, , gg, , n’ n’ ), such ), such that that rr = = ggdd mod mod n’n’..

Suppose that an attacker is able to force the change of Suppose that an attacker is able to force the change of modulus modulus nn to modulus to modulus n’n’ inducing weak instances of DLP. inducing weak instances of DLP.

We show, that it is not necessary to know the value We show, that it is not necessary to know the value of of rr exactly – having an access to an RSA-CO exactly – having an access to an RSA-COdd, , n’n’ is is sufficient here.sufficient here.

Page 20: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

RSA-KEM ([23])RSA-KEM ([23])

...then continue as: ...then continue as: MM = DEM.Decrypt( = DEM.Decrypt(KK, , LL, DEM.Encrypt(, DEM.Encrypt(KK, , LL, , MM)),)),MM ~ message, ~ message, LL ~ label, ~ label, KK ~ symmetrical key ~ symmetrical key

Brief review Brief review of a RSA-of a RSA-KEM based KEM based H-PKE: the H-PKE: the decryption decryption phasephase

Page 21: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Building RSA-CO on RSA-KEM Building RSA-CO on RSA-KEM PropertiesProperties

We use the properties of the whole hybrid We use the properties of the whole hybrid scheme H-PKE.scheme H-PKE. There is no integrity check for the RSA There is no integrity check for the RSA

plaintext (plaintext (r r ).). This is obviously good property against CCAThis is obviously good property against CCA22, ,

however it also implies that any however it also implies that any resulting RSA resulting RSA plaintext will be used for a symmetrical decryptionplaintext will be used for a symmetrical decryption..

Further integrity controls applied on symmetrically Further integrity controls applied on symmetrically decrypted message then decrypted message then confirms our guess of confirms our guess of rr..

Summary: What makes the RSA-KEM stronger Summary: What makes the RSA-KEM stronger in other areas, that makes it very vulnerable to in other areas, that makes it very vulnerable to a fault attacks.a fault attacks.

Page 22: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

RSA-CO DefinitionRSA-CO Definition

Page 23: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

SummarySummary

RSAES-OAEP can be attacked when Hamming weights of RSAES-OAEP can be attacked when Hamming weights of data processed leak to an attacker.data processed leak to an attacker. All steps in the OAEP decoding should be resistant to a side All steps in the OAEP decoding should be resistant to a side

channel leakage.channel leakage.

RSA-KEM has serious problems with fault attacks.RSA-KEM has serious problems with fault attacks. It could lead to a private key disclosure.It could lead to a private key disclosure. Integrity of private key must be ensured and the computation Integrity of private key must be ensured and the computation

must be checked for faults.must be checked for faults.

Note that Manger’s and Bleichenbacher’s attacks can be Note that Manger’s and Bleichenbacher’s attacks can be easily converted to compute signatures instead of plaintexts.easily converted to compute signatures instead of plaintexts. Server’s certificate should not be attributed for a signature and Server’s certificate should not be attributed for a signature and

a key exchange purposes at the same time – this helps to a key exchange purposes at the same time – this helps to reduce potential attack impacts.reduce potential attack impacts.

Page 24: CHES 2002 Presented at the workshop CHES 2002, August 13-15, 2002, Redwood Shores, California, USA.

Thank YouThank You


Recommended