1
$\begingroup$

I’ve read a lot of articles and a lot of questions here to understand how the encryption is done in garbled circuits. As I understand double encryption is to encrypt the gates and the truth table. The thing I wonder is how do we do that double encryption. Which method is used to generate keys?

This is what I’m talking about: enter image description here

$\endgroup$

1 Answer 1

2
$\begingroup$

In the simplest setting (no free XOR or point and permute) you need to use a IND-CCA encryption scheme because you need to detect decryption failures while evaluating the GC. Then double encryption is simply encrypting a message under $k_0$ to obtain some ciphertext $c_0$ and then encrypting $c_0$ again under another key $k_1$. So there are two layers of encryption. The keys must be randomly sampled from a uniform distribution for security, one key for every possible wire value.

$\endgroup$
2

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.