Technologia podpisu elektronicznego

Bezpieczne posługiwanie się podpisem elektronicznym wymaga świadomości paru zasad. Nie wymaga za to znajomości ani zaawansowanej matematyki, ani wyrafinowanych technik informatycznych. Zgodnie z tradycją literatury kryptograficznej, w artykule omówię, jak Alicja powinna posługiwać się podpisem elektronicznym.

Publikacja: 28.03.2003 15:44

Jeśli Alicja pragnie utworzyć podpis elektroniczny, pierwszym krokiem jest utworzenie "skrótu" podpisywanego tekstu. Skróty mają zadziwiające własności. Jakkolwiek ich długość jest ustalona (zwykle 160 bitów), to znalezienie dwóch tekstów o tym samym skrócie jest praktycznie niemożliwe. Tak samo znalezienie tekstu odpowiadającego określonemu "skrótowi" jest niewykonalne. Skróty te pełnią zatem rolę swoistych "elektronicznych odcisków palców" identyfikujących wyjściowe teksty.

Klucze publiczne i prywatne

Podpis własnoręczny oparty jest na niepowtarzalnym ukształtowaniu funkcji mózgu - u każdej osoby wyuczony sposób składania podpisu jest nieco inny. Aby sprawdzać podpisy własnoręczne, potrzebne są inne podpisy tej samej osoby, no i oczywiście odpowiednie umiejętności porównywania podpisów (za czym kryją się niezbadane dotąd zdolności analityczne ludzkiego mózgu). Podpis elektroniczny ma również dwa komponenty: klucz prywatny ("dane służące do składania podpisu elektronicznego" w języku Ustawy o podpisie elektronicznym), będący odpowiednikiem unikatowego dla danej osoby sposobu podpisywania się, oraz klucz publiczny (tzw. "dane służące do weryfikacji podpisu elektronicznego") pełniący rolę "karty podpisów".

Tworzenie podpisu

Składanie podpisu elektronicznego pod tekstem T nie polega na dołączaniu klucza prywatnego do T. Jest to dużo bardziej wyrafinowana procedura. Matematycznie rzecz biorąc, podpis Alicji pod T powstaje ze skrótu tekstu T i klucza prywatnego Alicji za pomocą pewnego (znanego) przekształcenia matematycznego. Zatem podpis można złożyć, jeśli posiada się zarówno tekst T, jak i klucz prywatny. Przekształcenie matematyczne, o którym mowa, musi być tak dobrane, by bez klucza prywatnego złożenie podpisu było praktycznie niemożliwe.

Weryfikacja podpisu elektronicznego

Weryfikacja podpisu nie może oczywiście polegać na porównaniu podpisu z ustalonym wzorcem, bowiem podpis elektroniczny zależy od podpisywanego tekstu. Matematycznie rzecz biorąc, proces weryfikacji podpisu Alicji pod tekstem T ma postać testu, w którym wykorzystuje się skrót tekstu T, klucz publiczny Alicji i wreszcie sam podpis. Test musi być tak dobrany matematycznie, by wynik pozytywny był otrzymywany jedynie dla autentycznego podpisu.

Wiarygodność testu

Istniejące algorytmy podpisu elektronicznego mają kilka nadzwyczaj użytecznych własności:

- Podpis s dla tekstu T może być zapisany w zupełnie innym miejscu niż T. Dopiero w momencie weryfikacji niezbędne jest zestawienie skrótu T oraz s.

- Zasadniczo do weryfikacji podpisu nie jest potrzebny sam tekst, lecz jego "skrót". Zatem weryfikować podpis może osoba nie znająca podpisanej treści. Znakomicie ułatwia to ochronę danych.

- Jakakolwiek zmiana w T powoduje, że wynik weryfikacji okaże się negatywny. Tym samym nawet dodanie pojedynczej spacji, przecinka itp. daje się wykryć.

Przechowywanie klucza prywatnego

Każdy, kto zdobędzie klucz prywatny Alicji, może w doskonały sposób fałszować jej podpis. Dlatego kluczy prywatnych nie należy przechowywać na dyskietce, na CD ani na dysku domowego komputera. Stamtąd mógłby być skopiowany przez niepowołane osoby (lub system operacyjny). Klucz prywatny powinien istnieć wyłącznie wewnątrz specjalnie chronionego urządzenia (tzw. bezpieczne urządzenie do składania podpisu elektronicznego), z którego nie jest możliwy odczyt danych. Przykładem takich urządzeń są odpowiednie karty mikroprocesorowe: nie tylko przechowują prywatne klucze, ale wykonują z ich pomocą operacje tworzenia podpisu. Dzięki temu klucze prywatne nie muszą opuszczać karty.Certyfikaty

Aby sprawdzić podpis elektroniczny danej osoby, musimy znać jej klucz publiczny. Jeśli klucz ten dostaniemy osobiście lub zostanie nam dostarczony na piśmie (jako ciąg znaków), to nie ma problemu. W przeciwnym wypadku pomocne stają się certyfikaty klucza publicznego.

Zawartość certyfikatu

Certyfikat klucza publicznego to nic innego, jak zaświadczenie świadka, jakim jest podmiot wydający certyfikaty. Mówi ono, że wskazany klucz publiczny odpowiada kluczowi prywatnemu określonej osoby.

Tak zwany kwalifikowany certyfikat zawiera też obligatoryjnie inne dane, na przykład dane wystawcy certyfikatu i numer seryjny. Bardzo istotnymi elementami są ograniczenia użycia certyfikatu i jego termin ważności. Dla uwiarygodnienia swej zawartości certyfikat taki jest opatrzony podpisem podmiotu, który go wystawił. W Polsce to, czy dany certyfikat jest kwalifikowany, zależy też od tego, czy wystawiający go podmiot został wpisany na Listę kwalifikowanych podmiotów, świadczących usługi certyfikacyjne.

Ze względu na potrzebę współdziałania różnych programów i urządzeń, certyfikaty tworzone są zgodnie z międzynarodowymi standardami.

Weryfikacja certyfikatów

Aby sprawdzić podpis Alicji, trzeba użyć jej certyfikatu. Ale skąd wiemy, że przedstawiony certyfikat jest autentyczny? Aby sprawdzić podpis, którym jest opatrzony certyfikat, musimy znać klucz publiczny wystawcy certyfikatów. Jeśli Alicja otrzymała go w momencie otrzymywania własnego certyfikatu, to wystarczy, by zainstalowała go na własnym komputerze. Jeśli jednak Alicja uzyskała certyfikat u innego usługodawcy, to skorzystać można z tak zwanych certyfikatów skrośnych, jakie sobie nawzajem wydają podmioty.

Dosyć szczególna architektura została zaprojektowana w Polsce. W imieniu ministra właściwego do spraw gospodarki, podmioty wystawiające kwalifikowane certyfikaty otrzymują certyfikaty od spółki Centrast (i odwrotnie). Certyfikaty te nazywane są w polskim prawie zaświadczeniami certyfikacyjnymi. Po zainstalowaniu kilku zaświadczeń certyfikacyjnych jesteśmy w stanie weryfikować wszelkie kwalifikowane certyfikaty wydane w Polsce. Oczywiście, nie umożliwia to weryfikacji certyfikatów wydanych za granicą. Pamiętajmy, że jeśli aplikacja weryfikująca podpis Alicji nie może zweryfikować odpowiednich certyfikatów, to informuje nas, że badany podpis Alicji nie jest wiarygodny. Komunikat taki może okazać się zabawny, gdy Alicja jest skądinąd znaną i godną zaufania osobą.

Unieważnianie certyfikatu

Może się zdarzyć, że zgubimy kartę zawierającą nasz klucz prywatny, że przypadkowo zdradzimy nasz PIN, itp. Wtedy mamy obowiązek niezwłocznie unieważnić certyfikat, za pomocą którego weryfikuje się podpisy złożone za pomocą wyżej wymienionej karty. Wystarczy złożyć odpowiednie żądanie - wystawca certyfikatu ma obowiązek wykonać odpowiednie czynności. Nie musimy tego motywować, zostanie jedynie sprawdzona nasza tożsamość.

Zawieszanie certyfikatu

Unieważnienia certyfikatu nie można cofnąć. Dlatego w przypadku podejrzenia zagrożenia bezpieczeństwa (np. po wyjechaniu na urlop zorientowaliśmy się, że kartę prawdopodobnie zostawiliśmy w pociągu), należy powiadomić wystawcę certyfikatu. Ten, w zależności od okoliczności może zawiesić certyfikat (na co najwyżej 7 dni). Gdy podejrzenia się potwierdzają, to wystawca unieważnia certyfikat, w przeciwnym wypadku przywraca go do normalnego stosowania.

Sprawdzanie ważności certyfikatów

Mając podpis Alicji i jej certyfikat musimy jeszcze się upewnić, że certyfikat ten nie został unieważniony lub zawieszony. Ponieważ podmioty wystawiające certyfikaty są obowiązane do publikowania list unieważnionych i zawieszonych certyfikatów, nasza aplikacja powinna sprawdzić, czy certyfikat Alicji nie znalazł się na takiej liście. Jeśli dysponujemy połączeniem z Internetem, możemy to zrobić automatycznie. W podobny sposób należy sprawdzać status zaświadczeń certyfikacyjnych.Prawne skutki podpisu

Podpis elektroniczny może być elementem tzw. oświadczenia woli, zdefiniowanego w Kodeksie Cywilnym. Ale ma to taką samą rangę prawną, co - na przykład - oświadczenie ustne. W polskiej praktyce zdecydowanie większą wagę mają oświadczenia woli złożone na piśmie. Dokument elektroniczny opatrzony podpisem elektronicznym może mieć rangę prawną dokumentu papierowego z własnoręcznym podpisem, ale nie jest to automatyczne i wymaga spełnienia kilku warunków:

- Jest to podpis elektroniczny z listy zawartej w rozporządzeniu Rady Ministrów (wyłącznie RSA, DSA, ECDSA, ECGDSA wraz z SHA-1, RIPEMD-160).

- Podpis można zweryfikować za pomocą klucza publicznego zawartego w kwalifikowanym certyfikacie.

- Podpis został złożony w okresie ważności wspomnianego wyżej certyfikatu.

- Podpis wskazuje na certyfikat, o którym mowa w punkcie 2.

Powyższe warunki zależą od podpisującego. Dochodzi jeszcze warunek zależny od osoby weryfikującej:

- W momencie weryfikacji podpisu certyfikat, o którym mowa w punktach 2. i 4., jest ważny.

Zasady bezpieczeństwa.

Generowanie klucza

Jeśli klucz prywatny generuje Alicji usługodawca, to Alicja musi ufać, że nie zachował on sobie kopii klucza do fałszowania jej podpisów. Jeśli w związku z tym generuje je sama, to musi posiadać odpowiedni sprzęt gwarantujący generowanie odpowiednio losowych kluczy, tak aby nikt nie mógł wyprowadzić tego klucza.

Rozwiązaniem tego dylematu jest tworzenie kluczy prywatnych przez usługodawcę, ale pod specjalnym nadzorem, w specjalnych urządzeniach, które umożliwiają wyprowadzenie utworzonego klucza tylko raz, na tylko jedną kartę.

Niebezpieczeństwo "złamania algorytmów"

Co pewien czas obiegają prasę wiadomości o "złamaniu podpisów elektronicznych". Dotychczas wszystkie te informacje były, delikatnie rzecz biorąc, przesadzone. Historia pokazuje, że to raczej ludzkie błędy i wadliwy sprzęt lub oprogramowanie mogą być źródłem kłopotów. Wreszcie, o poważnych problemach zawsze dowiemy się, ponieważ w takiej sytuacji wystawca certyfikatu powinien unieważnić certyfikat i powiadomić o tym jego właściciela.

