Generarea unei noi perechi de chei Schimb de chei Criptarea și decriptarea documentelor Semnături și verificare
GnuPG - un instrument pentru protejarea comunicațiilor. Acest capitol descrie pe scurt elementele de bază pentru operarea de GnuPG, inclusiv crearea de perechi de chei, schimbul de chei și verificare, criptare și decriptare a documentelor, verificarea documentelor cu semnături digitale. Nu descrie în detaliu principiile criptografiei cu chei publice, criptarea și semnăturile digitale. Aceste aspecte sunt discutate în capitolul 2. Și aici nu sunt luate în considerare subtilitățile folosirii GnuPG. Aceste aspecte sunt discutate în capitolele 3 și 4.
GnuPG utilizează criptografia cu chei publice. Fiecare utilizator are o cheie cheie, constând dintr-o cheie privată și o cheie publică. Cheia secretă este secretul utilizatorului și nu poate fi transferată unei alte persoane în nici un caz. Cheia publică este transmisă tuturor persoanelor cu care utilizatorul va schimba mesajele. GnuPG utilizează o schemă oarecum mai ingenioasă, în care utilizatorul are o pereche de chei primare și, opțional, mai mulți subordonați suplimentari. Perele primare și subordonate sunt combinate pentru a simplifica utilizarea lor, iar acest pachet poate fi adesea privit ca doar o pereche de chei.
Pentru a crea o pereche de chei primare, utilizați comanda -gen-cheie
GnuPG poate crea mai multe tipuri diferite de chei, dar cheia primară trebuie să poată crea o semnătură. Prin urmare, există doar trei opțiuni. Opțiunea 1 creează două perechi cheie. DSA - primar, utilizat doar pentru semnare. ElGamal este un sclav folosit pentru criptare. Opțiunea 2 este similară, dar creează doar o pereche de DSA. Opțiunea 4 [1] creează doar o pereche de ElGamal, utilizat atât pentru semnare, cât și pentru criptare. În ambele cazuri, mai târziu puteți crea perechi suplimentare de chei pentru semnare și criptare. Majoritatea utilizatorilor vor beneficia de opțiunea 1.
De asemenea, trebuie să selectați dimensiunea cheii. Dimensiunea cheii DSA trebuie să fie între 512 și 1024 biți. Cheia ElGamal poate avea orice dimensiune. De obicei, GnuPG necesită chei care să nu fie mai scurte de 768 de biți. Astfel, dacă ați ales opțiunea 1 și dimensiunea cheii este mai mare de 1024 biți, atunci cheia ElGamal va avea dimensiunea specificată, iar cheia DSA este de 1024 biți.
Despre perechea cheie ELG-E. cheie minimă este 768 biți implicit keysize este 1024 biți înaltă sugerată keysize este 2048 biți Ce keyize vrei? (1024)
Dimensiunea cheii mai mare oferă o protecție mai mare împotriva hacking-ului, dar dimensiunea implicită este suficientă pentru aproape orice scop. O lungime mare a tastelor încetinește codarea și decriptarea și poate afecta lungimea semnăturii. Dimensiunea cheii nu poate fi modificată mai târziu.
În cele din urmă, trebuie să specificați data expirării cheii. În cazul opțiunii 1, perioada specificată este utilizată pentru ambele chei.
Specificați cât timp trebuie să fie valabilă cheia. 0 = cheia nu expiră
Pentru majoritatea utilizatorilor, o cheie nelimitată este potrivită. Valabilitatea trebuie aleasă cu prudență; deși puteți schimba data de expirare după crearea cheii, există probleme cu transferarea modificărilor utilizatorilor care au deja cheia dvs. publică.
În plus față de parametrii cheie, trebuie să specificați ID-ul utilizatorului. Este necesar un identificator pentru a asocia cheia generată cu o anumită persoană.
Aveți nevoie de un ID de utilizator pentru a identifica cheia dvs.; software-ul construiește ID-ul de utilizator din Nume real, Comentariu și Adresa de e-mail în această formă: "Heinrich Heine (Der Dichter)
La generarea cheii, este creat un singur ID utilizator, dar este posibil să se creeze identificatori suplimentari dacă doriți să utilizați cheia în mai multe contexte; de exemplu, ca inginer la locul de muncă și ca politician după el. ID-ul de utilizator nu poate fi editat după creare.
GnuPG va cere o parolă pentru a proteja cheile secrete primare și subordonate, pe care le veți păstra la îndemâna altora.
Aveți nevoie de o expresie de acces pentru a vă proteja cheia privată. Introduceți expresia de acces:
Lungimea parolei nu este limitată și trebuie aleasă cu grijă. Din punct de vedere al securității, parola pentru protecția cheie este foarte importantă în GnuPG (și alte sisteme cu cheie publică). Aceasta este singura apărare în cazul în care cheia dvs. secretă cade în mâinile greșite. Nu luați cuvinte de la TSB, alternați cazul literelor și folosiți caractere non-alfabetice. O parolă bună este critică pentru fiabilitatea GnuPG.
Creați un certificat de revocare
După crearea perechii de chei, trebuie să creați un certificat de revocare pentru cheia publică primară utilizând comanda -gen-revoke. Dacă uitați parola sau cheia dvs. privată este furată sau pierdută, acest certificat poate fi trimis pentru a vă anunța că cheia publică nu mai poate fi utilizată. Cheia publică retrasă poate fi utilizată pentru a vă verifica în continuare semnăturile, dar nu poate fi utilizată pentru criptarea mesajelor pentru dvs. De asemenea, salvați capacitatea de a decripta mesajele trimise la dvs., dacă există o cheie secretă.
alice% gpg --output revoke.asc --gen-revoke mykey [. ]
Exportați o cheie publică
Înainte de a trimite o cheie publică unei persoane, trebuie să o exportați. Pentru aceasta, utilizați comanda --export. Aceasta necesită, în plus, un argument care identifică cheia publică exportată, precum și --gen-revoke.
alice% gpg --output alice.gpg --export [email protected]
Cheia este exportată în format binar, ceea ce este incomod. GnuPG are opțiunea de linie de comandă --armor. care indică necesitatea ieșirii în format ASCII. Practic orice ieșire GnuPG, adică chei, documente criptate, semnături, pot apărea în format ASCII. [2]
Importarea unei chei publice
Cheia publică poate fi adăugată la setul cheilor publice utilizând comanda --import.
După verificarea amprentelor, puteți să semnați cheia. Deoarece verificarea cheie cea mai slabă verigă în criptografie cheie publică, ar trebui să fie absolut sigur de modul în care înainte de al semna, și întotdeauna a verifica amprentele.
Cheile publice și private joacă fiecare rol în criptarea și decriptarea documentelor. Cheia publică poate fi reprezentată ca un seif deschis. Atunci când corespondentul criptează mesajul cu o cheie publică, acest mesaj este plasat în siguranță și seiful se închide. Cheia privată corespunzătoare este combinația necesară pentru a deschide un seif și a obține documentul. Cu alte cuvinte, numai titularul cheii private poate recupera documentul criptat cu cheia publică corespunzătoare.
Dacă doriți să trimiteți un mesaj unui prieten, îl criptați cu cheia publică a prietenului dvs., iar cea care îl decodifică cu cheia secretă. Dacă un prieten dorește să vă răspundă, el va cripta răspunsul cu cheia dvs. publică și îl veți decripta cu cheia secretă.
Pentru a cripta documentul, utilizați comanda --encrypt. Trebuie să aveți cheile publice ale destinatarilor potențiali. Programul se așteaptă ca numele documentului criptat ca parametru sau, în absența acestuia, să cripteze intrarea standard. Rezultatul criptat este plasat pe ieșirea standard, cu excepția cazului în care este specificată opțiunea --output. Pentru a spori protecția, documentul este comprimat suplimentar.
alice% gpg --output doc.gpg --encrypt --recipient [email protected] doc
Opțiunea --recipient utilizată pentru fiecare destinatar și ia un argument de identificare a cheii publice, care trebuie să fie criptate de documente. Un document criptat poate fi decriptat numai de cei ale căror chei secrete corespund uneia dintre aceste chei publice. În special, nu puteți decripta documentul criptat pe care, dacă nu porniți cheia publică la lista de destinatari.
Pentru a decripta mesajul, utilizați comanda --decrypt. Aveți nevoie de o cheie secretă pentru care acest mesaj a fost criptat. Document pentru decriptare la intrarea în program, document decriptat la ieșire.
Și documentele pot fi criptate fără o cheie publică. În schimb, pentru criptarea documentului este folosit un cifru simetric. Cheia utilizată pentru criptare este formată din expresia cheie solicitată înainte de criptare. Pentru o securitate mai mare, această parolă nu trebuie să se potrivească cu cea pe care o utilizați pentru protejarea cheii private. Un cifru simetric este aplicabil când nu este necesară schimbarea unei expresii de acces. Pentru a utiliza un cifru simetric, utilizați comanda --symmetric.
alice% gpg --output doc.gpg --symmetric doc Introduceți expresia de acces:
Semnătura digitală certifică creatorul și data la care a fost creat documentul. Dacă documentul este modificat în vreun fel, atunci verificarea semnăturii digitale va da o eroare. O semnătură digitală poate fi utilizată în aceleași scopuri ca o semnătură obișnuită. Textele sursă ale GnuPG, de exemplu, sunt semnate și puteți fi siguri că v-au atins neschimbate.
Pentru a semna documente, utilizați comanda --sign. Un document pentru semnarea la intrare și semnat la ieșire.
Documentul este comprimat înainte de semnătură și este trimis în format binar.
Având un document semnat, puteți să verificați semnătura sau să verificați semnătura și să restabiliți documentul original. Pentru a verifica semnătura, utilizați comanda --verify. Pentru a verifica semnătura și a prelua documentul, utilizați comanda --decrypt. Un document semnat la intrare și verificat și restaurat la ieșire.
Documente semnate transparent (clarificate)
Semnătura separată
Utilizarea documentelor semnate este limitată. Destinatarul trebuie să restaureze documentul din versiunea semnată și, chiar și în cazul unei semnături transparente, documentul semnat trebuie editat pentru a primi originalul. Prin urmare, există oa treia metodă de semnare a documentelor, care creează o semnătură detașată. O semnătură separată este creată utilizând comanda --detach-sign.
Pentru a verifica semnătura, aveți nevoie atât de o semnătură separată, cât și de un document. Pentru verificare, utilizați comanda --verify.