Schody.  Grupa wstępna.  Materiały.  Drzwi.  Zamki.  Projekt

Schody. Grupa wstępna. Materiały. Drzwi. Zamki. Projekt

» Kryptografia klucza publicznego. prywatny klucz

Kryptografia klucza publicznego. prywatny klucz

W przeciwnym razie może zostać zakwestionowany i usunięty.
Możesz edytować ten artykuł, aby zawierał łącza do plików .
Ten znak jest ustawiony 21 lutego 2017 r.

prywatny klucz- tajny składnik pary kluczy używany w szyfrach asymetrycznych, czyli szyfrach, w których różne klucze są używane do transformacji w przód iw tył. W przeciwieństwie do klucza prywatnego drugi składnik pary kluczy, klucz publiczny, zwykle nie jest utrzymywany w tajemnicy, ale chroniony przed fałszerstwem i publikowany.

Przykłady użycia klucza prywatnego

Podpis elektroniczny

Klucz prywatny jest używany podczas obliczania elektronicznego podpisu cyfrowego (ES). Podczas weryfikacji ES używany jest klucz publiczny, który odpowiada kluczowi prywatnemu użytemu do obliczenia DS. Przy zastosowaniu silnego algorytmu podpisu cyfrowego nie jest możliwe sfałszowanie podpisu cyfrowego bez posiadania klucza prywatnego.

Szyfrowanie wiadomości

Podczas szyfrowania wiadomości używany jest klucz publiczny, który odpowiada kluczowi prywatnemu odbiorcy tekstu zaszyfrowanego. Podczas odszyfrowywania wiadomości odbiorca używa swojego klucza prywatnego. Jeśli używany jest silny szyfr asymetryczny, szyfr nie może być odczytany bez posiadania klucza prywatnego.

Nośniki kluczy

Zachowanie klucza prywatnego w tajemnicy jest jego najważniejszym warunkiem. bezpieczne użytkowanie. w najlepszy sposób przechowywanie elektronicznego klucza prywatnego polega na wykorzystaniu nośnika, z którego nie można skopiować klucza prywatnego. Nośniki te obejmują karty inteligentne i ich odpowiedniki oraz sprzętowy moduł zabezpieczeń (HSM).

Generowanie klucza prywatnego

Oprócz użycia silnych szyfrów i kluczowych mediów, ważny warunek bezpieczeństwo podczas korzystania z klucza prywatnego to jego nieprzewidywalność, którą osiąga się dzięki zastosowaniu wysokiej jakości generatorów liczb losowych. Z reguły karty inteligentne i moduły HSM zawierają czujniki wysokiej jakości losowe liczby oraz mechanizmy umożliwiające asymetryczne transformacje kryptograficzne. Z tego powodu klucz prywatny może być generowany i używany tylko wewnątrz karty inteligentnej lub modułu HSM.

Zalety i wady używania kart inteligentnych i modułów HSM do generowania i używania klucza prywatnego

Zaletą używania sprzętu, takiego jak karty inteligentne i moduły HSM do generowania i stosowania klucza prywatnego, jest to, że dopóki narzędzia te są bezpieczne i nie stosuje się zaawansowanego hakowania sprzętowego, klucz prywatny ma 100% gwarancję zachowania go w tajemnicy. Wadą jest to, że utrata lub uszkodzenie karty inteligentnej lub HSM prowadzi do bezpowrotnej utraty klucza prywatnego i niemożności odszyfrowania wiadomości zaszyfrowanych przy użyciu klucza publicznego odpowiadającego utraconemu kluczowi prywatnemu.

klucz publiczny- specjalny klucz kryptograficzny EDS powiązany z kluczem osobistym (zamkniętym, tajnym) przez niezawodny współczynnik matematyczny. Celem klucza publicznego jest weryfikacja elektronicznego podpisu cyfrowego (EDS). Może służyć do identyfikacji autora podpisu, a także oryginalności (autentyczności) dokumentu elektronicznego bez ustalania tajnego klucza.

Klucz publiczny: podmiot, miejsce w klasyfikacji

