Crypto - este

Crypto (furnizor de servicii Criptografie, CSP) - este un modul independent, care vă permite de a efectua operațiuni criptografice pe sistemele de operare Microsoft. Controlul care are loc cu ajutorul funcțiilor CryptoAPI. Pur și simplu pune, este un intermediar între sistemul de operare pe care le pot gestiona utilizând funcțiile CryptoAPI standard. și executarea operațiunilor criptografice (acest lucru poate fi fie un program sau sistem hardware).

criptografic Arhitectura

Orice criptografic trebuie să exporte un set de funcții obligatorii care formează o interfață CryptoSPI software de sistem, în care fiecare dintre aceste funcții corespunde unei funcții CryptoAPI. De asemenea, cripto ar trebui să asigure:

  • punerea în aplicare a unui CSP interfață standard;
  • lucra cu cheile de criptare destinate pentru funcționarea algoritmilor specifice CSP;
  • imposibilitatea intervenției terților în schema algoritmului.


Aplicațiile nu funcționează în mod direct cu criptă. In schimb, ei numesc funcții din bibliotecile CryptoAPI Advapi32.dll și Crypt32.dll. Sistemul de operare filtreaza apelurile către aceste funcții, și solicită CryptoSPI funcția corespunzătoare, care lucrează direct cu criptă.


Minim CSP - un DLL. De obicei, biblioteca este stocat în folderul \ WINDOWS \ System32 \. Este obligatoriu pentru a controla integritatea DLL.

Pe lângă funcțiile CryptoAPI standard. cripto sprijină, de obicei, o serie de funcții de proprietate. În cazul în care funcțiile proprii nu sunt puse în aplicare, DLL funcționează, în esență, ca un strat intermediar între sistemul de operare și operațiunile criptografice executate.

Obiecte CSP

Unul dintre obiectivele principale este containerul cheie. Recipientul are un nume, este creat (sau solicitată în cazul în care a fost deja creată) funcția CryptAcquireContext (...). Containerul poate fi nu mai mult de o perechi de chei de semnătură, o pereche de chei și de schimb de chei simetrice. În cazul în care mai multe sprijinit algoritmi de criptare simetrică, tastele simetrice pot fi mai multe, fiecare algoritm cheie.

Perechile de chei și chei simetrice pot fi numai în container. Numai perechea de chei publică poate fi în afara containerului.

Închise perechi de chei (chei private) exportate în formă criptată. Unii cripto fundamental nu vă permit să exportați cheia privată, chiar dacă criptate. chei simetrice pentru export, de asemenea, în mod necesar criptat cheia publică a destinatarului, sau cheie potrivită. Pentru a calcula funcția hash creează hash obiect. a crea containerul nu are nevoie pentru a crea obiectul hash.

tipuri de cripto

Algoritmi pentru schimbul de chei