Zasady ochrony karty

Prywatny klucz przechowywany na karcie bardzo trudno z niej "wykraść". Ale uruchomienie karty jest możliwe dzięki znajomości PIN-u. Dlatego kartę z kluczem oraz PIN należy przechowywać jeszcze ostrożniej niż kartę bankomatową (w przypadku karty bankomatowej debet jest ograniczony do dziennego limitu, dla podpisów elektronicznych nie ma "dziennego limitu" konsekwencji składania podpisów). Karta jest dosyć odporna na uszkodzenia. Ale "nienormalne" traktowanie jej (gięcie, przykładanie prądu, poddawanie wysokiej temperaturze i temu podobne) może ją zniszczyć. Pamiętajmy, że zawartego w niej klucza prywatnego nie da się odtworzyć.

Upłynięcie terminu ważności certyfikatu

Dokument podpisany elektronicznie ma taką samą wagę prawną jak dokument papierowy. Nie dłużej jednak od ważności certyfikatu, który został "wskazany w podpisie". Lepiej więc upewnić się, czy dokument ten nie będzie potrzebny po upływie terminu ważności certyfikatu.

Unieważnienie certyfikatu

Certyfikat może zostać w każdej chwili unieważniony na żądanie jego posiadacza bez podawania przyczyn. Tym samym Alicja może spowodować, by podpisane przez nią dokumenty elektroniczne przestały mieć rangę dokumentów papierowych. Jeśli jakiś z tych dokumentów to aneks do umowy, w której zmian można dokonywać jedynie "w formie pisemnej pod rygorem nieważności", to Alicja może w ten sposób go unieważnić! Pamiętajmy o tym.

Karty z niewiadomego źródła

Karta mikroprocesorowa może się okazać nie tak bezpieczna, jak sugerował jej sprzedawca. Jednak gdy jej używamy, to ponosimy konsekwencje ewentualnych podstępów producenta. Jeśli klucz z karty "wycieknie" i nawet zostanie udowodnione, że nie ma w tym naszej winy, i tak odpowiadamy za wszelkie podpisy utworzone za pomocą tych kluczy. DlatePolskie podpisy elektroniczne za granicą

Podpis, który w Polsce nie ma lub utracił moc nadającą dokumentowi rangę prawną formy pisemnej, może mieć dużo większe prawne znaczenie w Unii Europejskiej. Jeszcze bardziej trzeba zwracać uwagę, co podpisujemy elektronicznie w USA - tam odpowiadać możemy nie tylko za "bezpieczne podpisy elektroniczne", ale i te "zwykłe podpisy elektroniczne". Aby uniknąć kłopotów lepiej być bardzo powściągliwym w składaniu podpisów. Pamiętajmy, że surfując po internecie, klikając składamy owe "zwykłe podpisy".

Prof. dr hab. Mirosław Kutyłowski jest przewodniczącym Rady Naukowej CC Signet, pracuje w Politechnice Wrocławskiej, współpracuje z Centrum Kryptologii UAM w Poznaniu. W latach 1994- -1997 był docentem w Heinz-Nixdorf Institut w Paderborn, a w latach 1998-2000 profesorem nadzwyczajnym Uniwersytetu Wrocławskiego. Doradca naukowy Axit Polska. Specjalista w zakresie złożoności obliczeniowej, algorytmów, teorii obliczeń równoległych i rozproszonych, kryptografii i bezpieczeństwa komputerowego.

IT
Technologie
Huuuge: „skupy akcji nie są priorytetem”. Mamy komentarz analityka
Materiał Partnera
Zasadność ekonomiczna i techniczna inwestycji samorządów w OZE
Technologie
Creotech dzieli biznes. Kwanty wejdą na giełdę
Technologie
Ruszyła karuzela nazwisk kandydatów na nowego prezesa UKE
Technologie
Miliardy na cyberochronę
Technologie
Co daje siłę walorom Orange Polska
Technologie
Podmiot z Francji chce zainwestować w DataWalk. Akcje drożeją