Kwalifikowany podpis elektroniczny w macOS

Kwalifikowany podpis elektroniczny w macOS

Z danych RBC i Tensor, w 2019 roku w Rosji wydano 4,6 mln. certyfikatów kwalifikowanych podpisów elektronicznych (KEP), odpowiadających wymaganiom 63-FZ. Okazuje się, że z 8 mln. zarejestrowanych indywidualnych przedsiębiorców i spółek z o.o. każdy drugi przedsiębiorca korzysta z podpisu elektronicznego. Oprócz KEP dla EGAIS i chmurowych KEP do składania sprawozdań, wydawanych przez banki i usługi księgowe, szczególnym zainteresowaniem cieszą się uniwersalne KEP na zabezpieczonych tokenach. Takie certyfikaty pozwalają logować się na portale rządowe i podpisywać wszelkie dokumenty, nadając im znaczenie prawne.

Dzięki certyfikatowi KEP na USB-tokenie można zdalnie zawrzeć umowę z kontrahentem lub zdalnym pracownikiem, przesłać dokumenty do sądu; zarejestrować kasę online, uregulować zaległości podatkowe i złożyć deklarację w osobistym koncie na nalog.ru; uzyskać informacje o zaległościach i nadchodzących kontrolach na GovServices.

Poniższy podręcznik pomoże pracować z KEP w macOS – bez studiowania forum CryptoPro i instalacji maszyny wirtualnej z Windows.


Spis treści

Co jest potrzebne do pracy z KEP w macOS:

Instalujemy i konfigurujemy KEP w macOS

  1. Instalujemy CryptoPro CSP
  2. Instalujemy sterowniki Rutoken
  3. Instalujemy certyfikaty
    3.1. Usuwamy wszystkie stare certyfikaty GOST
    3.2. Instalujemy certyfikaty główne
    3.3. Pobieramy certyfikaty centrum certyfikacji
    3.4. Instalujemy certyfikat z Rutoken
  4. Instalujemy specjalną przeglądarkę Chromium-GOST
  5. Instalujemy rozszerzenia dla przeglądarki
    5.1 Wtyczka CryptoPro ECP dla przeglądarki
    5.2. Wtyczka dla GovServices
    5.3. Konfigurujemy wtyczkę dla GovServices
    5.4. Aktywujemy rozszerzenia
    5.5. Konfigurujemy rozszerzenie CryptoPro ECP dla przeglądarki
  6. Sprawdzamy, czy wszystko działa
    6.1. Wchodzimy na stronę testową CryptoPro
    6.2. Wchodzimy do osobistego konta na nalog.ru
    6.3. Wchodzimy na GovServices
  7. Co zrobić, jeśli przestało działać

Zmiana kodu PIN kontenera

  1. Wyjaśniamy nazwę kontenera KEP
  2. Zmiana PIN poleceniem z terminala

Podpisywanie plików w macOS

  1. Wyjaśniamy hash certyfikatu KEP
  2. Podpisywanie pliku poleceniem z terminala
  3. Instalacja Apple Automator Script

Sprawdzanie podpisu w dokumencie

Wszystkie informacje poniżej pochodzą z wiarygodnych źródeł (CryptoPro #1 i #2, Rutoken, Korus-Consulting, UFO Ministerstwo Łączności), a oprogramowanie należy pobierać ze zaufanych stron. Autor jest niezależnym konsultantem i nie jest powiązany z żadną z wymienionych firm. Postępując według tej instrukcji, całą odpowiedzialność za wszelkie działania i ich konsekwencje ponosisz sam.

Co jest potrzebne do pracy z KEP w macOS:

  1. KÉP na USB-tokenie Rutoken Lite lub Rutoken ECP
  2. kryptokontener w formacie CryptoPro
  3. z wbudowaną licencją na CryptoPro CSP

Nośniki eToken i JaCarta w połączeniu z CryptoPro na macOS nie są wspierane. Nośnik Rutoken Lite to optymalny wybór, kosztuje 500..1000 rubli, działa szybko i pozwala na przechowywanie do 15 kluczy.

Dostawcy kryptografii VipNet, Signal-COM i LISSI na macOS nie są wspierani. Nie ma możliwości konwersji kontenerów. CryptoPro to optymalny wybór, koszt certyfikatu powinien wynosić około 1300 rubli dla osób fizycznych i 1600 rubli dla osób prawnych.

Zwykle roczna licencja na CryptoPro CSP jest już zawarta w certyfikacie i wielu UCN oferuje ją za darmo. Jeśli tak nie jest, należy zakupić i aktywować nieograniczoną licencję na CryptoPro CSP wyłącznie w wersji 4, koszt to 2700 rubli. CryptoPro CSP wersji 5 na macOS obecnie nie działa.

Instalujemy i konfigurujemy KEP w macOS

Oczywiste rzeczy

  • wszystkie pobrane pliki ściągane są do katalogu domyślnego: ~/Downloads/;
  • w wszystkich instalatorach nic nie zmieniamy, wszystko zostawiamy domyślnie;
  • jeśli macOS wyświetla ostrzeżenie, że uruchamiane oprogramowanie pochodzi od nieznanego dewelopera – należy potwierdzić uruchomienie w ustawieniach systemowych: Preferencje systemowe —> Bezpieczeństwo i prywatność —> Otwórz mimo to;
  • jeśli macOS prosi o hasło użytkownika i pozwolenie na zarządzanie komputerem – należy wpisać hasło i na wszystko się zgodzić.

1. Instalujemy CryptoPro CSP

Rejestrujemy się na stronie CryptoPro i z strony pobierania pobieramy i instalujemy wersję CryptoPro CSP 4.0 R4 do macOSpobierz.

2. Instalujemy sterowniki Rutoken

Na stronie napisano, że jest to opcjonalne, ale lepiej je zainstalować. Z strony pobierania strony Rutoken pobieramy i instalujemy Moduł wsparcia dla Wiązki Kluczy (KeyChain)pobierz.

Następnie podłączamy usb-token, uruchamiamy terminal i wykonujemy polecenie:

/opt/cprocsp/bin/csptest -card -enum -v

W odpowiedzi powinno być:

Aktywuj Rutoken…
Karta obecna…
[Kod błędu: 0x00000000]

3. Instalujemy certyfikaty

3.1. Usuwamy wszystkie stare certyfikaty GOST

Jeśli wcześniej były próby uruchomienia KÉP na macOS, należy wyczyścić wszystkie wcześniej zainstalowane certyfikaty. Te polecenia w terminalu usuną tylko certyfikaty CryptoPro i nie wpłyną na zwykłe certyfikaty z Keychain w macOS.

sudo /opt/cprocsp/bin/certmgr -delete -all -store mroot

sudo /opt/cprocsp/bin/certmgr -delete -all -store uroot

/opt/cprocsp/bin/certmgr -delete -all

W odpowiedzi każdej komendy powinno być:

Brak certyfikatu pasującego do kryteriów

lub

Usuwanie zakończone

3.2. Instalujemy certyfikaty główne

Certyfikaty główne są wspólne dla wszystkich KEP wydanych przez jakikolwiek certyfikujący centrum. Pobieramy z strony pobierania UFO Ministerstwa Łączności:

Instalujemy za pomocą komend w terminalu:

sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/4BC6DC14D97010C41A26E058AD851F81C842415A.cer

sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/8CAE88BBFD404A7A53630864F9033606E1DC45E2.cer

sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/0408435EB90E5C8796A160E69E4BFAC453435D1D.cer

Każda komenda powinna zwracać:

Instalacja:

[Kod błędu: 0x00000000]

3.3. Pobieramy certyfikaty centrum certyfikacji

Następnie należy zainstalować certyfikaty certyfikującego centrum, w którym wydano KEP. Zazwyczaj certyfikaty główne każdego UЦ znajdują się na jego stronie w sekcji pobierania.

Alternatywnie, certyfikaty każdego UЦ można pobrać z strony UFO Ministerstwa Łączności. Aby to zrobić, w formularzu wyszukiwania trzeba znaleźć UЦ po nazwie, przejść na stronę z certyfikatami i pobrać wszystkie aktywnych certyfikatów – czyli tych, które mają w polu 'Aktywny' druga data jeszcze nie nadeszła. Pobranie za pomocą linku z pola 'Odcisk'.

Zrzuty ekranu

Kwalifikowany podpis elektroniczny w macOS

Kwalifikowany podpis elektroniczny w macOS

Na przykładzie UЦ Korus-Consulting: należy pobrać 4 certyfikaty z strony pobierania:

Pobieramy certyfikaty UЦ za pomocą komend z terminala:

sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/B9F1D3F78971D48C34AA73786CDCD138477FEE3F.cer

sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/A0D19D700E2A5F1CAFCE82D3EFE49A0D882559DF.cer

sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/55EC48193B6716D38E80BD9D1D2D827BC8A07DE3.cer

sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/15EB064ABCB96C5AFCE22B9FEA52A1964637D101.cer

gdzie po ~/Downloads/ następują nazwy pobranych plików, dla każdego UЦ będą one inne.

Każda komenda powinna zwracać:

Instalacja:

[Kod błędu: 0x00000000]

3.4. Instalujemy certyfikat z Rutoken

Komenda w terminalu:

/opt/cprocsp/bin/csptestf -absorb -certs

Komenda powinna zwrócić:

OK.
[Kod błędu: 0x00000000]

4. Instalujemy specjalną przeglądarkę Chromium-GOST

Aby korzystać z portali rządowych, potrzebna będzie specjalna wersja przeglądarki Chromium – Chromium-GOST. Kod źródłowy projektu jest otwarty, link do repozytorium na GitHubie podany jest na stronie KryptoPro. Z doświadczenia inne przeglądarki CryptoFox i Yandex.Browser do pracy z portalami rządowymi na macOS się nie nadają. Warto zauważyć, że w niektórych wersjach Chromium-GOST mój profil na nalog.ru może się zawieszać lub całkowicie przestaje działać przewijanie, dlatego polecana jest stara sprawdzona wersja 71.0.3578.98pobierz.

Pobieramy i rozpakowujemy archiwum, instalujemy przeglądarkę kopiując lub przeciągając do katalogu Applications. Po instalacji przymusowo zamykamy Chromium i na razie go nie otwieramy, pracujemy z Safari.

killall Chromium-Gost

5. Instalujemy rozszerzenia do przeglądarki

5.1 Wtyczka CryptoPro ECP dla przeglądarki

Na strony pobierania stronie CryptoPro pobieramy i instalujemy wtyczkę przeglądarki CryptoPro EDS wersja 2.0 dla użytkownikówpobierz.

5.2. Wtyczka dla GovServices

Na strony pobierania na portalu e-Usług pobieramy i instalujemy Wtyczka do współpracy z portalem usług publicznych (wersja dla macOS)pobierz.

5.3. Konfigurujemy wtyczkę dla GovServices

Pobieramy poprawny plik konfiguracyjny dla rozszerzenia e-Usług ze strony CryptoPro – pobierz.

Wykonujemy polecenia w terminalu:

sudo rm /Library/Internet Plug-Ins/IFCPlugin.plugin/Contents/ifc.cfg

sudo cp ~/Downloads/ifc.cfg /Library/Internet Plug-Ins/IFCPlugin.plugin/Contents 

sudo cp /Library/Google/Chrome/NativeMessagingHosts/ru.rtlabs.ifcplugin.json /Library/Application Support/Chromium/NativeMessagingHosts

5.4. Aktywujemy rozszerzenia

Uruchamiamy przeglądarkę Chromium-Gost i w pasku adresu wpisujemy:

chrome://extensions/

Włączamy oba zainstalowane rozszerzenia:

  • Rozszerzenie CryptoPro dla wtyczki CAdES
  • Rozszerzenie dla wtyczki e-Usług

Zrzut ekranu

Kwalifikowany podpis elektroniczny w macOS

5.5. Konfigurujemy rozszerzenie CryptoPro ECP dla przeglądarki

W pasku adresu Chromium-Gost wpisujemy:

/etc/opt/cprocsp/trusted_sites.html

Na pojawionej stronie w liście zaufanych węzłów kolejno dodajemy strony:

https://*.cryptopro.ru
https://*.nalog.ru
https://*.gosuslugi.ru

Klikamy ‘Zapisz’. Powinna pojawić się zielona plansza:

Lista zaufanych węzłów została pomyślnie zapisana.

Zrzut ekranu

Kwalifikowany podpis elektroniczny w macOS

6. Sprawdzamy, czy wszystko działa

6.1. Wchodzimy na stronę testową CryptoPro

W pasku adresu Chromium-Gost wpisujemy:

https://www.cryptopro.ru/sites/default/files/products/cades/demopage/cades_bes_sample.html

Powinno się wyświetlić ‘Wtyczka załadowana’, a poniżej w liście powinien być widoczny twój certyfikat.
Wybieramy certyfikat z listy i klikamy ‘Podpisz’. Zostanie poproszone o kod PIN certyfikatu. W rezultacie powinno się pokazać

Podpis został utworzony pomyślnie

Zrzut ekranu

Kwalifikowany podpis elektroniczny w macOS

6.2. Wchodzimy do osobistego konta na nalog.ru

Możliwe, że nie uda się wejść na strony z serwisu nalog.ru, ponieważ kontrole mogą nie zostać przeprowadzone. Należy wchodzić bezpośrednio przez linki:

  • Konto osobiste OS: https://lkipgost.nalog.ru/lk
  • Konto osobiste JK: https://lkul.nalog.ru

Zrzut ekranu

Kwalifikowany podpis elektroniczny w macOS

6.3. Wchodzimy na GovServices

Przy autoryzacji wybieramy ‘Logowanie za pomocą podpisu elektronicznego’. Na pojawiającej się liście ‘Wybór certyfikatu klucza weryfikacji podpisu elektronicznego’ będą wyświetlane wszystkie certyfikaty, w tym certyfikaty root i CA, należy wybrać swój z tokena USB i wprowadzić PIN.

Zrzut ekranu

Kwalifikowany podpis elektroniczny w macOS

Kwalifikowany podpis elektroniczny w macOS

7. Co zrobić, jeśli przestało działać

  1. Ponownie podłączamy token USB i sprawdzamy, czy jest widoczny za pomocą polecenia w terminalu:

    sudo /opt/cprocsp/bin/csptest -card -enum -v 

  2. Oczyszczamy pamięć podręczną przeglądarki za cały czas, w tym celu w pasku adresu Chromium-Gost wpisujemy:

    chrome://settings/clearBrowserData 

  3. Ponownie instalujemy certyfikat EDS za pomocą polecenia w terminalu:

    /opt/cprocsp/bin/csptestf -absorb -certs

Zmiana kodu PIN kontenera

Domyślny PIN użytkownika na RUTOKEN 12345678, i nie można go zostawić w takiej postaci. Wymagania dla PIN-u RUTOKEN: maks. 16 znaków, może zawierać litery i cyfry.

1. Dowiadujemy się o nazwie kontenera EDS

Na pendrive USB i w innych nośnikach mogą być przechowywane różne certyfikaty, i należy wybrać odpowiedni. Po włożeniu pendrive’a USB uzyskujemy listę wszystkich kontenerów w systemie poleceniem w terminalu:

/opt/cprocsp/bin/csptest -keyset -enum_cont -fqcn -verifycontext

Polecenie powinno wyświetlić przynajmniej 1 kontener i zwrócić

[Kod błędu: 0x00000000]

Interesujący nas kontener ma postać

.Aktiv Rutoken liteXXXXXXXX

Jeśli wyświetli się kilka takich kontenerów, oznacza to, że na pendrive’ie zapisano kilka certyfikatów, i wiesz, który dokładnie potrzebujesz. Wartość XXXXXXXX po ukośniku należy skopiować i wstawić w poniższe polecenie.

2. Zmiana PIN-u za pomocą polecenia z terminala

/opt/cprocsp/bin/csptest -passwd -qchange -container "XXXXXXXX"

gdzie XXXXXXXX – nazwa kontenera uzyskana w kroku 1 (koniecznie w cudzysłowach).

Pojawi się okno CryptoPro z prośbą o stary kod PIN do dostępu do certyfikatu, a następnie kolejne okno do wprowadzenia nowego kodu PIN. Gotowe.

Zrzut ekranu

Kwalifikowany podpis elektroniczny w macOS

Podpisywanie plików w macOS

W macOS pliki można podpisywać w programie CryptoArm (koszt licencji 2500 rubli), lub prostym poleceniem przez terminal – za darmo.

1. Ustalamy hash certyfikatu KEP

Na pendrive’ie i w innych nośnikach mogą być różne certyfikaty. Należy jednoznacznie zidentyfikować ten, którym będziemy podpisywać dokumenty. Robi się to raz.
Pendrive musi być włożony. Uzyskujemy listę certyfikatów w nośnikach poleceniem z terminala:

/opt/cprocsp/bin/certmgr -list

Polecenie powinno wyświetlić przynajmniej 1 certyfikat w postaci:

Certmgr 1.1 © «Crypto-Pro», 2007-2018.
program do zarządzania certyfikatami, CRL i magazynami
= = = = = = = = = = = = = = = = = = = =
1——-
Wydawca: E=help@esphere.ru,… CN=OOO KORUS Consulting СНГ…
Podmiot: E=sergzah@gmail.com,… CN=Zacharow Siergiej Anatoliewicz…
Numer seryjny: 0x0000000000000000000000000000000000
SHA1 Hash: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Kontener: SCARDrutoken_lt_00000000 000 000

= = = = = = = = = = = = = = = = = = = =
[Kod błędu: 0x00000000]

W odpowiednim certyfikacie w parametrze Kontener powinno mieć wartość w postaci SCARDrutoken…. Jeśli jest kilka certyfikatów o takich wartościach, oznacza to, że na pendrive’ie zapisano kilka certyfikatów, i wiesz, który dokładnie potrzebujesz. Wartość parametru SHA1 Hash (40 znaków) należy skopiować i wstawić w poniższe polecenie.

2. Podpisywanie pliku poleceniem z terminala

W terminalu przechodzimy do katalogu z plikiem do podpisania i wykonujemy polecenie:

/opt/cprocsp/bin/cryptcp -signf -detach -cert -der -strict -thumbprint ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ FILE

gdzie XXXX… – hash certyfikatu uzyskany w kroku 1, a FILE – nazwa pliku do podpisania (ze wszystkimi rozszerzeniami, ale bez ścieżki).

Komenda powinna zwrócić:

Wiadomość podpisana została utworzona.
[Kod błędu: 0x00000000]

Zostanie utworzony plik elektronicznego podpisu z rozszerzeniem *.sgn – to odłączony podpis w formacie CMS z kodowaniem DER.

3. Instalacja Apple Automator Script

Aby nie pracować z terminalem za każdym razem, można raz zainstalować skrypt Automatora, za pomocą którego będzie można podpisywać dokumenty z kontekstowego menu Findera. W tym celu pobieramy archiwum – pobierz.

  1. Rozpakowujemy archiwum ‘Sign with CryptoPro.zip’
  2. Uruchamiamy Automator
  3. Znajdujemy i otwieramy rozpakowany plik ‘Sign with CryptoPro.workflow’
  4. W bloku Run Shell Script zmieniamy tekst XXXXXX na wartość parametru SHA1 Hash certyfikatu KEP, uzyskanego wcześniej.
  5. Zapisujemy skrypt: ⌘Command + S
  6. Uruchamiamy plik ‘Sign with CryptoPro.workflow’ i potwierdzamy instalację.
  7. Przechodzimy do System Preferences —> Extensions —> Finder i sprawdzamy, czy Sign with CryptoPro szybka akcja jest zaznaczona.
  8. W Finderze wywołujemy kontekstowe menu dowolnego pliku, i w sekcji Quick Actions i/lub Services wybieramy punkt Sign with CryptoPro
  9. W pojawiającym się dialogu KryptoPro wprowadzamy PIN użytkownika od KEP.
  10. W bieżącym katalogu pojawi się plik z rozszerzeniem *.sgn – odłączony podpis w formacie CMS z kodowaniem DER.

Zrzuty ekranu

Okno Apple Automator:
Kwalifikowany podpis elektroniczny w macOS

System Preferences:
Kwalifikowany podpis elektroniczny w macOS

Kontekstowe menu Findera:

Kwalifikowany podpis elektroniczny w macOS

Sprawdzanie podpisu w dokumencie

Jeśli zawartość dokumentu nie zawiera tajemnic i sekretów, najłatwiej skorzystać z serwisu internetowego na portalu ePUAP – https://www.gosuslugi.ru/pgu/eds. W ten sposób można zrobić zrzut ekranu z autorytatywnego źródła i być pewnym, że z podpisem wszystko jest w porządku.

Zrzuty ekranu

Kwalifikowany podpis elektroniczny w macOS

Kwalifikowany podpis elektroniczny w macOS

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster