A zap is a two-round public coin witness indistinguishable proof system, where the first round is a random string from the verifier to the prover. This notion is proposed by Dwork and Naor. They constructed a zap for NP from any non-interactive zero-knowledge (NIZK) proof which has many applications in the literature. In this note, we start with a more explicit proof of their soundness through enumeration. Based on this proof view point, we further show that if NIZK used in their zap has an adaptive soundness, then the zap soundness error can be reduced by a factor of 2|x|, where |x| is the length of the NP-statement and is fixed before the protocol starts (but x itself can be chosen adaptively). Our improved bound is optimal in the sense that for any NP-language L, there exists a NIZK that asymptotically achieves this bound. Finally, we investigate their deniable authentication protocol from this zap. We show that this protocol in fact can be simplified without a zap.
['Shaoquan Jiang']
Dwork-Naor ZAP and its application in deniable authentication, revisited