Stronger Public Key Encryption Schemes
Withstanding RAM Scraper Like Attacks
- Prof. C.Pandu Rangan
Professor, Indian Institute of Technology - Madras, Chennai, India-600036.
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 1 / 40
Stronger Public Key Encryption Schemes Withstanding RAM Scraper Like - - PowerPoint PPT Presentation
Stronger Public Key Encryption Schemes Withstanding RAM Scraper Like Attacks Prof. C.Pandu Rangan Professor, Indian Institute of Technology - Madras, Chennai, India-600036. C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 1 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 1 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 2 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 3 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 4 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 5 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 6 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 7 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 8 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 9 / 40
1 gx2 2 , d = gy1 1 gy2 2 and h = gz1 1 gz2 2 .
1, u2 = gr 2, e = hrm, α = H(u1, u2, e) and
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 10 / 40
1 ux2 2 (uy1 1 uy2 2 )α.
◮ Compute Z = uz1
1 uz2 2 .
◮ Compute m = e/Z ◮ Return m.
1 ux2 2 (uy1 1 uy2 2 )α.
◮ SC: Compute Z = uz1
1 uz2 2 .
◮ TPM→RAM: Z ◮ NC: Compute m = e/Z and
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 11 / 40
1 ux2 2 (uy1 1 uy2 2 )α is evaluated using the TPM
1 ux2 2 (uy1 1 uy2 2 )α is
?
1 uz2 2
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 12 / 40
1 , u∗x2 2 , u∗y1 1 , u∗y2 2 .
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 13 / 40
1, u∗ 2, e∗, v∗ = u1, u2, (u1)z1(u2)z2mδ, (u1)x1(u2)x2
1, u∗ 2, e∗).
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 14 / 40
q and constructs a ciphertext
1, u′ 2, e′, v′ = (u∗ 1)s1, (u∗ 2)s1, e∗, v∗), where u∗ 1 and u∗ 2 are the
1 and u∗ 2 exponentiated with s1.
1)x1(u′ 2)x2((u′ 1)y1(u′ 2)y2)α1.
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 15 / 40
1, u′ 2, e′), (u∗ 1)s1x1(u∗ 2)s1x2((u∗ 1)s1y1(u∗ 2)s1y2)α1, −, −
q,
1 = (u∗ 1)s2, u′′ 2 = (u∗ 2)s2, e′′ = e∗ and v′′ = v∗. The
1, u′′ 2, e′′, v′′ A queries
1, u′′ 2, e′′), (u∗ 1)s2x1(u∗ 2)s2x2((u∗ 1)s2y1(u∗ 2)s2y2)α2, −, −
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 16 / 40
1
1
1)x1(u∗ 2)x2((u∗ 1)y1(u∗ 2)y2)α1 and
2
2
1)x1(u∗ 2)x2((u∗ 1)y1(u∗ 2)y2)α2.
X2 = ((u∗ 1)y1(u∗ 2)y2)α1−α2.
1)y1(u∗ 2)y2.
X1 Z α1
2
1)x1(u∗ 2)x2.
1, ˆ
2, e = e∗ ˆ
α 2 , where ˆ
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 17 / 40
1)x1(u∗ 2)x2((u∗ 1)y1(u∗ 2)y2)ˆ α and mδ ˆ
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 18 / 40
1)x1(u∗ 2)x2((u∗ 1)y1(u∗ 2)y2)ˆ α,
1 ˆ
2 , mδ ˆ
1, u∗ 2, e∗ ˆ
α 2 . C checks
?
α, where ˆ
α
1)x1(u∗ 2)x2((u∗ 1)y1(u∗ 2)y2)ˆ α
α
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 19 / 40
α
1)x1(u∗ 2)x2((u∗ 1)y1(u∗ 2)y2)ˆ α
α
1)z1(u∗ 2)z2mδ ˆ
1)z1(u∗ 2)z2
1 = ˆ
2 = ˆ
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 20 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 21 / 40
◮ H1 : G2 → {0, 1}lm ◮ H2 : G1 × {0, 1}lm → Z∗
q, where lm is the size of the message
◮ H3 : G1 → Z∗
q
◮ Choose x, s ∈R Zq and P, Q, Y , Z ∈R G1. ◮ Compute X = xP ∈ G1. ◮ Compute α = ˆ
q.
1 × G2.
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 22 / 40
◮ Compute W = ˆ
◮ Compute m = C2 ⊕ H1(W )
◮ ABORT C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 23 / 40
◮ NC: Compute e(C1, Q) ◮ RAM→TPM: e(C1, Q) ◮ SC: Compute e(C1, Q)s ◮ TPM→RAM: e(C1, Q)s ◮ NC: Compute H1(e(C1, Q)s) ◮ NC: Compute m = C2 ⊕ H1(e(C1, Q)s)
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 24 / 40
1 U + V = r(ˆ
2 If C = C1, C2, C3, C4 is properly constructed, then
3
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 25 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 26 / 40
1, γ ∈R G2, the DBDHP in G1, G2 is to decide
A
A
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 27 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 28 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 29 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 30 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 31 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 32 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 33 / 40
1 = cR = cP
2 = mδ ⊕ H1(γ)
3 = yC ∗ 1 + ˜
1
4 = (˜
1 , C ∗ 2 ) and ˜
1 , C ∗ 2 , C ∗ 3 , C ∗ 4 is send to A.
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 34 / 40
1 , C ∗ 2 , C ∗ 3 , C ∗ 4 is a valid and properly
1 = cP, we should show that
3 = c(hY + Z)
4 = t = (˜
4 X)
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 35 / 40
3 = c(h∗Y + Z).
3 was computed as yC ∗ 1 + ˜
1 in equation (24).
1 + ˜
1
1 + ˜
1
1 , C ∗ 2 , C ∗ 3 , C ∗ 4 is a valid / consistent
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 36 / 40
1 = cR = rP and C ∗ 2 = mδ⊕H2(γ).
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 37 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 38 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 39 / 40
C.Pandu Rangan (IIT Madras) PKE Withstanding RAM Scrapers 40 / 40