Certyfikat klucza weryfikacyjnego- dokument w formie elektronicznej lub forma papierowa, który jest dostarczany przez odpowiednie centrum i działa jako potwierdzenie klucza i jego własności przez właściciela (właściciela) certyfikatu.

Generowanie klucza odbywa się w taki sposób, że zostają zapisane wszystkie dane o właścicielu. Otrzymany w ten sposób plik nazywany jest certyfikatem klucza podpisu. Opiera się na kluczu publicznym, a także danych o właścicielu podpis elektroniczny i centrum, które dostarczyło klucz.

W rzeczywistości certyfikat klucza „podpisu” jest paszportem elektronicznym strony uczestniczącej w obrocie. Dzięki niemu możesz rozpoznać użytkownika i dokonać bezpiecznej wymiany dokumentów elektronicznych. Bez ważnych certyfikatów proces wymiany jest zabroniony.

Wydanie certyfikatu klucza do podpisu udzielane jest na rok. Pod koniec semestru przestaje działać, a wymiana papierów elektronicznych staje się niemożliwa. Aby kontynuować pracę z dokumentacją elektroniczną, uczestnicy muszą odnowić certyfikat. W przypadku zmiany danych posiadacza klucza (na przykład w przypadku zmiany liderów organizacji lub zmiany nazwy), a także w przypadku naruszenia klucza prywatnego, stary certyfikat musi zostać unieważniony i wydany nowy certyfikat.

Kwalifikowany certyfikat klucza dla EDS- jeden z rodzajów certyfikatów, których wydawanie przeprowadza autoryzowane centrum certyfikacji Agencja rządowa lub upoważnionego przedstawiciela CA.

Prywatność i integralność dokumenty elektroniczne- Kluczowe zadania w zarządzaniu dokumentami. Jednocześnie każdy podpis cyfrowy posiada dwa rodzaje kluczy – publiczny i prywatny. Samo urządzenie to indywidualny ciąg znaków, który pozwala z maksymalną niezawodnością rozpoznać właściciela klucza i jego autentyczność.

Klucz prywatny jest w posiadaniu właściciela i jest znany tylko jemu. Natomiast klucz publiczny jest dostępny dla każdego, kto bierze w nim udział wymiana elektroniczna. Rodzaje kluczy różnią się rodzajem szyfrowania:

Klucz prywatny wykorzystuje szyfrowanie asymetryczne i symetryczne;
- na wolnym powietrzu - asymetryczny.

Każdy rodzaj szyfrowania ma swoje własne cechy:

1. Szyfrowanie symetryczne. Uczestnik obiegu elektronicznego posiada klucz oraz algorytm (schemat) jego zastosowania. Ten sam klucz może być użyty do odszyfrowania lub zaszyfrowania danych. Głównym zadaniem jest zapewnienie bezpieczeństwa klucza (na przykład przy przekazywaniu go pomiędzy uczestnikami). Dlatego przy tego rodzaju szyfrowaniu sam klucz jest prywatny.

2. Szyfrowanie asymetryczne. Dostępne są dwa rodzaje kluczy. Jeden jest otwarty (przeznaczony do szyfrowania danych), drugi jest zamknięty (potrzebny do ich odszyfrowania). Osobliwością klucza publicznego jest to, że może być przesyłany bez żadnego zagrożenia dla drugiego typu klucza. W przyszłości klucz prywatny będzie używany do tworzenia EDS.

klucze publiczne- Infrastruktura klucza publicznego. W rzeczywistości PKI to grupa materialnych, technicznych i innych środków wspierających różne zadania kryptograficzne.



Infrastruktura klucza publicznego opiera się na kilku zasadach:

Tylko właściciel zna klucz prywatny;
- tworzenie certyfikatu jest zadaniem urzędu certyfikacji;
- nie ma zaufania między stronami transakcji. Wszyscy ufają tylko urzędowi certyfikacji;
- CA zaprzecza lub potwierdza, że ​​klucz publiczny należy do określonej strony, która jest właścicielem klucza prywatnego.

Klucz publiczny: cechy tworzenia i odbioru

