Algoritmul de blană Bloom-Blum-Fur

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 4 noiembrie 2021; verificările necesită 4 modificări .

Algoritmul Blum - Blum - Shub ( Eng.  Algoritmul Blum - Blum - Shub , BBS) este un generator de numere pseudoaleatoare propus în 1986 de Lenore Blum , Manuel Blum și Michael Shub .

BBS arată astfel:

unde este produsul a două numere prime mari și . La fiecare pas al algoritmului, rezultatul este obținut fie din bitul de paritate , fie din unul sau mai mulți biți mai puțin semnificativi .

Cele două numere prime și , trebuie să fie ambele congruente cu 3 modulo 4 (acest lucru garantează că fiecare reziduu pătratic are o rădăcină pătrată , care este, de asemenea, un rest pătratic ) și cel mai mare divizor comun gcd trebuie să fie mic (acest lucru crește lungimea ciclului).

O caracteristică interesantă a acestui algoritm este că pentru a obține nu este necesar să se calculeze toate numerele anterioare dacă starea inițială a generatorului și numerele și sunt cunoscute . -a valoare poate fi calculată „direct” folosind formula:

,

unde  este funcția Carmichael : în acest caz  , cel mai mic multiplu comun al numerelor și .

Fiabilitate

Acest generator este potrivit pentru criptografie , dar nu pentru simulare, deoarece nu este suficient de rapid. Cu toate acestea, are o durabilitate neobișnuit de mare, care este oferită de calitatea generatorului bazată pe complexitatea de calcul a problemei de factorizare a numărului . Când numerele prime sunt alese cu atenție, iar biții fiecăruia sunt rezultati, atunci limita luată crește la fel de repede, iar calcularea biților de ieșire va fi la fel de dificilă ca factorizarea .

Dacă factorizarea numerelor întregi este la fel de grea (cum se presupune că este), atunci un BBS mare va avea o ieșire fără orice tipare non-aleatoare care poate fi detectată cu suficient calcul. Cu toate acestea, este posibil un algoritm rapid pentru factorizare și, prin urmare, BBS nu este garantat a fi fiabil.

Note

Literatură