Czasami zdarza się, że komponent kryptograficzny w EPUAPie nie widzi zainstalowanego w systemie certyfikatu kwalifikowanego, mimo że jest on w systemie zarejestrowany.
W Twoim przypadku musisz wskazać ręcznie lokalizację sterownika do obsługi podpisu. Oczywiście będzie to możliwe, tylko wtedy gdy masz zainstalowane oprogramowanie do jego obsługi, dostarczone przez producenta podpisu. W tym przypadku KIR (Krajowa Izba Rozliczeniowa), więc będzie to CryptoCard Suite.
Kliknij Dodaj wystawcę
następnie kliknij w ikonkę na dole (z trzema kropkami) i poszukaj w tej lokalizacji
C:\Program Files (x86)\CryptoTech\CryptoCard\
pliku o nazwie CCPkiP11.dll i wybierz go.
Oczywiście lokalizacja tego pliku, będzie się różniła w zależności od wersji systemu i rodzaju karty:
Karty Carbon (stare):
Windows 32-bit - C:\Program Files\CryptoTech\CryptoCard\CCPkiP11.dll
Windows 64-bit - C:\Program Files\CryptoTech\CryptoCard\CCP1164.dll
Karty Graphite (nowe):
Windows 32-bit - C:\Program Files\Krajowa Izba Rozliczeniowa S.A\Szafir 2.0\bin\CCCraphitePllp.x86.dll
Windows 64-bit - C:\Program Files\Krajowa Izba Rozliczeniowa S.A\Szafir 2.0\bin\CCCraphitePllp.x64.dll
To jest biblioteka odpowiedzialna za to, aby podpis kwalifikowany, był widoczny przy podpisywaniu dokumentu w EPUAP.
Znany jest też problem z podpisem elektronicznym, gdy nie wykrywa komponentu kryptograficznego ComarchCryptoServer.exe. Wtedy podczas próby podpisywania dokumentu w EPUAP wyskakuje komunikat:
Komponent kryptograficzny nie jest zainstalowany lub ma nieodpowiednią wersję. Kliknij poniższy link aby zainstalować najnowszą wersję komponentu kryptograficznego.
I mimo iż program jest zainstalowany na komputerze, to nadal tak jakby go nie wykrywał w komputerze, przez co nie da rady złożyć podpisu pod dokumentem.
Przyczyną tkwi w tym, że czasami system mimo prawidłowej instalacji komponentu, nie uruchamia usługi ComarchCryptoServer.exe
Wtedy wystarczy wyszukać powyższy program i go uruchomić ręcznie.
Znajduje się on w lokalizacji:
C:\Pliki Programów(x86)\Comarch\ComarchCryptoProvider
W katalogu należy wyszukać i uruchomić program ComarchCryptoServer.exe
Teraz powinno się dać prawidłowo złożyć podpis kwalifikowany pod dokumentem EPUAP.
Na to wygląda że obecnie program Comarch Crypto Server, nie jest już wykorzystywany do obsługi podpisu dokumentów w EPUAP, tylko nowa aplikacja PK Singer o czym niżej.
Obecnie do podpisywania dokumentów w EPUAP za pomocą podpisu kwalifikowanego, używa się programu PK Signer, do którego link jest udostępniony w przypadku nowego komputera na którym podpisujemy za pomocą EPUAP. Przyczyną jest zmiana sposobu szyfrowania podpisu algorytmem SHA-256, którą wspiera PK Signer. Starsza aplikacja Comarch Crypto Server posługuję się starszą wersję algorytmu SHA-1, dlatego najpewniej zostanie wycofana.
Instalację programu PKSigner.exe należy przeprowadzić najlepiej z prawami administratora (PPM -> Uruchom jako Administrator). Instalacja trwa tylko chwilę. Po niej najlepiej uruchomić ponownie przeglądarkę internetową, w której będziemy wysyłać dokument EPUAPem. Podczas pierwszego uruchomienia programu, system zapyta czy zainstalować dodatkowy certyfikat CA, który należy potwierdzić - TAK.
Może się zdarzyć, że certyfikat się nie zainstaluje, wtedy można go zaimportować w przeglądarce ręcznie.
Aby znaleźć lokalizacje certyfikatu w swoim komputerze:
Windows +R i wpisz
%HOMEPATH%\.pksigner
Import certyfikatu np. w Firefoksie wygląda tak:
Opcje -> Prywatność i Bezpieczeństwo -> Certyfikaty-> Wyświetl certyfikaty -> Organy certyfikacji -> Importuj i wskaż plik ca-cert.crt
Po instalacji, teraz podczas podpisu powinno wyświetlić się takie okienko
Wybieramy z niego podpis i po chwili wyskoczy okno do wpisania PINu. Tutaj jak widać wykorzystywany jest typ MSCAPI, i aplikacja nie korzysta PKCS#11, tak jak było opisywane wcześniej. Jeśli wskazalibyśmy dostawcę, tak jak wcześniej było opisywane, dostalibyśmy komunikat błędu w EPUAP:
Wystąpił błąd wewnętrzny. Skontaktuj się z Pomocą.
UUID błędu: ...
Data błędu: ...
Dlatego musi zostać tak jak jest. Czyli typ certyfikatu MSCAPI.
Czasami przy podpisywaniu może wyskoczyć okienko z błędem:
Wystąpił problem z inicjalizacją komponentu kryptograficznego, skontaktuj się z pomocą techniczną.
Wtedy należy ponownie spróbować podpisać certyfikatem kwalifikowanym.
Edit
Jeśli wyświetla Ci się błąd z powyższego obrazka podczas podpisywania, jest na to rozwiązanie. Problem polega na tym, że z niewiadomych przyczyn okienko w którym trzeba wpisać PIN, tak jakby miało jakiś zakres czasowy. Jeśli nie wpiszesz PINu w ciągu kilku sekund, to w tle wyskakuje właśnie ten błąd inicjalizacji i mimo iż wpiszesz prawidłowy PIN, podpisu nie będzie widać w dokumencie.
Rozwiązanie: gdy wyskoczy okienko hasła, wpisujesz szybko swój PIN (zanim w tle wyskoczy ww. błąd). Jeśli hasło jest dłuższe, można również je wkleić (uprzednio mając zapisane w schowku) w okienko i szybko dać OK. Wtedy dokument w EUPAPie powinien zostać podpisany prawidłowo.
Aktualizacja (19.05.2020)
Od jakiegoś czasu pojawiła się nowa wersja PK Signer w wersji 1.4.8. Najpierw trzeba odinstalować starą wersję programu i potem przy podpisywaniu w EPUAP wyskoczy okienko z linkiem do programu. Po jego zainstalowaniu nie powinno być już problemów z podpisywaniem dokumentów za pomocą podpisu kwalifikowanego. W nowej wersji programu zmienił się również wygląd okienka z listą dostępnych podpisów elektronicznych.
Aktualizacja (20.12.2021)
Od 3.12.2021 znów zmieniła się aplikacja do podpisywania na EPUAPie. Nazywa się Podpis GOV.pl i zastępuje PK Singera. Przy podpisywaniu pisma wyświetli się informacja wraz z linkiem do pliku, który należy zainstalować. Teoretycznie aplikacja powinna usuwać starą wersję (PK Signer), ale może się zdarzyć, że jeszcze coś po niej zostanie. Także jeśli były problem z podpisem (nie będzie wykrywać podpisu) trzeba sprawdzić w aplikacjach uruchamianych przy starcie systemu (Menedżer zadań -> Uruchamianie), czy PK Signer nie jest na liście. Jeśli jest należy go wyłączyć. Żeby nie było sytuacji, że nowa aplikacja i stara są włączone, bo będą się gryzły.