C ∅ C ∅ : A Framework for Building Composable Zero-Knowledge Proofs
Non-malleable non-interactive zero knowledge and adaptive chosen-ciphertext security