20
BY JYH-HAW YEH COMPUTER SCIENCE DEPT. BOISE STATE UNIVERSITY Proxy Credential Forgery Attack to Two Proxy Signcryption Schemes

Proxy Credential Forgery Attack to Two Proxy Signcryption Schemes

Embed Size (px)

DESCRIPTION

Proxy Credential Forgery Attack to Two Proxy Signcryption Schemes. By Jyh -haw Yeh Computer Science Dept. Boise State University. Proxy Signcryption. Signcryption : combining two words – Signature and Encryption. Proxy Signcryption : proxy signs and encrypts a message in one scheme. - PowerPoint PPT Presentation

Citation preview

Page 1: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

BY JYH-HAW YEHCOMPUTER SCIENCE DEPT.BOISE STATE UNIVERSITY

Proxy Credential Forgery Attack to Two Proxy

Signcryption Schemes

Page 2: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Signcryption

Signcryption: combining two words – Signature and Encryption.

Proxy Signcryption: proxy signs and encrypts a message in one scheme. Protect the confidentiality of the signed messages

from eavesdroppers. Applications: online proxy auction or online

contract signing by an authorized proxy.

Page 3: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Signcryption

Three entities involved: original signer (OS), proxy signer (PS) and signature verifier (SV).

Scenario: OS delegates his signing right to PS PS, on behave of OS, signs and encrypts a message to

SV SV recovers and verifies the message

Page 4: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Signcryption

One cryptosystem with five phases: Cryptosystem setup (by Key Generation Center) Proxy credential generation (by OS) Proxy credential verification (by PS) Signcrypted message generation (by PS) Signature recovery and verification (by SV)

Page 5: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Signcryption

Security requirement: Proxy credential non-repudiation: OS cannot deny a

proxy credential issued by him/her later. Require proxy credential unforgeability Require correct proxy credential generation/verification

algorithms If OS denies a proxy credential, a trusted third party

should resolve the conflict

Page 6: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Signcryption

Security requirement: Signcrypted message non-repudiation: PS cannot deny

a signcrypted message from him/her later Require signcrypted message unforgeability Require correct signcrypted message

generation/verification algorithms If OS/PS later denies a signcrypted message, a trusted

third party should resolve the conflict.

Page 7: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Credential Forgery attack

The attack tries to cryptanalyzing the proxy credential and find a way to generate a fake credential which can pass the verification process.

If a proxy credential can be forged, then the scheme will not have non-repudiation property

Page 8: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Math Background

Many proxy signcryption schemes were designed based on “bilinear pairings” Two cyclic groups (G1, +) and (G2, x), B is a generator

of G1 A bilinear map e: G1×G1 G2 X, Y, Z in G1 e(X,Y) = e(Y,X) e(aX, bY) = e(X,Y)^{ab} e(X,Y+Z) = e(X,Y)e(X,Z)

Page 9: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Math Background

Given X and Y, e(X,Y) can be computed in poly-time Given B, aB and bB, it’s hard to compute abB Given B, aB, bB, cB, it’s hard to identify an element h

in G2 such that h = e(B,B)^{abc}

Page 10: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

LWXY Scheme

Setup: KGC chooses system para (G1, G2, q, B, e, h1, h2, ,3), where q is the order of G1 and G2 h1: {0,1}^k × G1 Z_q h2: G1 G1 h3: G2 × G1 {0,1}^k Each user i chooses a private key x_i in Z_q and a

public key Y_i = x_iB

Page 11: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

LWXY Scheme

Proxy credential (σ, N, w) generation: W: proxy warrant specifies delegated rights N = dB, where d is a random nymber σ = (x_o + dw) mod q

Proxy credential verification: σB ?= Y_o + wN. Why? Since

σB = (x_o + dw)B = x_oB + dBw = Y_o + wN

Signcrypted message generation: ignoredSignature recovery and verification: ignored

Page 12: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Credential Forgery Attack to LWXY

PS can create a fake proxy credential (σ’, N’, w’) from his original one to increase his signing power Generate w’ to increase his delegation time and/or

add designated signature verifiers. σ’=(w’/w) σ = (w’/w) x_o + dw’ mod q N’ = ((w’/w) Y_o + w’ N – Y_o)/w’

Page 13: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Credential Forgery Attack to LWXY

The fake credential can pass the verification, since

σ’B = ((w’/w) x_o + dw’ )B = (w’/w)Y_o + w’N = Y_o + (w’/w)Y_o + w’N – Y_o = Y_o + w’(((w’/w)Y_o + w’N – Y_o)/w’) = Y_o + w’ N’

Page 14: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Modify LWHY to Prevent The Attack

Change the way to create proxy credentials N = dB σ = (x-coordinate of N)x_o + dw mod q

Change the proxy credential verification to σB ?= (x-coordinate of N)Y_o + wN

Page 15: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

EA Scheme

Setup: KGC chooses system para (G1, G2, q, B, Y_pub, e, h1, h2, h3), where Y_pub = sB is a system public key and s is a system

master key. h1: {0,1}^* G1 h2: G2 {0,1}^n h3: {0,1}^* × G2 Z_q Each user i has public-private keys pairs Y_i = h1(ID_i) and X_i = sY_i

Page 16: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

EA Scheme

Proxy credential (σ, N) generation: σ = X_o + dY_pub, where d is a random number N = dB

Proxy credential verification: e(B, σ) ?= e(Y_pub, Y_o + N). Why? Since e(B, σ) = e(B, X_o + dY_pub) = e(B, sY_o + dsB) = e(sB, Y_o + dB) = e(Y_pub, Y_o + N)

Signcrypted message generation: ignoredSignature recovery and verification: ignored

Page 17: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Credential Forgery Attack to EA

PS can create a fake a proxy credential (σ’, N’) from his original one and give it to another person without the permission of OS σ’ = σ + d’Y_pub = X_o + (d+d’)Y_pub = X_o + d”Y_pub N’ = N + d’B = dB + d’B = (d+d’)B = d”B

Page 18: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Proxy Credential Forgery Attack to EA

The fake credential (σ’, N’) can pass the verification, since

e(B, σ’) = e(B, X_o + d”Y_pub) = e(B, sY_o + d”sB) = e(sB, Y_o + d”B) = e(Y_pub, Y_o + N’)

Page 19: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Modify EA to Prevent Attack

Change the way to create proxy credentials N = dB σ = (x-coordinate of N)X_o + dY_pub mod q

Change the proxy credential verification to e(B, σ) ?= e(Y_pub, (x-coordinate of N)Y_o + N)

Page 20: Proxy Credential Forgery Attack to Two Proxy  Signcryption  Schemes

Efficiency

Comparing to LWHY, the modified LWHY adds 1 modular multiplication (MM) and 1 point multiplication (PM) in G1 Both LWHY/modified LWHY requires 4 bilinear pairing

(BP) operations 1 BP is about 11,110 MM 1PM is about a few hundred MM

Comparing to EA, the modified EA adds 3 PM Both EA/modified EA require 8 BP