Klucz publiczny jest częścią silnego certyfikatu. Jego zadaniem jest potwierdzenie, że klucz EDS należy do konkretnej osoby. Certyfikat zawiera następujące dane :

Niepowtarzalny numer rejestracyjny;
- dane osobowe posiadacza (dane, imię i nazwisko);
- Okres ważności rozszerzonego certyfikatu.



Określ klucz prywatny używając tylko klucz publiczny, niemożliwe. Zdobycie klucza zaczyna się od telefonu do CA i wyjaśnienia wszystkiego niezbędne procedury. Jednocześnie proces generowania i rejestracji klucza odbywa się w kilku etapach:

1. Zapoznanie się z niezbędnymi dokumentami na terenie ośrodka wydawania kluczy. To jest o o grupach dokumentów - regulaminach, wniosku o przystąpienie, umowie o świadczenie usług itp.

2. Przygotowanie niezbędnych dokumentów (prywatnych i osoby prawne mogą się różnić). W pierwszym przypadku należy złożyć:

Wniosek o rejestrację w celu późniejszego otrzymania certyfikatu (wykorzystywana jest próbka);
- zgodę na wykorzystanie danych osobowych przez sygnatariusza;
- kopię wyciągu z Jednolitego Państwowego Rejestru Podmiotów Prawnych lub PE;
- kod identyfikacyjny i paszport (liczba kopii).

Warto zdecydować, ile kluczy jest potrzebnych. Ta informacja jest zawarta we wniosku.
Cały proces przestudiowania informacji, przygotowania niezbędnych kopii, wydrukowania formularzy i ich wypełnienia to kwestia 60 minut.

3. Proces rejestracji w Centrum. Z pakietem dokumentów możesz udać się do oddziału centrum rejestracji. Aby nagrać klucz, musisz mieć ze sobą dyski DVD lub pendrive'y. Ilość nośników zależy bezpośrednio od ilości zamawianych kluczy. Po sprawdzeniu kompletności i poprawności dokumentów można przystąpić do dokonania wpisu klucza.

4. Utworzenie certyfikatu o zwiększonym bezpieczeństwie. Procedura ta jest wykonywana przez posiadacza klucza w specjalnej budce. Na początek za pomocą czujnika i generowania liczb losowych tworzony jest klucz, po czym jest zapisywany na przenośnym nośniku. Po zakończeniu procedury na oficjalnej stronie internetowej Centrum wyświetlana jest odpowiednia informacja o utworzeniu certyfikatu.

Ostatnim krokiem jest wysłanie raportów do urzędu skarbowego.

klucza publicznego, zauważył, że wymóg ten zaprzecza całej istocie kryptografii, a mianowicie zdolności do zachowania powszechnej tajemnicy w komunikacji.

Drugim zadaniem jest konieczność stworzenia takich mechanizmów, za pomocą których nie byłoby możliwości zastąpienia któregokolwiek z uczestników, tj. potrzebować podpis cyfrowy. W przypadku korzystania z komunikacji w szerokim zakresie celów, takich jak cele komercyjne i prywatne, wiadomości i dokumenty elektroniczne muszą mieć odpowiednik podpisu zawartego w dokumentach papierowych. Konieczne jest stworzenie metody, dzięki której wszyscy uczestnicy będą przekonani, że e-mail został wysłany przez konkretnego uczestnika. Jest to silniejsze wymaganie niż uwierzytelnianie.

Diffie i Hellman osiągnęli znaczące wyniki, proponując sposób rozwiązania obu problemów, który radykalnie różni się od wszystkich poprzednich podejść do szyfrowania.

Przyjrzyjmy się najpierw wspólnym cechom. algorytmy szyfrowania z kluczem publicznym i wymaganiami dla tych algorytmów. Zdefiniujmy wymagania, jakie powinien spełniać algorytm, który używa jednego klucza do szyfrowania, a drugiego do deszyfrowania, a wyznaczenie klucza deszyfrującego jest obliczeniowo niemożliwe, jeśli znany jest tylko algorytm szyfrowania i klucz szyfrujący.

Ponadto niektóre algorytmy, takie jak RSA, mają następującą cechę: każdy z dwóch kluczy może być używany zarówno do szyfrowania, jak i deszyfrowania.

Najpierw rozważymy algorytmy, które mają obie właściwości, a następnie przejdziemy do algorytmów klucza publicznego, które nie mają drugiej właściwości.

Podczas opisywania szyfrowanie symetryczne i szyfrowania kluczem publicznym będziemy używać następującej terminologii. klucz używany w szyfrowanie symetryczne, zadzwonimy sekretny klucz. Zostaną wywołane dwa klucze używane w szyfrowaniu kluczem publicznym klucz publiczny I prywatny klucz. Klucz prywatny jest utrzymywany w tajemnicy, ale będziemy go nazywać kluczem prywatnym, a nie tajnym, aby uniknąć pomyłki z używanym kluczem szyfrowanie symetryczne. Klucz prywatny będzie oznaczony jako KR, klucz publiczny - KU.

Założymy, że wszyscy uczestnicy mają dostęp do swoich kluczy publicznych, a klucze prywatne są tworzone lokalnie przez każdego uczestnika i dlatego nie powinny być rozpowszechniane.

W każdej chwili uczestnik może zmienić swój klucz prywatny i opublikować klucz publiczny składający się na parę, zastępując nim stary klucz publiczny.

Diffie i Hellman opisują wymagania algorytm szyfrowania z kluczem publicznym.

  1. Obliczeniowo łatwo jest utworzyć parę (klucz publiczny KU, klucz prywatny KR).
  2. Biorąc pod uwagę klucz publiczny i niezaszyfrowaną wiadomość M, jest łatwo obliczeniowo utworzyć odpowiednią zaszyfrowaną wiadomość:
  3. Odszyfrowanie wiadomości za pomocą klucza prywatnego jest łatwe obliczeniowo:

    M = re KR [C] = re KR ]

  4. Jest obliczeniowo niemożliwe, znając klucz publiczny KU, wyznaczenie klucza prywatnego KR.
  5. Jest obliczeniowo niemożliwe, znając klucz publiczny KU i zaszyfrowaną wiadomość C, aby odzyskać pierwotną wiadomość M.

    Można dodać szósty wymóg, chociaż nie dotyczy on wszystkich algorytmów klucza publicznego:

  6. Funkcje szyfrowania i deszyfrowania można zastosować w dowolnej kolejności:

    M = E ku]

Są to wystarczająco mocne wymagania, które wprowadzają pojęcie . Funkcja jednokierunkowa nazywa się taką funkcję, w której każdy argument ma unikalną wartość odwrotną, podczas gdy łatwo jest obliczyć samą funkcję, ale trudno obliczyć funkcję odwrotną.

Zwykle „łatwy” oznacza, że ​​problem można rozwiązać w czasie wielomianowym długości wejścia. Zatem, jeśli długość wejścia wynosi n bitów, to czas obliczania funkcji jest proporcjonalny do n a , gdzie a jest stałą stałą. Zatem mówi się, że algorytm należy do klasy algorytmów wielomianowych P. Termin „twardy” oznacza bardziej skomplikowaną koncepcję. W ogólnym przypadku przyjmiemy, że problemu nie da się rozwiązać, jeśli wysiłek jego rozwiązania jest większy niż czas wielomianu wartości wejściowej. Na przykład, jeśli długość danych wejściowych wynosi n bitów, a czas oceny funkcji jest proporcjonalny do 2 n, to jest to zadanie obliczeniowo niemożliwe. Niestety, trudno jest określić, czy dany algorytm wykazuje taką złożoność. Co więcej, tradycyjne pojęcia złożoności obliczeniowej koncentrują się na złożoności algorytmu w najgorszym lub średnim przypadku. Jest to niedopuszczalne dla kryptografii, gdzie wymagane jest, aby funkcja nie mogła być odwrócona dla wszystkich lub prawie wszystkich wartości wejść.

Powrót do definicji funkcja jednostronna z szyberdachem, który np funkcja jednokierunkowa, jest łatwe do obliczenia w jednym kierunku i trudne do obliczenia w przeciwnym kierunku, dopóki niektóre Dodatkowe informacje. Dzięki tym dodatkowym informacjom inwersję można obliczyć w czasie wielomianowym. Zatem, funkcja jednokierunkowa z szyberdachem należącym do rodziny funkcje jednokierunkowe f k takie

