User Tools

Site Tools


pfs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
pfs [2023/09/25 10:22] – created katarinapfs [2023/11/27 10:57] (current) – external edit 127.0.0.1
Line 1: Line 1:
-====Perfect forward secrecy (Savršena unaprijedna sigurnost)====+====Perfect Forward Secrecy (Savršena unaprijedna sigurnost)==== 
 +**Savršena unaprijedna sigurnost** (//Perfect Forward Secrecy//, PFS) enkripcijsko je svojstvo nekih protokola za razmjenu ključeva koje osigurava razmjenu kratkotrajnih privatnih ključeva među klijentima i poslužiteljima. Osim što im je kratak rok trajanja, ključevi se automatski generiraju pri svakom povezivanju klijenta i poslužitelja. Ako se PFS koristi pri slanju poruka, može se generirati novi ključ za svaku poslanu poruku. Na taj način, čak i ako netko dospije do jednog od korištenih ključeva, ima vrlo malo podataka koje može dekriptirati. Ključevi ne koriste prethodne podatke, što eliminira potrebu za dugotrajnim čuvanjem ključeva i uklanja ranjivost trenutnih podataka u slučaju da su prethodni ključevi kompromitirani. 
 + 
 +Zamislimo da napadač dugo vremena presreće mrežni promet. Nakon toga uspije i kompromitirati server i dođe do enkripcijskog ključa. Takav napadač potencijalno može izvesti napad čovjeka u sredini (engl. man-in-the-middle attack) i dešifrirati budući promet, ali ako se koristio protokol sa svojstvom PFS-a neće moći  
 +dešifrirati promet koji je presreo prije nego što je došao do enkripcijskog ključa.  PFS u pravilu koristi **Diffie-Hellman algoritam razmjene ključeva** kako bi spriječio čitanje prošlih podataka. [[https://www.cert.hr/wp-content/uploads/2019/04/NCERT-PUBDOC-2009-12-284.pdf|Diffie-Hellman]] za potpis najčešće koristi statični potpisni ključ. Ako napadač uspješno dođe do ključa, može impersonirati server u komunikaciji s klijentom (i obrnuto) te izvesti klasični napad čovjeka u sredini. 
 +{{ ::dh_mitm_attack.png?nolink&600 | Napad čovjeka u sredini na Diffie-Hellman razmjenu ključeva}} 
 + 
 +PFS je prisutan u implementacijama mnogih protokola, kao npr. u SSL protokolu, OMEMO ekstenziji XMPP protokola ili u određenim postavkama IPSec-a. OpenSSL PFS postiže pomoću eliptičnog Diffie-Hellman algoritma, a protokol aplikacije za razmjenu poruka Signal koristi **Double Ratchet algoritam** kako bi postigao PFS. 
 +{{ ::signal_double_ratchet_dh.png?nolink&600 | Double Ratchet algoritam aplikacije Signal[2]}} 
 + 
 +  
 +===Izvori=== 
 +[1] Mark Stamp, Information Security Principles and practice, JohnWiley & Sons, 2011.\\ 
 +[2] https://signal.org/docs/specifications/doubleratchet/\\ 
 +[3] Kriptografija i kriptoanaliza, predavanja, FER\\ 
 +[4] https://www.sectigo.com/resource-library/perfect-forward-secrecy\\ 
 +[5] https://www.cert.hr/wp-content/uploads/2019/04/NCERT-PUBDOC-2009-12-284.pdf
  
pfs.1695637346.txt.gz · Last modified: 2025/06/03 10:22 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki