Jak wygenerować odcisk palca certyfikatu kwalifikowanego, dlaczego to takie ważne i w jakich sytuacjach z niego korzystać? Poznaj kilka prostych procedur i sposobów na uzyskanie odcisku palca do certyfikatu, które umożliwiają jednoznaczną identyfikację użytkownika bez konieczności udostępniania pełnych danych certyfikatu. Z artykułu dowiesz się, jak to zrobić za pomocą narzędzi w systemach Windows i MacOS, a także Adobe Acrobat Reader czy Python.
Czym jest odcisk palca certyfikatu?
Odcisk palca certyfikatu podpisu kwalifikowanego to unikalny skrót (hash) generowany z całego certyfikatu cyfrowego i przeznaczony do jednoznacznej identyfikacji certyfikatu bez potrzeby przesyłania pełnych danych certyfikatu. To niezawodny sposób weryfikacji autentyczności i zgodności danych osoby podpisującej, ponieważ nawet najmniejsza zmiana w obrębie certyfikatu skutkuje zupełnie innym odciskiem palca certyfikatu.
Wykorzystuje się to m.in. przy wiązaniu konkretnej osoby z certyfikatem, który nie zawiera numeru PESEL lub NIP, np. przy certyfikatach wydawanych w innych krajach Unii Europejskiej i dla obcokrajowców. Ponadto odcisk palca certyfikatu wykorzystuje się przy logowaniu w systemach takich jak KSeF bez konieczności przesyłania pełnego certyfikatu, co zmniejsza ryzyko fałszerstw, nadużyć czy używania niewłaściwego klucza.
Odcisk palca certyfikatu a podpis kwalifikowany
Odcisk palca certyfikatu przy kwalifikowanym podpisie elektronicznym to skrót kryptograficzny certyfikatu kwalifikowanego. Dzięki niemu można weryfikować autentyczność certyfikatu i powiązać go z konkretną osobą. Jednocześnie odcisk palca nie może być wykorzystywany do podpisywania dokumentów, czyli nie ma tych samych funkcjonalności co kwalifikowany podpis elektroniczny. Ten ostatni ma równą moc prawną podpisowi własnoręcznemu zgodnie z rozporządzeniem eIDAS i można wykorzystywać go do podpisywania dokumentów wymagających formy pisemnej pod rygorem nieważności.
W Krajowym Systemie e-Faktur odcisk palca może być używany przy pomocy modułu certyfikatów i uprawnień (MCU) do wspomagania logowania lub nadawania uprawnień. Dzięki niemu system automatycznie weryfikuje, czy dane użytkownika są powiązane z certyfikatem. Ponadto to niezbędna funkcja w przypadku korzystania z KSeF przez osoby posiadające certyfikat kwalifikowany bez numeru PESEL lub NIP.
Ten artykuł może Cię zainteresować:
Jak wygenerować odcisk palca certyfikatu?
Poniżej podstawowe informacje dotyczące sposobów generowania odcisku palca certyfikatu kwalifikowanego wraz z prostymi instrukcjami, które ułatwią Ci sprawne przejście przez całą procedurę.
KSeF
Wygenerowanie i pobranie odcisku palca certyfikatu kwalifikowanego umożliwia Krajowy System e-Faktur. Wystarczy postępować zgodnie z poniższymi krokami.
- Wybierz odpowiednią opcję logowania – skorzystaj z opcji logowania do KSeF „Pobierz odcisk palca certyfikatu kwalifikowanego”.
- Podpisz pobrany plik – po pobraniu ze strony KSeF pliku w formacie .XML należy podpisać go przy użyciu formatu podpisu XAdES oraz typu podpisu Otoczony.
- Wgraj plik – podpisany plik należy wgrać na stronę https://web2te-ksef.mf.gov.pl/web/login, a następnie powinien zostać wyświetlony odcisk palca SHA-256.
Generowanie w Windows z certyfikatu na karcie lub pliku
Najłatwiejszym sposobem wydaje się wygenerowanie odcisku palca certyfikatu kwalifikowanego w systemie Windows z certyfikatu zapisanego na karcie kryptograficznej lub w podpisanym pliku (np. cer). Poniżej prosta instrukcja.
- Otwórz certyfikat – w systemie Windows znajdź plik certyfikatu (np. .cer, .crt) i kliknij go dwukrotnie. W przypadku podpisu na karcie kryptograficznej otwórz certyfikat z magazynu certyfikatów Windows. W obu przypadkach powinny pojawić się informacje o certyfikacie.
- Przejdź do szczegółów – wybierz zakładkę „Szczegóły (Details)”, aby wyświetlić szczegółowe parametry certyfikatu kwalifikowanego.
- Znajdź pole odcisku palca – wybierz opcję „Odcisk palca (Thumbprint)”, w przypadku nowszych wersji systemu operacyjnego Windows jest to „Odcisk palca w algorytmie SHA‑256”.
- Skopiuj odcisk palca – w górnej części okna dialogowego pojawi się wartość odcisku palca jako ciąg znaków, np. 3A 5F 1B 8C 7D AA 9B 33 12 45 …
- Usuń spacje z odcisku – ze skopiowanego ciągu znaków wystarczy usunąć znaki spacji, aby uzyskać właściwy odcisk palca certyfikatu kwalifikowanego.
Windows – Menedżer certyfikatów użytkownika
Kolejną ze ścieżek jest skorzystanie z Menedżera certyfikatów użytkownika w systemie Windows. Wystarczy postępować zgodnie z kilkoma prostymi krokami.
- Otwórz Menedżera certyfikatów użytkownika – naciśnij kombinację klawiszy Win + R i w oknie „Uruchamianie” wpisz komendę certmgr.msc oraz zatwierdź ją przyciskiem Enter.
- Znajdź swój certyfikat kwalifikowany – z lewej strony w kolumnie przejdź do Osobisty → Certyfikaty (Personal → Certificates) i na rozwijanej liście znajdź interesujący Cię certyfikat kwalifikowany.
- Wyświetl szczegóły certyfikatu – kliknij dwukrotnie wybrany certyfikat, aby go otworzyć, a następnie przejdź do zakładki „Szczegóły (Details)”.
- Znajdź pole odcisku palca – wybierz opcję „Odcisk palca (Thumbprint)”, w przypadku nowszych wersji systemu operacyjnego Windows jest to „Odcisk palca w algorytmie SHA‑256”.
- Skopiuj odcisk palca – w górnej części okna dialogowego pojawi się wartość odcisku palca jako ciąg znaków, np. 3A 5F 1B 8C 7D AA 9B 33 12 45 …
- Usuń spacje z odcisku – ze skopiowanego ciągu znaków wystarczy usunąć znaki spacji, aby uzyskać właściwy odcisk palca certyfikatu kwalifikowanego.
OpenSSL (terminal MacOS)
OpenSSL to narzędzie wiersza poleceń typu open source, które umożliwia m.in. wyodrębnianie odcisku palca certyfikatu kwalifikowanego oraz numeru seryjnego. Poniżej szczegółowa instrukcja.
- Przygotuj plik certyfikatu – upewnij się, że posiadasz plik certyfikatu wyeksportowany z podpisu kwalifikowanego, np. cert.cer lub cert.pem. Plik ten powinien znajdować się w katalogu, z którego będzie uruchamiane polecenie w terminalu, np. /Users/nazwa_uzytkownika/Documents/cert.cer
- Uruchom Terminal – w systemie MacOS otwórz aplikację „Terminal” wg ścieżki Spotlight → wpisz Terminal lub Finder → Aplikacje → Narzędzia → Terminal.
- Przejdź do katalogu z certyfikatem – w terminalu przejdź do folderu, w którym znajduje się plik certyfikatu.
- Uruchom polecenie OpenSSL – wpisz polecenie generujące odcisk palca certyfikatu (SHA‑256): openssl x509 -in cert.cer -noout -fingerprint -sha256 (dla plików .cer) lub openssl x509 -in cert.pem -noout -fingerprint -sha256 (dla plików .pem).
- Odczytaj odcisk palca certyfikatu – po wpisaniu polecenia OpenSSL wyświetli się ciąg znaków, czyli odcisk palca certyfikatu kwalifikowanego, np.: SHA256 Fingerprint=3A:5F:1B:8C:7D:AA:23:91:8C:44:… Odcisk palca certyfikatu to ciąg następujący po SHA256 Fingerprint= i należy go skopiować oraz zapisać w bezpiecznym miejscu.
Adobe Acrobat
Wygenerowanie odcisku palca certyfikatu kwalifikowanej pieczęci elektronicznej lub podpisu elektronicznego z podpisanego pliku PDF umożliwia narzędzie Adobe Acrobat Reader. Poniżej szczegółowa instrukcja.
- Otwórz podpisany plik – otwórz w Adobe Acrobat Reader podpisany wcześniej kwalifikowanym podpisem elektronicznym plik PDF.
- Otwórz panel podpisów – z poziomu otwartego pliku przejdź do sekcji „Panel podpisów”.
- Wybierz podpis – z rozwijanej listy wybierz konkretny podpis kwalifikowany, a następnie przejdź do sekcji „Właściwości podpisu”.
- Otwórz certyfikat podpisującego – w oknie „Właściwości podpisu” kliknij przycisk „Certyfikat podpisującego”.
- Przejdź do szczegółów certyfikatu – z dostępnych parametrów kwalifikowanego podpisu elektronicznego wybierz zakładkę „Szczegóły”
- Znajdź odcisk palca certyfikatu – na liście parametrów certyfikatu znajdź pole: „SHA‑256 Fingerprint (Odcisk palca)”. Otrzymasz ciąg znaków (hash SHA‑256). Wskazuje ono na unikalny identyfikator certyfikatu, który można skopiować i wykorzystać do uwierzytelniania w KSeF oraz podobnych systemach.
PowerShell w systemie Windows – zainstalowany certyfikat
Jeżeli certyfikat został wcześniej zainstalowany w systemie Windows, to możesz skorzystać również z narzędzia PowerShell. Poniżej prosta instrukcja.
- Otwórz PowerShell – przejdź ścieżkę: Start -> Wpisz PowerShell -> Uruchom Windows PowerShell.
- Wyświetl listę certyfikatów w systemie – w PowerShell wpisz polecenie: Get-ChildItem Cert:\LocalMachine\My, aby wyświetlić listę wszystkich certyfikatów kwalifikowanych zainstalowanych w magazynie systemowym Windows.
- Znajdź właściwy certyfikat – na liście certyfikatów odszukaj kolumnę „Subject (Temat)” i odnajdź nazwę swojego certyfikatu kwalifikowanego.
- Odczytaj odcisk palca certyfikatu – przy danej nazwie certyfikatu kwalifikowanego znajduje się odcisk palca w polu Thumbprint. Wystarczy go skopiować do dokumentu lub formularza.
PowerShell w systemie Windows – certyfikat w postaci pliku
Jeżeli certyfikat nie został wcześniej zainstalowany w systemie Windows, jednak posiadacz go w postaci pliku certyfikatu (.cer, .der), to także możesz skorzystać z narzędzia PowerShell. Poniżej prosta instrukcja.
- Otwórz PowerShell – przejdź ścieżkę: Start -> Wpisz PowerShell -> Uruchom Windows PowerShell.
- Przejdź do katalogu z certyfikatem – np. cd C:\certyfikaty.
- Wygeneruj odcisk palca – uruchom polecenie: Get-FileHash cert.der -Algorithm SHA256.
- Skopiuj odcisk palca – narzędzie PowerShell wyświetli takie informacje jak: Algorithm, Hash i Path. Odcisk palca certyfikatu to wartość przy oznaczeniu Hash i wystarczy go skopiować.
Python
Jeżeli masz dostęp do pliku certyfikatu w formie .der, to możesz skorzystać z generowania odcisku palca certyfikatu kwalifikowanego w Python zgodnie z poniższą instrukcją.
- Przygotuj plik certyfikatu – przygotuj plik certyfikatu w formacie DER. Jeżeli masz certyfikat w innym formacie (np. .cer lub .pem), może być konieczne jego wcześniejsze przekonwertowanie do formatu DER.
- Uruchom środowisko Python – otwórz Pythona, a następnie przejdź do katalogu, w którym znajduje się plik certyfikatu.
- Utwórz prosty skrypt Python – utwórz plik np. fingerprint.py i wklej do niego następujący kod:
import hashlib
with open(„cert.der”, „rb”) as f:fingerprint = hashlib.sha256(f.read()).hexdigest()print(„Odcisk palca SHA-256:”, fingerprint) - Uruchom skrypt – w terminalu wpisz: python fingerprint.py, a program odczyta plik certyfikatu i wygeneruje jego odcisk palca SHA‑256. Wystarczy skopiować ciąg znaków widoczny po tym skrócie.
Jak uzyskać i wygenerować odcisk palca certyfikatu? – podsumowanie
Odcisk palca certyfikatu podpisu kwalifikowanego to unikalny skrót kryptograficzny (hash) całego certyfikatu, który umożliwia jednoznaczną identyfikację certyfikatu bez ujawniania pełnych danych. Możesz wygenerować go za pomocą kilku prostych sposobów. Przydaje się zwłaszcza w celu weryfikacji autentyczności certyfikatu i powiązania go z konkretną osobą, gdy certyfikat kwalifikowany podpisu bądź pieczęci nie zawiera numeru PESEL lub NIP. Pamiętaj o tym, że odcisk palca nie jest używany do podpisywania dokumentów, ale w systemach takich jak KSeF wspiera logowanie i nadawanie uprawnień. Sam kwalifikowany podpis elektroniczny wyrobisz u certyfikowanego dostawcy usług zaufania, np. EuroCert.