Widzimy, że opracowanie określonego algorytmu klucza publicznego zależy od odkrycia odpowiadającego mu algorytmu funkcja jednostronna z szyberdachem.

Kryptoanaliza algorytmów klucza publicznego

Jak w przypadku szyfrowanie symetryczne, algorytm szyfrowania z kluczem publicznym jest podatny na atak frontalny. Środek zaradczy jest standardowy: użyj dużych klawiszy.

Kryptosystem klucza publicznego wykorzystuje pewne nieodwracalne funkcje matematyczne. Złożoność obliczania takich funkcji nie jest liniowa pod względem liczby bitów klucza, ale rośnie szybciej niż klucz. Zatem rozmiar klucza musi być wystarczająco duży, aby atak frontalny był niepraktyczny, i wystarczająco mały, aby umożliwić praktyczne szyfrowanie. W praktyce rozmiar klucza jest taki, że atak siłowy jest niepraktyczny, ale w rezultacie szybkość szyfrowania jest wystarczająco niska, aby algorytm mógł być użyty w wspólne cele. Dlatego szyfrowanie kluczem publicznym jest obecnie ograniczone głównie do aplikacji do zarządzania kluczami i podpisów, które wymagają zaszyfrowania małego bloku danych.

Inną formą ataku jest znalezienie sposobu na obliczenie klucza prywatnego na podstawie klucza publicznego. Nie ma sposobu, aby matematycznie udowodnić, że dana forma ataku jest wykluczona dla konkretnego algorytmu klucza publicznego. Dlatego każdy algorytm, w tym szeroko stosowany algorytm RSA, jest podejrzany.

Wreszcie, istnieje forma ataku, która jest specyficzna dla sposobu korzystania z systemów klucza publicznego. To atak na prawdopodobną wiadomość. Załóżmy na przykład, że wysyłana wiadomość składa się wyłącznie z 56-bitowego klucza sesyjnego dla algorytmu szyfrowania symetrycznego. Przeciwnik może zaszyfrować wszystkie możliwe klucze za pomocą klucza publicznego i może odszyfrować dowolną wiadomość pasującą do przesyłanego zaszyfrowanego tekstu. W ten sposób, niezależnie od rozmiaru klucza schematu klucza publicznego, atak zostaje zredukowany do ataku typu brute-force na 56-bitowy klucz symetryczny. Ochrona przed takim atakiem polega na dodaniu pewnej liczby losowych bitów do prostych wiadomości.

Podstawowe zastosowania algorytmów klucza publicznego

Główne zastosowania algorytmów klucza publicznego to szyfrowanie/odszyfrowywanie, tworzenie i weryfikacja podpisów oraz wymiana kluczy.

Szyfrowanie z kluczem publicznym składa się z następujących kroków:


Ryż. 7.1.

  1. Użytkownik B tworzy parę kluczy KU b i KR b używanych do szyfrowania i deszyfrowania przesyłanych wiadomości.
  2. Użytkownik B udostępnia swój klucz szyfrujący w jakiś bezpieczny sposób, tj. klucz publiczny KU b . Sparowany klucz prywatny KR b jest utrzymywany w tajemnicy.
  3. Jeśli A chce wysłać wiadomość do B, szyfruje wiadomość za pomocą klucza publicznego B KU b .
  4. Kiedy B odbiera wiadomość, odszyfrowuje ją za pomocą swojego klucza prywatnego KR b . Nikt inny nie może odszyfrować wiadomości, ponieważ tylko B zna ten klucz prywatny.

Jeśli użytkownik (system końcowy) bezpiecznie przechowuje swój klucz prywatny, nikt nie będzie mógł szpiegować przesyłanych wiadomości.

Tworzenie i weryfikacja podpisu składa się z następujących kroków:



Ryż. 7.2.
  1. Użytkownik A generuje parę kluczy KR A i KU A , służących do tworzenia i weryfikacji podpisu przesyłanych komunikatów.
  2. Użytkownik A udostępnia swój klucz weryfikacyjny w jakiś bezpieczny sposób, tj.

