În ceea ce privește securitatea informațiilor , un server de chei criptografice este o gazdă destinată stocării și transmiterii către utilizatori, precum și alte servere de chei criptografice criptografice .
Cheile distribuite de acest tip de server sunt cel mai adesea folosite ca parte a unui certificat digital care conține nu numai cheia în sine, ci și informații despre proprietarul cheii. De regulă, în acest caz, se utilizează un certificat al unuia dintre standardele comune: OpenPGP , X.509 sau PKCS . În plus, aceste chei sunt de obicei chei publice pentru utilizare în algoritmii de criptare a cheilor publice .
Crearea acestui tip de servere a fost necesară după apariția criptosistemelor cu chei publice , în care utilizatorul creează o pereche de chei: private și publice. Mai mult, cheia publică, după cum sugerează și numele, trebuie să fie pusă la dispoziția publicului pentru a fi utilizată în operațiuni criptografice atunci când se verifică un EDS și se criptează un mesaj. Căutarea cheii potrivite pe Internet sau solicitările de trimitere personală a acestei chei persoanei cu care doriți să comunicați în privat poate dura mult timp. În plus, este posibil să primiți o cheie învechită sau nevalidă. Serverul de chei criptografice în acest caz acționează ca un depozit de chei centralizat care minimizează nevoia unei cereri individuale de chei și devine, de asemenea, unul dintre elementele structurale ale lanțului de încredere .
Primul server de chei PGP bazat pe web a fost descris și creat de Mark Horowitz ca urmare a scrierii unei dizertații în timp ce studia la Massachusetts Institute of Technology . Acest server a fost numit „HKP” după numele protocolului dezvoltat pentru el (OpenPGP HTTP Keyserver Protocol). Utilizatorii ar putea primi, descărca chei și, de asemenea, pot căuta chei pe server folosind acest protocol prin portul 11371 sau manual printr-un browser rulând scripturi CGI . Înainte de crearea HKP, serverele de chei erau gestionate prin intermediul unui handler de comenzi de e-mail .
Un server de chei independent cunoscut sub numele de PGP Certificate Server a fost dezvoltat de PGP, Inc. și este disponibil ca aplicație (din versiunea 2.5.x ca aplicație server) pentru implementări ale funcțiilor PGP keyserver începând cu versiunea 8.x (programe client) [1] . La 1 ianuarie 2002, Network Associates Technology Corporation a eliberat un brevet (Brevetul Statelor Unite 6336186) [2] pentru conceptul de server de chei.
Pentru a înlocui serverul de certificate vechi, Network Associates a introdus un server de chei LDAP numit PGP Keyserver 7.0. De la lansarea PGP 6.0, această implementare a serverului de chei a devenit interfața de bază pentru utilizarea în implementările PGP ale Network Associates. Serverele de chei LDAP și LDAPS (cu suport HKP pentru compatibilitate inversă) au devenit, de asemenea, baza pentru instrumentele de administrare PGP, care au fost folosite pentru a construi un server de chei private de întreprindere conform schemei Netscape Directory Server . Ulterior, acest sistem a fost înlocuit cu directorul global al PGP Corporation .
Există multe servere de chei disponibile public distribuite în întreaga lume care vă permit să stocați și să transferați chei OpenPGP pe Internet. În cea mai mare parte, aceste servere sunt întreținute de persoane private conform conceptului pro bono , implementând astfel modelul de utilizare PGP web of trust .
Mai multe servere de chei S/MIME disponibile public [3] vă permit, de asemenea, să adăugați sau să revocați chei utilizate în criptosistemele S/MIME .
În plus față de cele de mai sus, există multe infrastructuri de chei publice proprietare care includ un server de chei, care poate fi fie disponibil public, fie privat, servind doar utilizatorii sistemului său.
Serverele de chei OpenPGP dezvoltate în anii 90 s-au confruntat cu o serie de probleme de utilizare. Odată încărcată pe server, cheia publică este foarte greu de eliminat. Din diverse motive (de exemplu, pierderea sau furtul unei chei private asociate), unii utilizatori au încetat să mai folosească cheile publice. În acest caz, a fost destul de dificil să scoți cheia publică și, chiar dacă a fost eliminată, nimic nu l-a împiedicat pe atacator să încarce din nou o copie a cheii pe server. Într-o astfel de situație, pe server s-au acumulat un număr mare de chei publice inutile, așa-numitele „plăci aterosclerotice” ale serverului de chei.
O altă problemă era că oricine putea încărca pe server o cheie publică fictive asociată cu o persoană care nu este proprietarul acestei chei. În astfel de servere de cheie, nu există nicio modalitate de a verifica legitimitatea cheii.
Pentru a rezolva aceste probleme, PGP Corporation a dezvoltat o nouă generație de servere de chei criptografice numite PGP Global Directory [1] . Pe astfel de servere, la adăugarea unei chei publice, a fost trimisă o solicitare către e-mailul proprietarului vizat pentru a confirma dreptul de proprietate asupra cheii încărcate. Dacă a fost primită confirmarea, cheia a fost acceptată de server ca fiind legitimă. De asemenea, pentru a preveni transformarea cheii într-o „placă” fictive, o astfel de solicitare ar putea fi trimisă din nou periodic. Ca urmare, lista de chei de pe server a fost ținută la zi și, dacă s-a dorit, a fost întotdeauna posibilă verificarea legitimității cheii solicitând proprietarului prin e-mail. Din păcate, faptul că verificarea legitimității a fost efectuată fără utilizarea metodelor criptografice pe un e-mail obișnuit a condus la faptul că oricine avea acces la contul de e-mail ar putea, de exemplu, să elimine cheia sau să adauge una falsă. .
Cea mai recentă schiță IETF pentru HKP a descris o rețea distribuită de servere de chei criptografice bazate pe înregistrări DNS SRV : atunci când căutați o cheie pentru [email protected], o interogare poate fi trimisă la serverul de chei example.com.
Mai jos sunt câteva servere de chei care sunt cele mai frecvent utilizate pentru a obține o cheie cu comanda „gpg --recv-key”
Criptosisteme simetrice | |
---|---|
Cifruri în flux | |
Rețeaua Feistel | |
Rețeaua SP | |
Alte |
Funcții hash | |
---|---|
scop general | |
Criptografic | |
Funcții de generare a cheilor | |
Numărul de verificare ( comparație ) | |
Hashes |
|