# Is it secure for A to allow B to run a garbled circuit twice with different inputs? [duplicate]

I was reviewing past exam questions and came across this one:

Is it secure for A (the garbler) to allow B (the evaluator) to run a garbled circuit twice with different inputs? They aim to compute the output of a function F for two pairs of inputs, A encrypts the circuit and sends the garbled circuit to B. B also receives the encryption for both his inputs, enabling him to run the circuit twice.

I'm still finding garbled circuits hard to grasp so I'm wondering if my understanding is correct that allowing B to run a garbled circuit twice with different inputs, is not secure for A? This is because B shouldn't learn anything beyond the output of his given inputs, yet the reuse of a garbled circuit might allow him to infer information through timing discrepancies or by correlating outputs from multiple evaluations. This could potentially reveal details about A's inputs.

But is reusing the circuit twice really enough to make it insecure for the garbler?

Suppose I hold a garbled circuit. Let's focus on a single AND-gate. I hold garbled representations of input values $$a$$ and $$b$$, and compute a garbled representation of the output $$c = a \land b$$. I don't know what $$a,b,c$$ are.
Later we reuse the garbled circuit and now I notice that I hold the same $$a$$ but a different $$b$$ --- call it $$\overline{b}$$. Suppose I also observe that the output of the gate doesn't change when $$b$$ changes to $$\overline{b}$$. Then I can conclude that $$c = 0$$ and $$a=0$$.