Client-Server Concurrent Zero Knowledge with Constant Rounds and Guaranteed Complexity Ran Canetti, Abhishek Jain and Omer Paneth 1 Zero-Knowledge Protocols [Goldwasser-Micali-Rackoff 85] β’ Completeness β’ Soundness β’ Zero knowledge π₯ β πΏ? π π 2 Completeness π€ π₯βπΏ π π Accept 3 Soundness π₯βπΏ πβ π reject 4 Zero-knowledge π₯βπΏ π πβ βπ π 5 Why do we care about zero-knowledge? Used as a sub-protocol in larger cryptographic protocols and systems Secure composition? 6 Concurrent Composition π π€ π π π₯βπΏ π₯βπΏ π₯βπΏ π π π Session 7 Concurrent Zero Knowledge [Dwork-Naor-Sahai 98] π π€ π π π₯βπΏ π₯βπΏ π₯βπΏ πβ π βπ 8 Rounds Assumption Stand-alone zero knowledge [Feige-Shamir 89] [Bellare-Jakobson-Yung 97] 4 OWF Concurrent zero knowledge [Richardson-Kilian 99] [Kilian-Petrank 01] [Prabhakaran-Rosen-Sahai 02] [Gupta-Sahai 12] [Chung-Lin-Pass 13] [Pandey-Prabhakaran-Sahai 13] OWF Strong assumption: interactive knowledge assumptions statistically sound P-certificates differing input obfuscation 9 Today Constant-round protocols from standard assumptions Weaker notions of concurrent security 10 Bounded Concurrent ZK [Barak 01] Assuming collision-resistant hash functions. For bound π΅: Barak π π π Barak π β¦ Complexity of each session Rounds Barak π β€ π΅ sessions π Communication π(1) ππππ¦(π΅) 11 Barakβs Protocol The bound on the number of concurrent sessions is set at protocol design time This is too early Barak Client Barak Server Client Barak Client [Persiano-Visconti 05]: set the bound only at protocol run time 12 Standard Model for Concurrent ZK π π€ π π π₯βπΏ π₯βπΏ π₯βπΏ π π π 13 Client-Server Concurrent ZK [Persiano-Visconti 05] Server Clients π₯βπΏ π€ π π₯βπΏ π₯βπΏ π π π Increase the communication as more session start 14 The Persiano-Visconti Protocol A single session: π Concurrent sessions: Bonded concurrent for π sessions > π active sessions Bonded concurrent for π2 sessions > π2 active sessions Bonded concurrent for π3 sessions π < π3 active sessions Finish session 15 Protocol Complexity Barak for π sessions π Barak for π2 sessions Barak for π3 sessions Complexity of each session (For ππ concurrent sessions) π Rounds π(π) Communication ππππ¦(ππ ) Almost the same as bounded concurrent ZK! Finish session 16 The Persiano-Visconti Protocol The communication complexity is changing at protocol run time Persiano-Visconti Server Persiano-Visconti Persiano-Visconti Client Client This is too late Client Client does not know what will be the communication complexity of the session! 17 Example: Call Center βAll our lines are currently busy. please hold and your call will be answered shortlyβ¦β βThe estimated waiting time is 7 minutes.β This work: the communication complexity is set at the beginning of every session 18 Our Result Assuming collision-resistant hash functions there is a concurrent zero-knowledge protocol in the client-server model with constant-rounds and guaranteed complexity. Guaranteed complexity: The communication complexity of each session is determined in the beginning of the session 19 This work Round complexity 6 [Persiano-Visconti] π(π) for ππ concurrent sessions Communication determined in the not determined complexity beginning of the session until the session terminates 20 The Protocol Every session runs Barakβs protocol with some bound First π sessions to start run Barakβs protocol with bound π. π Next π2 β π sessions run Barakβs protocol with bound π2 . Start session Start session Start session Next π3 β π2 sessions run Barakβs protocol with bound π3 . 21 The Challenge Cannot rely directly on bounded concurrency Start session Start session π >π Barakβs protocol with bound π πβ new sessions Start session 22 Barakβs simulation π Barak Barak β¦ πβ β€ π΅ sessions Barak 23 Barakβs simulation π Barak π Barak π β¦ π Barak πβ β€ π΅ sessions 24 Barakβs simulation π π Barak Other protocol β¦ Other protocol π πβ β€ π΅ sessions Communication complexity β€ Barakβs 25 Proof A session is of level-π if it runs Barakβs protocol with bound ππ . Observation: If π β starts β€ ππ sessions, sessions of level π are easy to simulate. 26 β¦ Level π Level π β 1 Level π π Level π β 2 πβ Level π Level π β 1 Level π β¦ 27 π0 Level π Level π β 1 Level π π Level π β 2 Level π πβ Level π β 1 Level π 28 π1 π0 Level π Level π β 1 Level π π Level π β 2 Level π πβ Level π β 1 Level π 29 π2 π1 π0 Level π Level π β 1 Level π β¦ Level π β 2 Level π πβ Level π β 1 Level π 30 Simulation Running Time β π π0 = ππππ¦ π(π ) π π1 = ππππ¦ π(π0 ) β¦ π ππ = ππππ¦ π(ππβ1 ) 31 Thanks! [slide: Mira Belenkiy] 32
© Copyright 2026 Paperzz