You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
During our work with ABY I noticed that the generated keys for the Yao sharing are deterministic. If the sharing algorithm is run two times the same keys are used.
This undermines the security of the entire protocol since Yao's garbled circuit must not be reused. An attacker can generate all server-keys and learn the secret server input.
The text was updated successfully, but these errors were encountered:
You are right, ABY currently uses a fixed seed to generate randomness and thus keys are deterministic. This is intentional and used for debugging.
If you want to change this and have actual random (and different) values in every run you should change src/abycore/aby/abyparty.cpp:44
from m_cCrypt = new crypto(seclvl.symbits, (uint8_t*) const_seed[pid]);
to m_cCrypt = new crypto(seclvl.symbits);
During our work with ABY I noticed that the generated keys for the Yao sharing are deterministic. If the sharing algorithm is run two times the same keys are used.
This undermines the security of the entire protocol since Yao's garbled circuit must not be reused. An attacker can generate all server-keys and learn the secret server input.
The text was updated successfully, but these errors were encountered: