Compact and Unforgeable Key Establishment over an ATM Network Yuliang Zheng (Monash University, Australia) Hideki Imai (University of Tokyo, Japan) © 1998 by Yuliang Zheng 1 Outline of the talk Motivation of this research z Introduction to signcryption z Key materials transport using signcryption z © 1998 by Yuliang Zheng 2 1 Session Key Establishment A process for two participants to agree upon a freshly shared key z Dimensions z security against various attacks authenticity v.s. identification unforgeability & non-repudiation transport v.s. exchange secret v.s. public key crypto key distrib. center v.s. cert. authority efficiency (msg length, # of moves, comp cost) © 1998 by Yuliang Zheng 3 Asynchronous Transfer Mode (ATM) --- Motivation of this Work --z Cell switching Data are placed into cells of fixed-size (53 bytes), and then transported over virtual circuits z ATM cell structure 5 bytes header © 1998 by Yuliang Zheng 48 bytes (384 bits) payload (data) 4 2 Problem to be solved z To transport encrypted key materials using a single ATM cell with a low computational cost in a secure and unforgeable way without using a KDC a crypto-envelope key materials key, ts or nonce 384-bit ATM cell payload © 1998 by Yuliang Zheng 5 Why using a single ATM cell ? z If the encrypted version of key materials exceeds 384 bits, problems would occur : splitting data buffering re-assembling data © 1998 by Yuliang Zheng 6 3 Why focusing on public key cryptosystems The problem CAN be solved using using secret key or types of cryptosystems z However, with such a solution z unforgeability cannot be achieved without a TTP/tamper-proof devices Key management is an issue Distribution Derivation, and/or Secure Storage © 1998 by Yuliang Zheng 7 Why RSA encryption wouldn’t work 64 bits Using RSA encryption k ke mod n at least 512 bits © 1998 by Yuliang Zheng 8 4 Why ElGamal encryption wouldn’t work 64 bits Using ElGamal encryption ---DL over GF(p)--- k gx mod p k at least 64+512=576 bits © 1998 by Yuliang Zheng 9 Why public key “signature + encryption” wouldn’t work Using signature + encryption ---RSA or ElGamal --- 64 bits k k sig ke mod n/ gx mod p > 512 bits © 1998 by Yuliang Zheng 10 5 Why EC-signature+encryption wouldn’t work 64 bits Using Schnorr sig + ElGamal enc ---DL over Elliptic Curve on GF(2160)--- k compressed representation ! k r, s x*g at least 64+(80+160) + (160+1)=465 bits © 1998 by Yuliang Zheng 11 Signcryption -- a new paradigm z Achieves the functions of digital signature unforgeability & non-repudiation encryption confidentiality z has a significantly smaller comp. & comm. cost Cost (signcryption) © 1998 by Yuliang Zheng << Cost (signature) + Cost (encryption) 12 6 In the paper & ink world: Signature-then-Seal To achieve: authenticity (unforgeability & non-repudiation) To achieve: confidentiality © 1998 by Yuliang Zheng 13 “Magic” Signcryption Envelope © 1998 by Yuliang Zheng 14 7 In the digital world (Alice to Bob): Signature-then-Encryption z 1. Signature generation Alice signs a message m using her secret key, i.e. creating sig on m. m z 2. Encryption Alice encrypts (m,sig) using DES with k. Alice creates another data so that Bob can (Typically, recover k. Alice encrypts k using Bob’s public key). mod exp mod exp m sig m sig k © 1998 by Yuliang Zheng 15 Why signature-then-encryption can be a problem z Consider a transaction/message of 5,120 bits (=640 chars, ≈ 8 lines) that requires high level security, or to be transmitted in 2010 z Very large moduli, say of 5120 bits, have to be used © 1998 by Yuliang Zheng 16 8 Why signature-then-encryption can be a problem (cnt’d) z If RSA with a 5120-bit composite is used Comp. cost: 2+2=4 exponentiations mod a (very large !) 5120-bit integer Comm. overhead: 10,240 bits (twice as large as the original 10,240 bits message !) 5,120 bits 5,120 bits message sig 5,120 bits k eb © 1998 by Yuliang Zheng 17 Why signature-then-encryption can be a problem (cnt’d) z If Schnorr sig & ElGamal enc with a 5120-bit prime are used Comp. cost: 3+2.17=5.17 (3+3=6) exponentiations mod a (very large !) 5120-bit integer Comm. overhead: >=5,560 bits >= 5560 bits 5,120 bits message © 1998 by Yuliang Zheng >=440 bits sig 5,120 bits gx 18 9 Signcryption -public & secret parameters z Public to all p : a large prime q : a large prime factor of p-1 g : 0<g<p & with order q mod p hash: 1-way hash KH: keyed 1-way hash (E,D) : z Alice’s keys x a : secret key ya : public key (note : ya = g x a mod p z ) Bob’s keys x b : secret key yb : public key (note : private-key encryption & decryption algorithms yb = g xb mod p ) © 1998 by Yuliang Zheng 19 Signcryption -- an example (SCS1) m z (c,r,s) Signcrypt by Alice x k = hash ( y b mod p ) where x ∈R {1,K , q − 1} k1 k k2 r = KH k2 ( m ) s= x mod q r + xa c = Ek1 ( m ) output © 1998 by Yuliang Zheng (c,r,s) (c,r,s) z m Unsigncrypt by Bob r s⋅ x k = hash (( y a ⋅ g ) mod p ) b k k1 k2 m = Dk (c ) 1 output m if r = KH k2 ( m ) ⎧ ⎨" invalid" if r ≠ KH ( m ) k2 ⎩ 20 10 Signcryption -- another example m z (c,r,s) (c,r,s) Signcrypt by Alice x k = hash ( y b mod p ) where x ∈R {1,K , q − 1} k1 k k2 z m Unsigncrypt by Bob r k = hash (( g s ⋅ ya ) x mod p ) b k k1 k2 r = KH k2 ( m ) m = Dk (c ) 1 s = ( x − r ⋅ xa )mod q output m if r = KH k2 ( m ) ⎧ ⎨" invalid" if r ≠ KH ( m ) k2 ⎩ c = Ek1 ( m ) output (c,r,s) © 1998 by Yuliang Zheng 21 Signcryption v.s. Signature-thenEncryption EXP=1+1.17 EXP=2+2 EXP=3+2.17 m m m sig sig k eb sig gx (a) Signcryption (b) Signature-then-Encryption (c) Signature-then-Encryption based on RSA based on DL based on DL © 1998 by Yuliang Zheng 22 11 Cost of Signature-then-Encryption v.s. Cost of Signcryption A simplistic comparison: Sc he m e s C ost C om p C ost C om m O ve r he a d (N o. of e xp ) (b its) R S A b a se d sig -the n-e nc 2 +2 |n a | + |n b | D L b a se d Sc hnor r sig + ElG a m a l e nc 3 + 2 .1 7 (3 + 3 ) |ha sh| + |q | + |p | D L b a se d Sig nc r yp tion 1 + 1 .1 7 (1 + 2 ) |K H | + |q | © 1998 by Yuliang Zheng 23 Signcryption v.s. Schnorr Sig + ElGamal Enc (cnt’d) |p | 512 768 1024 1536 2048 3072 4096 5120 8192 10240 |q | 144 152 160 176 192 224 256 288 320 320 © 1998 by Yuliang Zheng |K H | 72 80 80 88 96 112 128 144 160 160 sa vin g in sa ving in c o m p c o st c o m m o ve r he a d 58 % 7 0 .3 % 58 % 7 6 .8 % 58 % 8 1 .0 % 58 % 8 5 .3 % 58 % 8 7 .7 % 58 % 9 0 .1 % 58 % 9 1 .0 % 58 % 9 2 .0 % 58 % 9 4 .0 % 58 % 9 6 .0 % 24 12 Signcryption v.s. RSA |p |= |n a | =|n b | 512 768 1024 1536 2048 3072 4096 5120 8192 10240 |q | 144 152 160 176 192 224 256 288 320 320 |K H | 72 80 80 88 96 112 128 144 160 160 sa ving in c om p c ost 0 % 1 4 .2 % 3 2 .3 % 5 0 .3 % 5 9 .4 % 6 8 .4 % 7 2 .9 % 7 5 .6 % 8 3 .1 % 8 6 .5 % sa ving in c om m ove r he a d 7 8 .9 % 8 4 .9 % 8 8 .3 % 9 1 .4 % 9 3 .0 % 9 4 .0 % 9 5 .0 % 9 6 .0 % 9 7 .0 % 9 8 .0 % © 1998 by Yuliang Zheng 25 Applications of Signcryption z Bring to society huge savings in comp. & comm. if used widely in secure & authenticated message delivery / storage electronic commerce secure & authenticated transactions secure & authenticated multicast (incl. video conference, CSCW etc) fast, compact, secure, unforgeable & non-repudiated key transport © 1998 by Yuliang Zheng 26 13 Direct transport of key materials in a Short Packet | p| ≥ 512, | q| ≥ 160, | KH ⋅ (⋅)| ≥ 80 ( k 1 , k 2 ) = hash( yb x mod p) c TQ r s key with x ∈R [1,K , q − 1] | k 1 | ≥ 64, | k 2 | ≥ 64 c = E k1 ( key , TQ) |TQ| + |key| bits 80 bits 160 bits r = KH k2 ( key , TQ, other ) s= x mod q r + xa © 1998 by Yuliang Zheng 27 Direct transport of key materials in a single ATM cell ATM Cell 5 bytes header 48 bytes (384 bits) payload (data) | p| ≥ 512, | q| ≥ 160, | KH ⋅ (⋅)| ≥ 80 ( k 1 , k 2 ) = hash( yb x mod p) with x ∈R [1,K , q − 1] | k 1 | ≥ 64, | k 2 | ≥ 64 c = E k1 ( key , TQ) r = KH k2 ( key , TQ, other ) c 144 bits © 1998 by Yuliang Zheng r s 80 bits 160 bits s= x mod q r + xa 28 14 Indirect transport of key materials in a Short Packet | p| ≥ 512, | q| ≥ 160, | KH ⋅ (⋅)| ≥ 80 ( k 1 , k 2 ) = hash( yb x mod p) c r s TQ with x ∈R [1,K , q − 1] | k 1 | ≥ 64, | k 2 | ≥ 64 c = E k1 (TQ) |TQ| bits 80 bits 160 bits r = KH k2 (TQ, other ) s= x mod q r + xa © 1998 by Yuliang Zheng 29 Indirect transport of key materials in a single ATM cell ATM Cell 5 bytes 48 bytes (384 bits) header payload (data) | p| ≥ 512, | q| ≥ 160, | KH ⋅ (⋅)| ≥ 80 ( k 1 , k 2 ) = hash( yb x mod p) with x ∈R [1,K , q − 1] | k 1 | ≥ 64, | k 2 | ≥ 64 c = E k1 (TQ) r = KH k2 (TQ, other ) c occupied © 1998 by Yuliang Zheng r s 80 bits 160 bits s= x mod q r + xa 30 15 2 Dimensions to be considered z Direct v.s. Indirect key transport Direct key material transport a random session key is explicitly included in key materials Indirect key material transport a random session key is to be derived from key materials z Ensuring Freshness using a time-stamp, or a nonce © 1998 by Yuliang Zheng 31 4 Types of Key Transport Protocols Time-varying Quantity Nonce Time stamp (+nonce) © 1998 by Yuliang Zheng nonce based direct (3 moves) nonce based indirect (3 moves) time-stamp based direct (2 moves) time-stamp based indirect (2 moves) direct indirect Transport Mode 32 16 Direct key transport using a nonce (for unicast) Alice Bob c = E ( key) k1 r = KH ( key, NC , etc) k2 b s = x / (r + xa ) mod q verify tag <= NCb <= Pick a nonce NCb => c, r, s => unsigncrypt <= tag <= (optional) tag = MACkey(NCb) © 1998 by Yuliang Zheng 33 Direct key transport using a time-stamp (for unicast) Alice c = E ( key, TS ) k1 r = KH ( key, TS , etc) k2 s = x / (r + xa ) mod q verify tag © 1998 by Yuliang Zheng Bob => c, r, s => <= tag <= (optional) unsigncrypt, and check the freshness of TS tag = MACkey(TS) 34 17 Indirect key transport using a time-stamp (2 moves) Alice Bob c = E (TS ) k1 r = KH (TS , etc) k2 s = x / (r + xa ) mod q key = KH k1 ,k2 ( TS ) verify tag => c, r, s => <= tag <= (optional) unsigncrypt, and check the freshness of TS key = KH k1 ,k 2 ( TS ) tag = MACkey(TS,1) © 1998 by Yuliang Zheng 35 How to obtain key exchange protocols z Let Bob’s data or ID be involved in the derivation of a session key E.g. key* = KHkey(NCb) key* = KHkey (IDb) key* = KHkey (NCb, IDb) z Let both Alice & Bob generate key & exchange key materials (which achieves mutual identification). © 1998 by Yuliang Zheng 36 18 Direct key exchange using a nonce (for unicast) Alice Bob c = E ( key) k1 r = KH ( key, NC , etc) k2 b s = x / (r + xa ) mod q <= NCb <= Pick a nonce NCb => c, r, s => unsigncrypt c* = E unsigncrypt <= c*, r*, s* <= ( key*) k *1 ( key*, key, etc) r* = KH k *2 s* = x * /(r * + x ) mod q b © 1998 by Yuliang Zheng 37 ATM Forum Proposals z Two protocols, both based on X.509 2-way protocol 3-way protocol z Correspondence ATM 2-way <=> direct key exchange using a time-stamp ATM 3-way <=> direct key exchange using a nonce © 1998 by Yuliang Zheng 38 19 ATM Forum 2-Way Protocol (based on sign-then-enc) Alice Bob IDa , IDb , SecOpt ,{Ta , Ra ,{Enc Kb (ConfPara )}, ⇒ Sig Ka (hash( IDa , IDb , Ta , Ra , SecOpt ,{ConfPara }))} IDa , IDb , Ra ,{Enc Ka (ConfParb )}, ⇐ Sig Kb (hash( IDa , IDb , Ra ,{ConfParb }))} ⇒ ⇐ © 1998 by Yuliang Zheng 39 ATM Forum 3-Way Protocol (based on sign-then-enc) Alice Bob ⇒ ⇐ IDa ,{IDb }, Ra , SecNeg a ,{Cert a } IDa , IDb , SecNegb ,{Cert b },{Ra , Rb ,{Enc Ka (ConfParb )}, Sig Kb (hash( IDa , IDb , Ra , Rb , SecNeg a , SecNegb ,{ConfParb }))} ⇒ © 1998 by Yuliang Zheng IDa , IDb , Rb ,{Enc Kb ( ConfPara )}, Sig Ka (hash( IDa , IDb , Rb ,{ConfPara }))} ⇒ ⇐ ⇒ 40 20 Advantages of Our Signcryption based Protocols over ATM Forum’s z Significant savings in computational time and communication overhead © 1998 by Yuliang Zheng 41 Comparison with Beller-Yacobi protocol Attributes Comp. Longest Pre Cost Msg comp. protocols (# of exp) BellerYacobi 1 + 2.25 >= 512 bits Yes Our protocols 1 + 1.17 < = 384 (1 + 2) bits Yes* (1 + 4) * Only when Alice knows whom to communicate with © 1998 by Yuliang Zheng 42 21 About “Forward Secrecy” z Forward secrecy w.r.t. a participant compromise of the participant’s long term secret key does NOT result in the exposure of past session keys Beller-Yacobi protocol YES w.r.t. Alice, NO w.r.t. Bob Our protocols NO w.r.t. either Alice or Bob © 1998 by Yuliang Zheng 43 About Forward Secrecy (cnt’d) z Forward secrecy w.r.t. Alice CAN be obtained in our proposals by making a Alice’s long term secret key xa hard to compromise E.g. secret sharing, mathematically and/or physically © 1998 by Yuliang Zheng 44 22 Extensions z the proposed protocols can be extended to “multi-cast” conference key establishment Bob Alice © 1998 by Yuliang Zheng Cathy David 45 Direct multicast key transport using a nonce Alice & each Ri, I=1,…,t NC = NC1 + …+ NCt A lice: NC1 <= ….. <= NCt Each Ri, I=1,…,t Pick a nonce NCb key ∈ R {0 ,1} l1 , k ∈ R {0 ,1} l2 h = K H k ( key , N C , etc ) c = E k ( key , h ) for each i = 1, .. , t v i ∈ R [1, ... , q − 1] ( k i ,1 , k i , 2 ) = hash ( y i v i m od p ) c i = E k i ,1 ( k ) c c1 , r1 , s1 => …... => c t, r t, s t Each Ri, I=1,…,t finds out (c, ci, ri, si) & unsigncrypt it tag1 <= …. <= tagt (optional) Each Ri, I=1,…,t tagi = MACkey(NCi) ri = K H k i , 2 ( h , etc i ) si = vi m od q ri + x a Alice & each Ri, I=1,…,t verify tag1,..,tagt © 1998 by Yuliang Zheng 46 23 Direct multicast key transport using a time-stamp A lice: for each i = 1, .. , t v i ∈ R [1, ... , q − 1] ( k i ,1 , k i , 2 ) = hash ( y i v i m od p ) key ∈ R {0 ,1} l1 , k ∈ R {0 ,1} l2 get tim e − stam p TS h = K H k ( key , TS , etc ) c = E k ( key , TS , h ) for each i = 1, .. , t c c1 , r1 , s1 => …… => c t, r t, s t Each Ri, I=1,…,t finds out (c, ci, ri, si) & unsigncrypt it c i = E k i ,1 ( k ) ri = K H k i , 2 ( h , etc i ) si = vi m od q ri + x a Alice & each Ri, I=1,…,t verify tag1,..,tagt © 1998 by Yuliang Zheng tag1 <= …. <= tagt (optional) Each Ri, I=1,…,t tagi = MACkey(TS,IDi) 47 Speeding-up through Randomization z Ri may decide, in a probabilistic fashion whether or not generating NCi whether or not multicasting tagi z Similarly, Alice and each Ri may randomly choose a subset of tags received for verification © 1998 by Yuliang Zheng 48 24 Summary addressed the problem of “unforgeable key establishment in small packets s.a. ATM cells” z solved the problem using signcryption z Potential applications: z high speed networks smart card based security solutions mobile communications, …… © 1998 by Yuliang Zheng 49 25