Am fost însărcinat să construiesc un site Web Assembly care implementează E2EE. Mă gândeam să folosesc ElGamal Encryption pentru a cripta mesajul și Diffie-Hellman pentru a stabili cheia. După ce am făcut cercetări suplimentare, întâmpin probleme în înțelegerea cazurilor practice de utilizare a ElGamal vs Diffie-Hellman.
Daca am inteles corect. Diffie-Hellman și ElGamal se bazează pe problema jurnalului discret, ceea ce îi face pe amândoi ideali. Diffie-Hellman stabilește doar o cheie între două gazde, apoi se folosește un sistem de criptare simetrică pentru a trimite un mesaj. ElGamal criptează mesajul o singură dată, folosind aceeași metodă ca Diffie-Hellman și apoi trebuie să fie regenerat de fiecare dată, ceea ce este lent și consumator de timp. Așa că mă gândesc că Diffie-Hellman ar fi cel mai bun pentru un scenariu în care utilizatorii comunică frecvent și ElGamal pentru un transfer unic de fișiere.
Deci, dezbat asupra utilizării aplicației mele web. Inițial mă gândeam să folosesc atât Diffie-Hellman, cât și ElGamal. Acum, mă gândesc să folosesc Diffie-Hellman pentru a stabili o cheie între două părți, apoi să folosesc o schemă de criptare simetrică precum AES.
Un articol pe care l-am găsit deosebit de util a fost https://www.commonlounge.com/discussion/2be4d294aa9e44d4b67f6644cd9b5ced
În special, rubrica „Utilizare practică și aplicații”
Dacă ar fi să folosesc Diffie-Hellman & AES, cât de des ar trebui regenerată o cheie?
Sper că cineva poate confirma dacă înțeleg corect utilizările practice și poate ajuta la completarea eventualelor lacune în înțelegerea mea.
Mulțumesc!