De ceva vreme ma intreb despre acest paragraf:
Înmulțirea este o funcție excelentă de amestecare. Dacă descoperi cum arată multiplicarea în termeni de AND și XOR, devine evident cât de elaborată este o înmulțire pe 64 de biți. Cantitatea de tranzistori necesare pentru implementarea acestuia în hardware interzice utilizarea multiplicarii în majoritatea algoritmilor criptografici. Dar pentru PRNG-urile non-criptografice care trebuie să ruleze doar pe un CPU de uz general, multiplicarea este foarte utilă deoarece există deja o implementare hardware.
https://tom-kaitchuck.medium.com/designing-a-new-prng-1c4ffd27124d
De obicei, în algoritmii de criptare folosim operațiuni modulare de adăugare, rotație și SAU exclusive. Dar există ceva care ar putea sta în calea utilizării înmulțirii modulare, rotației și operațiunilor SAU exclusive?
Multiplicarea modulară este mai lentă decât adăugarea, dar probabil că nu este cu mult mai lentă și, cu siguranță, este o funcție de amestecare mai puternică. Înmulțirea este de fapt o funcție excelentă de amestecare, așa că de ce este atât de rar folosită în criptografia simetrică? Cred că chiar și smartphone-urile pot face înmulțirea pe 64 de biți foarte repede și au implementare hardware pentru multiplicare (dar nu sunt sigur).
Este într-adevăr încetineala înmulțirii o problemă atât de mare încât multiplicarea nu poate găsi o utilizare larg răspândită în algoritmii de criptare rapid și ușori? Probabil că pe dispozitive IOT sau cipuri RFID poate fi o problemă, dar când vine vorba de computere și smartphone-uri, un algoritm de criptare bazat pe multiplicare nu ar putea fi o problemă, nu-i așa?