Najnowszym podejściem do szyfrowania danych komputerowych jest szyfrowanie kluczem publiczno-prywatnym, w którym klucz do odszyfrowania wiadomości jest zawarty w samej wiadomości.

Głównym problemem związanym z szyfrowaniem zawsze było przekazanie klucza osobie otrzymującej zaszyfrowane wiadomości. Systemy szyfrowania kluczem publicznym i prywatnym pojawiły się w latach 70. jako systemy zapewniające transmisję zaszyfrowanych wiadomości, do odszyfrowania których możliwe było użycie klucza innego niż klucz szyfrujący. W ten sposób takie systemy zasadniczo różnią się od starych systemów, w których odbiorca i nadawca wiadomości muszą mieć ten sam klucz.

Komputerowy system szyfrowania kluczem publicznym wykorzystuje program, który szyfruje dane przy użyciu klucza publicznego odbiorcy. Klucz publiczny to udostępniony przez odbiorcę szyfr, który służy jako instrukcja (przewodnik) szyfrowania wiadomości. Klucz publiczny jest generowany przez program szyfrujący, a każdy użytkownik ma swój własny.

Po zaszyfrowaniu wiadomości tylko odbiorca może ją odszyfrować przy użyciu swojego klucza prywatnego. Klucz prywatny jest tworzony przez samego użytkownika podczas instalacji programu i przekazywany do niego jako informacja wstępna. W tym samym czasie generowany jest klucz publiczny.

Obaj korespondenci wymagają programu szyfrującego/deszyfrującego. Jeśli użytkownik A chce wysłać zaszyfrowaną wiadomość do użytkownika W, następnie użytkownik A musi najpierw uzyskać klucz publiczny użytkownika W. Klucz publiczny jest dostarczany przez serwer kluczy publicznych. Użytkownik W umieszcza swoje klucze publiczne (lub klucze) na tym serwerze - tyle, ile potrzeba. Użytkownik A bierze ten klucz, a następnie „wstawia” go do programu szyfrującego wiadomości i przygotowuje wiadomość, która następnie zostanie wysłana do użytkownika W. Aby odszyfrować wiadomości, użytkownik W używa swojego klucza prywatnego. Program szyfrujący odczytuje klucz publiczny, który mówi, w jaki sposób wiadomość została zaszyfrowana, dzięki czemu można ją odszyfrować za pomocą klucza prywatnego. W takim przypadku klucza publicznego nie można użyć do odszyfrowania wiadomości. Oznacza to, że tylko odbiorca wiadomości będzie mógł przeczytać wiadomość wysłaną przez użytkownika. A.

Tak więc klucz prywatny w połączeniu z programem szyfrującym służy do odszyfrowania wiadomości zaszyfrowanej kluczem publicznym użytkownika i tym samym programem szyfrującym. Nie jest możliwe odszyfrowanie zaszyfrowanego pliku bez znajomości klucza prywatnego.

Ta metoda jest przydatna dla tych, którzy muszą odbierać przesyłane zaszyfrowane wiadomości e-mail od wielu korespondentów. Wszyscy mogą używać programu szyfrującego i klucza publicznego do szyfrowania wiadomości, ale tylko odbiorca może je odszyfrować za pomocą klucza prywatnego.

Ten proces jest schematycznie pokazany na rysunku:

Szyfrowanie i deszyfrowanie wiadomości przy użyciu odpowiednio klucza publicznego i prywatnego

Oprócz szyfrowania wiadomości, systemy kluczy publicznych mogą być wykorzystywane do uwierzytelniania wiadomości lub innych danych pochodzących od odbiorców.

Jak już wspomniano, klucz publiczny można umieścić na dowolnej liczbie odpowiednich serwerów w sieci. Witryny te przechowują klucze publiczne za darmo i są zorganizowane jako baza danych. Aby wyszukać takie serwery, wystarczy wejść do programu wyszukiwania fraza kluczowa serwery kluczy publicznych(serwery kluczy publicznych).