Certificatul este creat prin legarea cheii publice cu blocul de identificare. Atunci când
doi utilizatori stabilesc ı̂ntre ei o comunicare, ei ı̂şi trimit unul altuia certificatele, şi fiecare
validează identitatea partenerului.
Ca mod de implementare. componentele cheii publice şi blocul de identificare al unui
utilizator pot fi scrise pe un smartcard. Cu ajutorul acestuia, componentele pot fi trans-
portate fizic (electronic) la o autoritate de certificare. Aceasta generează un certificat care
va fi ı̂ncărcat de asemenea pe smartcard.
Ulterior toate aceste componente sunt ı̂ncărcate pe calculator.
Obiectivele pe care trebuie să le ı̂ndeplinească un sistem atunci când apelează la CA
sunt ı̂n mare:
• Să fie capabil să estimeze scopul şi valoarea certificatelor şi a procesului de certificare;
1
2 CAPITOLUL 1. INFRASTRUCTURĂ CU CHEI PUBLICE (P KI)
• Să ı̂nţeleagă durata unui certificat şi cum gestionează un P KI acest certificat pe
durata valabilităţii lui;
• Să fie capabil să aleagă un serviciu de ı̂ncredere adecvat pentru eliberarea certifica-
tului.
• Issuer unique ID: Zonă opţională alocată numelor CA apărute ı̂n “CA Issuer
name” (pentru o eventuală reutilizare).
• Subject unique ID: Zonă opţională care permite utilizarea ulterioară a numelor
din “Subject name”.
Informaţia scrisă pe aceste câmpuri este semnată folosind cheia secretă a lui CA. Aceste
două elemente (semnătura şi conţinutul zonelor) sunt apoi
1. concatenate;
2. scrise cu ajutorul unui sistem de notaţie sintactică numit Abstract Syntax One1 ;
3. transformate ı̂n date binare folosind sistemul de codificare DER (Distinguish En-
coding Rules);
CA autentifică cheia publică şi ID lui Alice calculând certificatul după algoritmul:
1. Calculează MA = P ubID
A
A
(mod p)
Alice verifică faptul că certificatul a fost eliberat de autoritatea CA folosind algoritmul:
1. Calculează MA = P ubID
A
A
(mod p)
VA
2. Calculează SA = P ubC
ca
caA
(mod p) · CcaA (mod p) (mod p)
Când Alice doreşte să stabilească o sesiune de comunicare cu Bob, ı̂i trimite quadruplul
(CcaA , P ubA , VA , MA )
Cum ambele părţi dispun de a, p şi P ubca , Bob poate autentifica certificatul lui Alice
calculând
VA
SB = P ubC ca
caA
mod p · CcaA mod p (mod p)
şi verificând congruenţa aMA ≡ SB (mod p).
De remarcat că prin acest protocol, Bob nu poate deduce identificatorul lui Alice.
Recapitulând: dacă Alice şi Bob doresc să stabilească un contact bazat pe un certificat
eliberat de CA:
• Informaţiile deţinute de
Alice : P rivA , P ubA , MA , ScaA , VcaA , P ubca , h
Bob : P rivB , P ubB , MB , ScaB , VcaB , P ubca , h
6 CAPITOLUL 1. INFRASTRUCTURĂ CU CHEI PUBLICE (P KI)
Dacă congruenţele sunt verificate de ambele părţi, atunci Alice şi Bob ştiu că certificatele
sunt eliberate de autoritatea de certificare CA, iar partenerii sunt autentificaţi.
Deci, dacă Alice şi Bob doresc să stabilească un contact bazat pe un certificat eliberat
de CA:
• Informaţiile deţinute de
1.4. MANAGEMENTUL UNUI P KI 7
1.4.1 Utilizatorii P KI
Un utilizator P KI (End-Entity) este un beneficiar al unui certificat P KI. El poate fi o
persoană, un computer, o aplicaţie (de exemplu pentru securitatea IP ).
Utilizatorul are nevoie de un acces local sigur la anumită informaţie (cel puţin la
propriul nume, la cheia sa privată, la numele unui CA ı̂n care are ı̂ncredere, precum şi la
cheia publică a acestui CA).
Conform cu RF C 3647, un utilizator P KI are următoarele obligaţii:
• Să asigure o reprezentare corectă a datelor sale ı̂n cadrul certificatului;
• Să asigure protecţie cheii sale private;
• Să introducă restricţii de acces la cheia sa privată şi la utilizarea certificatului;
• Să notifice orice compromitere a cheii sale private.
Procesul de ı̂nregistrare şi autentificare are loc după schema următoare:
3
CA/RA -
RS
6 6
1 2 5 6
? Mesaj criptat - ?
Alice 4 - Bob
Semnătură digitală 7
Iniţializarea
Alice solicită un certificat de la CA sau RA. Rezultatul acţiunii este eliberarea unui
certificat pentru o cheie publică a lui Alice, care este trmis lui Alice şi/sau publicat pe
un repository site.
Componentele unei faze de iniţializare sunt:
1. Înregistrare: CA (sau RA) stabileşte şi verifică identitatea lui Alice ca solicitator
de certificat.
2. Generarea cheilor: Este generată perechea (cheie publică, cheie privată). Gener-
area poate fi efectuată de Alice, CA, RA sau chiar o a treia parte de ı̂ncredere
10 CAPITOLUL 1. INFRASTRUCTURĂ CU CHEI PUBLICE (P KI)
4. Distribuţia certificatului şi cheii publice: CA trimite lui Alice certificatul şi
perechea de chei (dacă acestea nu au fost generate de Alice).
Dacă Alice pierde cheia sa privată, sau mediul ı̂n care aceasta este stocată a fost corupt,
este nevoie de o recuperare a cheii, deci de un nou contact ı̂ntre utilizator şi unitatea de
certificare.
O cheie publică este folosită:
Procesul de recuperare a cheii este utilizat numai pentru cheile de criptare; aici, organis-
mul abilitat va recalcula cheia privată.
Acest proces nu poate fi similar pentru cheile de semnătură, deoarece va ı̂ncălca propri-
etatea de non-repudiere a cheii (Alice este singura entitate care controlează cheia privată).
Singurul remediu ı̂n acest caz este generarea unei noi perechi de chei.
Procesul de actualizare a cheii se referă la o updatare periodică a unei perechi de chei
– când aceasta este ı̂nlocuită cu o nouă pereche de chei, ı̂nsoţită de un nou certificat.
Un certificat este eliberat pentru o perioadă strict determinată de timp. După expirare,
el trebuie reı̂nnoit sau actualizat.
Reı̂nnoire ı̂nseamnă eliberarea unui nou certificat, pentru aceeaşi cheie şi aceleaşi date
de identificare ale utilizatorului.
Actualizare ı̂nseamnă eliberarea unui certificat pentru o nouă pereche de chei şi/sau o
modificare de date de identificare ale lui Alice.
1.4. MANAGEMENTUL UNUI P KI 11
– Găsirea cheii publice a lui Bob – pentru a cripta un mesaj adresat acestuia.
– Verificarea unei semnături digitale primite de la Bob.
12 CAPITOLUL 1. INFRASTRUCTURĂ CU CHEI PUBLICE (P KI)
• Validarea certificatului: După ce Alice a găsit certificatul lui Bob, ea trebuie să
ı̂l valideze. Validarea unui certificat include următoarele verificări:
– Certificatul a fost eliberat de un CA de ı̂ncredere (se verifică autenticitatea).
– Certificatul nu a fost modificat (se verifică integritatea).
– Certificatul nu a expirat.
– Certificatul nu a fost revocat (se verifică CRL).
Din aceste motive, apar diverse structuri formate din mai multe autorităţi de certificare;
aceste structuri se numesc ”modele de ı̂ncredere”. În prezent sunt utilizate mai multe
tipuri de modele de ı̂ncredere: ierarhice, mesh, Web, şi centrate pe utilizator.
CA1 CA4
N ivel 1 N ivel 1
CA2 CA3
N ivel 2 N ivel 2 Utilizator F
Certificatul lui A este emis de CA2 , iar al lui F este emis de CA4 . Dacă cei doi vor
să stabilească o legătură, iar A (de exemplu) nu are ı̂ncredere ı̂n CA4 , el va trebui să
găsească alt CA ı̂n care să aibă ı̂ncredere. Singurul care poate fi folosit aici este Root CA.
Dacă contactul trebuie făcut ı̂ntre utilizatorii A şi D, ei pot folosi ca autoritate de
certificare comună pe CA1 .
1. Algoritmii de semnătură:
Certificatele şi listele de revocare pot fi semnate teoretic cu orice protocol de semnă-
tură cu cheie publică. Algoritmul folosit este totdeauna ı̂nsoţit de o funcţie de
dispersie criptografică. Aceasta produce o amprentă a datelor care trebuie semnate.
4
De exemplu, browserele Firefox şi Microsoft Explorer sunt distribuite ı̂mpreună cu aproximativ 100
chei publice pre-instalate, fiecare cheie fiind ı̂nsoţită de un certificat.
16 CAPITOLUL 1. INFRASTRUCTURĂ CU CHEI PUBLICE (P KI)
2. Algoritmi de criptare:
(a) Algoritmi cu cheie publică: Utilizaţi pentru criptarea cheilor privatre trans-
portate de mesajele P KI.
Algoritm recomandat: Diffie - Hellman5 .
Alţi algoritmi: RSA, ECDH.
(b) Algoritmi simetrici:
Pot fi utilizaţi dacă cheia de criptare a fost transmisă prin canal securizat.
Algoritm recomandat: 3DES (ı̂n mod CBC)
Alţi algoritmi: RC5, Cast 128.
5
Aloritmul de criptare Diffie - Hellman acceptat de X.509 este definit ı̂n ANSI X.9.42, publicat ı̂n
2003.
Bibliografie
[2] D.B. Newman, J.K. Omura, R.L. Pickholtz - Public key management for network
security IEEE Network Magazine, 1(2), 1987, pp. 12-13
[4] http://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One
[5] http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf
[6] http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf
17