Friday, January 20, 2006

 

Tehnici de gestionare a cheilor

  • cadru de lucru
    • context
      Gestionarea cheilor are loc in contextul politicii de securitate care defineste in mod implicit/explicit amenintarile la care trebuie sa faca fata un sistem si de aici cerintele criptografice.
      Politica de securitate defineste
      • proceduri privitoare la aspectele tehnnice si administrative ale gestionarii cheilor
      • responsabilitatile partilor
      • tipurile de inregistrari care sa permita rapoarte ulterioare unui eveniment de securitate
    • obiectiv
      pastrarea in siguranta a informatiilor referitoare la chei ai sa fie contracarate amenintari cum ar fi:
      • compromiterea confidentialitatii cheilor secrete
      • compromiterea autenticitatii cheilor secrete sau publice
      • utilizarea neautorizata a cheilor publice sau secrete
    • modele de distributie a cheilor
      • problema distributiei cheilor
        intr-un sistem cu chei simetrice cu n utilizatori, daca fiecare pereche de utilizatori partajeaza o cheie secreta distincta, numarul de chei este n ( n - 1 ) / 2, ceea ce pentru n mare conduce la un numar de chei inacceptabil de mare si de aici necesitatea unui server central
      • mecanisme
        • punct la punct
          A si B partajeaza a priori o cheie secreta
        • cu terta parte
          A si B partajeaza fiecare o cheie secreta cu serverul
          • centru de distributie a cheilor (KDC)
            KDC distirbuie chei utilizatorilor care partajeaza secrete cu acesta
          • centru de translatie a cheilor (KTC)
            functioneaza ca un KDC dar cheia de sesiune este generata de una dintre parti
        cheile partajate sunt distribuite prin tehnici necriptografice si garanteaza autenticitatea partilor
    • functii ale tertului, T
      • clasificare dupa criteriul interactiunii in timp real
        • in-line
          T este un intermediar ce are rolulu de mijloc de comunicatie intre A si B
        • on-line
          T este implicat in fiecare sesiune, comunicand cu o parte sau cu ambele, dar A si B comunica direct intre ei
        • off-line
          T nu este implicat in protocol in timp real dar pregateste a priori informatii care sunt disponibile lui A si/sau B care sunt utilizate in protocol
      • clasificare pentru tert intr-un sistem de certificate cu cheie publica
        • autoritate de certificare (CA)
          responsabila pentru distributia cheilor publice carora le garanteaza autenticitatea
          in sistemele bazate pe certificate, cheile publice sunt legate de nume prin certificate semnate; autoritatea gestioneaza numerele certificatelor si revocarea acestora
        • server de nume
          gestioneaza spatiul de nume
        • autoritate de inregistrare
          autorizeaza entitatile, care sunt identificate prin nume unice, ca membri ai domeniului de securitate
        • generator de chei
          creeaza perechi de chei publice/private
          poate fi parte a entitatii, a CA sau un sistem de infcredere independent
        • director de certificate
          gestionar al unei baze de date cu certificate ce este gestionata de CA sau de catre entitati
      • functii primare
        • server de autentificare
          realizeaza distributia cheilor intre entitati, inclusiv autentificarea acestora
        • gestionar de chei
          realizeaza stocarea cheilor, informatiilor de auditare, aplicarea cerintelor de ciclu de viata a cheilor
      • alte functii
        • agent de marcare timp
          valideaza existenta unui document la un moment de timp sua lipirea unei date calendaristice la o tranzactie sau mesaj digital
        • notar
          verifica o semnatura digitala la un moment dat de timp sau mai general, atesta o depozitie data intr-o anumita jurisdictie la un moment dat de timp
    • comparatie intre tehnicile, cu cheie publica si cele cu cheie simetrica, de gestionare a cheilor
        avantaje ale tehnicilor cu cheie publica
      • gestionare simplificata a cheilor
      • nu este necesar un server de incredere on-line
      • functiuni suplimentare
  • tehnici pentru distribuirea cheilor private si a cheilor secrete
    • clasificarea cheilor dupa modul de utilizare
      • chei sablon
        chei neprotejate criptografic ce sunt distribuite manual sau instalate initial si sunt protejate prin proceduri de control si/sau izolare fizica
      • chei de criptare a cheilor
        sunt chei simterice sau publice ce sunt folosite in protocoalele de transport ale cheilor; pot fi protejate prin alte chei
      • chei de date
        sunt utilizate in operatiile criptografice asupra datelor utilizatorului; in general sunt chei simetrice
    • criptoperioada unei chei
      este intervalul de timp in care o cheie este valida pentru folosire de catre partile indreptatite
    • clasificarea cheilor dupa criteriul temporalitatii
      • chei pe termne lung
        cheile sablon, deseori cheile de criptare a cheilor, cheile utilizate pentru acordul asupra cheilor
      • chei pe termen scurt
        cheile ce sunt stabilitate prin transport sau acord si deseori cheile de date sau cheile de sesiune
      • in general comunicatia se face cu chei de termen scurt in timp ce stocarea se face utilizand chei de termen lung
    • KTC si certificate cu cheie simetrica
      • protocol translatie mesaj prin KTC
          • A interactioneaza cu KTC si cu B
          • A transfera un mesaj secret, M sau o cheie de sesiune B
          1. E este un algoritm de criptare simetrica
          2. setare initiala: A si T partajeaza cheia KAT, B si T partajeaza cheia KBT
          3. mesaje
            • A → T: A, EKAT(B, M)
            • A ← T: A, EKBT(B, M)
            • A → B: A, EKBT(B, M)
          4. actiuni
            1. A cripteaza M sub KAT si trimite lui T impreuna cu identificatorul propriu
            2. T decripteaza M, determina destinatarul, cripteaza M cu cheia destinataruluiu
            3. T trimite lui A mesajul pe care acesta il va trimite lui B; T poate trimite direct lui B
      • certificate cu cheie simetrica
        pot constitui un mijloc prin care KTC evita necesitatea unei baze de date sigure cu secretele utilizatorilor
        cheia fiecarui utilizator este ambalata intr-un certificat, EKT(KBT , B), criptat cu o cheie sablon simetrica, KT, cunoscuta doar lui T astfel ca stocarea sigura este necesaraa doar pentru aceasta cheie
  • tehnici pentru distribuirea cheilor publice
    • obtinerea cheilor publice
      • livrarea punct la punct pe un canal de incredere
        cheile sunt obtinute direct de la alti utilizatori
      • accesul direct la un fisier public de incredere
        cheile sunt obtinute dintr-o baza de date publica a carei integritate este de incredere; o metoda poate fi autentificarea fisierului public prin autententificarea arborescenta a cheilor publice
      • utilizarea unui server on-line de incredere
        ce asigura accesul la echivalentul unui fisier public ce contine cheile publice autentice; transmisiile cheilor sunt semnate
      • utilizarea unui server off-line si acertificatelor
        entitatea A contacteaza CA pentru a-si inregistra cheia publica si obtine semnatura de verificare; CA certifica cheia publica a lui A legand-o de un sir care-l identifica pe A; partile obtin cheile publice autentice prin schimbarea certificatelor sau direct dintr-un director public
      • utilizarea unor sisteme care garanteaza implicit autenticitatea parametrilor publici
        utilizarea unor algoritmi ce permit ca o modificare a parametrilor publici sa conduca la un insucces, detectabil si necompromitatoar, al tehnicilor criptografice
        aceste sisteme includ sistemele bazate pe identitate
    • certificate cu cheie publica
      • certificat cu cheie publica
        o structura de date ce compusa dintr-o parte de date si o parte de semnatura; partea de date contine text in clar, cel putin o cheie publica si un sir de identificare a entitatii. Partea de semnatura contine semnatura digitala, emisa de CA, asupra partii de date.
        sirul de identificare a entitatii trebuie sa fie un nume unic in sistem pe care CA il asociaza ueni entiati reale
        CA poseda propria pereche semnatura-cheie, ce poate fi facuta disponibila prin mijloace necriptografice
        • crearea certificateleor
          • tertul creeaza perechea de chei
            , include identitatea entitaii si cheia publica intr-un certificat; entitatea obtine cheia privata pe un canal sigur (autentic si privat)
          • entitatea isi creeaza prorpia pereche de chei
            si transfera cheia publica tertului pe un canal sigur
        • utilizarea si verificarea certificatelor
            entitatea B utilizeaza un certificat pentru a obtine cheia publica autentica a lui A
          1. (o singura data) obtine cheia publica autentica a CA
          2. obtine un sir care identifica in mod unic entitatea A
          3. obtine un certificat cu cheie publica care corespunde entiatii A si care este in acord cu sirul de identificare
            1. verifica perioada de validitate a certificatului folosind data si ora curente obtinute de la un ceas de incredere
            2. verifica validitatea cheii publice a CA
            3. verifica semnatura din certificatul lui A folosind cheia publica a CA
            4. verifica daca certificatul nu a fost revocat
          4. daca toate verificarile au succes accepta cheia publica din certificat ca fiind cheia autentica a lui A
        • certificate de atribute
          sunt similare certificatelor cu chei publice dar au rolul de a permite specificarea altor informatii decat cheile publice
    • sisteme bazate pe identitate
      • sistem criptografic bazat pe identitate
        Sistem asimetric in care informatia publica de identificare a unei entitati joaca rolul cheii publice si este utilizata de catre tert pentru a calcula cheia privata
      • autentificarea in sisteme bazate pe identitate
        Motivatia este de a crea un sistem criptografic care modeleaza un sistem de posta ideal in care numele unei persoane este suficient pentru a trimite mesaje care pot fi citite doar de catre destinatar si care sa permita verificarea unei semnaturi pe care numai aceea persoana o poate emite. In asemenea sisteme:
        • utilizatori nu schmiba chei
        • nu sunt necesare directoare publice
        • serviciile unui tert sunt necesare doar in faza initiala
    • chei publice certificate implicit
      • caracteristici
        • cheile publice ale entitatilor pot fi reconstruite din informatii publice, care astfel inlocuiesc certificate;e
        • informatia publica include
          • informatii publice asociate tertului
          • identitatea entitatii (nume, adresa, etc.)
          • informatii publice suplimentare despre entitate
        • integritatea unei chei publice reconstruite nu este verificabila direct dar o cheie publica poate fi reconstruita doar din informatiile autentice despre o entitate
  • tehnici pentru controlul utilizarii cheilor
    • separarea cheilor
        Informatia care s-ar putea asocia cheilor:
      • proprietarul cheii
      • perioada de validitate
      • identificatorul cheii (referinte noncriptografice)
      • utilizarea destinata
      • algoritmul
      • numele entitatilor asociate generarii cheii, inregistrarii si certificarii
      • suma de control a cheii
      Principiul separarii cheilor: cheile utilizate in scopuri diferite trebuie sa fie separate criptografic
    • tehnici pentru controlul utilizarii cheilor simetrice
      • marcaje de chei si variante de chei
        Marcajele de cheie asigura o metoda simpla pentru specificarea utilizarilor permise ale cheilor
        Marcajul de cheie este un vector de biti sau un camp structurat care acompaniaza cheia pe intreaga sa durata de viata, fiind criptat impreuna cu aceasta
          Tehnici de separare
        • derivarea unor chei variante dntr-o cheie de baza utilizand parametri si o functie care nu sunt secrete
        • compensarea cheii: o cheie de criptare K este modificata ca o functie de un contor care se incrementeaza la fiecare utilizare
      • notarizarea cheilor
        este un mecanism pentru distribuirea cheiolor autentificate
        este o tehnica destinata prtevenirii substitutiei cheii prin specificarea explicita a identitatilor entitatilor implicate
        o cheie este autentificata in functie de identitatile partilor, prin modificarea unei chei de criptareai ai recuperarea cheii protejate se poate face doar specificand corect identitatile; cheia este sigilata cu aceste identitati
        notarizarea simpla a cheii: un server de incredere (notar) sau una dintre parti cripteaza cheia de sesiune, S, utilizand cheia de criptare, K, EK ⊕ ( A || B); cheia de sesiune S este destinata uzului entitatilor A si B; entitatea care doreste sa recupereze S trebuie sa partajeze K si sa specifice A si B in ordinea corecta
      • vectori de control
        este o metoda pentru controlul utilizarii cheilor ce combina marcajele de cheie cu mecanismul de notarizare
        fiecarei chei S ii este asociat un vector de control C, un camp de date, ce defineste utilizarile autorizate ale cheii; criptarea este EK ⊕ C(S)
        decriptarea necesita specificarea corecta a vectorului de control C si cheii de criptare, K
  • gestionarea cheilor intre domenii
    • domeniu de securitate
      Un sistem care este sub controlul unei singure autoritati si in care entitatile din domeniu au incredere
      fiecare entitate
      • partajeaza un secret sau o parola - in cazul simetric
      • detine cheia publica autentica a CA- in cazul asimetric
      ceea ce permite comunicatia pe un canal sigur cu autoritatea sau cu o alta entitate
    • increderea intre doua domenii
      • entitatile A si B apartinand domeniilor DA si DB ce au autoritatile TA si TB doresc sa comunice; A si B fie
        • partajeaza o cheie simetrica
        • partajeaza chei publice de incredere
        ambele fiind posibile daca TA si TB au o relatie de incredere
        A si B delega pe TA si TB prin intermediul canalelor sigure (A , TA) , (TA , TB ) , ( B , TB ) in stabilirea relatiei de incredere ( A , B)
        daca TA si TB nu au o relatie de incredre directa, vor face apel la TC in care au ambiele incredere
      • metode
        • cheie simetrica de incredere
          • A cere lui TA sa obtina o cheie pe care sa o partajeze cu B
          • TA si TB stabilesc o cheie de termen scurt KAB
          • TA si TB distribuie KAB lui A si B
          • A comunica direct cu B utilizand KAB
        • cheie publica de incredere
          • A cere lui TA cheia publica a lui B
          • TA o obtine de la TB care garanteaza autenticitatea
          • TA transfera aceasta cheie lui A
          • A comunica direct cu B utilizand KAB
      • certificat incrucisat
        un certificat creat de CA1 prin care se certifica cheia publica a CA2
    • modele de incredere cu mai multe CA-uri
      Relatiile de incredere intre CA-uri, in sisteme cu cheie publica, pot fi organizate in mai multe moduri
      • lanturi de certificate si cai de certificare
        o entitate doreste sa obtina o cheie publica autentica, verificand un certicat emis de o alta CA decat CA in care are incredere
        calea de certificare este un drum in graful ce contine CA-urile, pentru care nodul initial este CA-ul in care entitatea are incredere si cel final este CA-ul care a emis certificatul pe care entitatea doreste sa-l verificae
        un lant de certificate este secventa de certificate emise de CA-urile dintr-o cale de certificare
      • domenii separate
        CA-urile trebuie sa aiba relatii de incredere pentru ca o entitate dintr-un domeniu sa poata comunica criptografic cu o entitate din alt domeniu; implicit CA-urile definesc separate de securitate care nu au relatii de incredere ai entitatile dintr-un domeniu nu pot verifica autenticitatea certificatelor emise in alt domeniu
        CA-ul este radacina unui arbore in care entitatile sunt frunze
      • model de incredere strict ierarhic
        CA-urile sunt nodurile neterminale ale unui arbore la care radacina este un CA si entiatile sunt frunze
        CA-ul parinte emite certificate pentru CA-urile copil
        pot fi organizate in paduri pentru care radacinile arborilor au relatii de incredere
      • certificate inverse si modelul de incredere bigraf
        topologia este aceeasi ca in modelul strict ierarhic dar un CA copil poate emite certificate pentru CA-ul parinte
        tipurile de certificate
        • certificat direct
          este certificatul emis de CA parinte pentru CA copil
        • certificat invers
          este certificatul emis de CA copil pentru CA parinte
    • distribuirea si revocarea certificatelor
      • distribuirea certificatelor
        • modelul extragere
          este cel implementat print-un director de certificate, entitatile extragand certificatul de care au nevoie
        • modelul promovare
          toate certificatele sunt trnsmise periodic tututror entitatilor
      • retragerea certificatelor
        • expirarea datei din certificat
        • notificare manuala
          entitatile sunt informate pe un canal out-of-band asupra cheilor revocate
        • fisier public cu chei revocate
          ce contine cheile revocate si care trebuie consultat de catre entiati inainte de a folosi o cheie
        • liste de revocare a certificatelor (CRL)
        • certificate de revocare

        • certificate cu cheie publica ce contin un flag si un timp de revocare si care se folosesc pentru anularea certificatului corespondent

Comments: Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?