Public-Key Generation with Verifiable Randomness
Résumé
We revisit the problem of proving that a user algorithm se-lected and correctly used a truly random seed in the generation of hercryptographic key. A first approach was proposed in 2002 by Juels andGuajardo for the validation of RSA secret keys. We present a new secu-rity model and general tools to efficiently prove that a private key wasgenerated at random according to a prescribed process, without revealingany further information about the private key.We give a generic protocol for all key-generation algorithms based onprobabilistic circuits and prove its security. We also propose a new pro-tocol for factoring-based cryptography that we prove secure in the afore-mentioned model. This latter relies on a new efficient zero-knowledgeargument for the double discrete logarithm problem that achieves an ex-ponential improvement in communication complexity compared to thestate of the art, and is of independent interest.