Lăsa $BC$ să fie un cifru bloc cu securitate similară cu AES (în modul ECB).
Acest $BC$ se aplică unui mesaj $m$ de aceeași dimensiune a biților. Rezultatul este un cifru $c$.
de exemplu.;
$$BC(cheie_A,m) = c_A$$
$$BC(key_B,m) = c_B$$
caut un $BC$ cu:
$$BC(key_A,c_B) = c_{BA}$$
$$BC(key_B,c_A) = c_{AB}$$
Unde
$$c_{AB}=c_{BA}$$
dar pentru majoritatea:
$$c_{A}\not=c_{B}$$
Există vreo modalitate de a construi chei $key_A, cheie_A$ cu această proprietate pentru un potrivit $BC$?
(Sau cel puțin pentru un subgrup mare de elemente)
Această întrebare include un răspuns (de la Thomas) la o întrebare similară: Există cifruri comutative sigure?
Dar din câte am înțeles asta implică $BC$ este comutativă pentru toate cheile. Sunt bine doar cu o cantitate mică de taste care sunt comutative între ele.
De asemenea, în aplicația țintă $BC$ servește doar ca un generator de numere aleatorii. Următorul număr va fi generat prin aplicare $BC$ la curent. Ar trebui să fie dificil să se determine „indicele” unei valori sau calcule date $i$-pasi inainte.
Un RNG comutativ care poate calcula valoarea următoare și anterioară din curent (+ unele constante (cum ar fi cheia sau semința) ar face, de asemenea, treaba.
Editare: cheia/semințele vor fi cunoscute.