Qualifizierte MacOS-Signatur


Laut RBC und Tensor werden 2019 in Russland 4,6 Millionen Zertifikate für qualifizierte elektronische Signaturen (CEP) ausgestellt, die die Anforderungen von 63-FZ erfüllen. Es stellt sich heraus, dass von 8 Millionen registrierten IPs und LLCs jeder zweite Unternehmer eine elektronische Signatur verwendet. Neben CEPs für EGAIS und Cloud-basierten CEPs für die Übermittlung von Berichten von Banken und Buchhaltungsdiensten sind universelle CEPs mit sicheren Token von besonderem Interesse. Mit solchen Zertifikaten können Sie sich bei staatlichen Portalen anmelden und Dokumente signieren, wodurch sie rechtlich bedeutsam werden.


Dank des CEP-Zertifikats auf einem USB-Token können Sie einen Vertrag mit einer Gegenpartei oder einem Remote-Mitarbeiter aus der Ferne abschließen und Dokumente an das Gericht senden. Registrieren Sie eine Online-Registrierkasse, begleichen Sie Steuerrückstände und geben Sie eine Erklärung in Ihrem Konto auf nalog.ru ab. Informieren Sie sich über Schulden und bevorstehende Kontrollen der öffentlichen Dienste.


Das folgende Handbuch hilft Ihnen bei der Arbeit mit CEP für macOS - ohne die CryptoPro-Foren zu studieren und eine virtuelle Maschine unter Windows zu installieren.


Inhalt

Was Sie benötigen, um mit CEP für macOS zu arbeiten:


Installieren und konfigurieren Sie CEP für macOS


  1. Installieren Sie CryptoPro CSP
  2. Installieren Sie Rootoken-Treiber
  3. Installieren Sie Zertifikate
    3.1. Wir löschen alle alten GOST-Zertifikate
    3.2. Installieren Sie Stammzertifikate
    3.3. Laden Sie die Zertifikate des Zertifizierungszentrums herunter
    3.4. Installieren Sie das Zertifikat mit Rutoken
  4. Installieren Sie den speziellen Browser Chromium-GOST
  5. Installieren Sie Browser-Erweiterungen
    5.1 CryptoPro EDS Browser Plug-In
    5.2. Plugin für Regierungsdienste
    5.3. Richten Sie ein Plugin für öffentliche Dienste ein
    5.4. Erweiterungen aktivieren
    5.5. Wir konfigurieren die Erweiterung CryptoPro EDS Browser Plug-In
  6. Überprüfen Sie, ob alles funktioniert.
    6.1. Wir gehen zur Testseite CryptoPro
    6.2. Wir gehen in das persönliche Konto auf nalog.ru
    6.3. Wir gehen zu öffentlichen Diensten
  7. Was tun, wenn es nicht mehr funktioniert?

Container-PIN ändern


  1. Wir finden den Namen des Containers CEP heraus
  2. Ändern Sie den PIN-Befehl vom Terminal

Signieren von Dateien unter macOS


  1. Finden Sie den Hash des CEP-Zertifikats heraus
  2. Signieren einer Datei mit einem Befehl vom Terminal
  3. Installieren Sie Apple Automator Script

Überprüfen Sie die Unterschrift auf dem Dokument


Alle folgenden Informationen stammen aus seriösen Quellen (CryptoPro Nr. 1 , Nr. 2 und Nr. 3 , Rutoken , Corus-Consulting , Bundesministerium für Kommunikation im Ural ). Es wird empfohlen , die Software von vertrauenswürdigen Sites herunterzuladen. Der Autor ist ein unabhängiger Berater und mit keinem der genannten Unternehmen verbunden. Nach dieser Anweisung übernehmen Sie die gesamte Verantwortung für alle Handlungen und Konsequenzen.


Was Sie benötigen, um mit CEP für macOS zu arbeiten:


  1. CEP auf USB-Token Rutoken Lite oder Rutoken EDS
  2. Kryptocontainer im CryptoPro-Format
  3. mit integrierter Lizenz für CryptoPro CSP
  4. Das öffentliche Zertifikat muss im privaten Schlüsselcontainer gespeichert sein

EToken- und JaCarta-Medien in Verbindung mit CryptoPro für macOS werden nicht unterstützt. Carrier Rutoken Lite ist die beste Wahl, es kostet 500..1000 = Rubel, es funktioniert intelligent und ermöglicht die Aufbewahrung von bis zu 15 Schlüsseln.


Kryptografische Anbieter von VipNet, Signal-COM und LISSI werden unter macOS nicht unterstützt. Container konvertieren funktioniert nicht. CryptoPro ist die beste Wahl, die Kosten für das Zertifikat sollten ca. 1300 = Rubel betragen. für SP und 1600 = reiben. für Yul.


Normalerweise ist die jährliche Lizenz für CryptoPro CSP bereits im Zertifikat enthalten, und viele Zertifizierungsstellen werden kostenlos zur Verfügung gestellt. Wenn dies nicht der Fall ist, müssen Sie eine unbefristete Lizenz für CryptoPro CSP kaufen und aktivieren, die ausschließlich Version 4 im Wert von 2700 = ist. CryptoPro CSP Version 5 für macOS funktioniert derzeit nicht.


In der Regel wird ein öffentliches Zertifikat in einem privaten Schlüsselcontainer gespeichert. Dies muss jedoch bei der Ausstellung des CEP geklärt und bei Bedarf angefordert werden. Wenn dies nicht funktioniert, können Sie den öffentlichen Schlüssel mithilfe von CryptoPro CSP für Windows selbst in den geschlossenen Container importieren.


Installieren und konfigurieren Sie CEP für macOS


Offensichtliche Dinge
  • Alle heruntergeladenen Dateien werden in das Standardverzeichnis heruntergeladen: ~ / Downloads /;
  • Wir ändern nichts in allen Installationsprogrammen. Wir belassen standardmäßig alles.
  • Wenn macOS eine Warnung anzeigt, dass die zu startende Software von einem deinstallierten Entwickler stammt, müssen Sie den Start in den Systemeinstellungen bestätigen: Systemeinstellungen -> Sicherheit und Datenschutz -> Auf jeden Fall öffnen ;
  • Wenn macOS nach einem Benutzerkennwort und der Berechtigung zur Steuerung des Computers fragt, müssen Sie ein Kennwort eingeben und mit allem einverstanden sein.

1. Installieren Sie CryptoPro CSP


Wir registrieren uns auf der CryptoPro-Website und laden die CryptoPro CSP 4.0 R4- Version für macOS von der Download-Seite herunter und installieren sie.


2. Installieren Sie Rootoken-Treiber


Die Website sagt, dass es optional ist, aber es ist besser zu liefern. Laden Sie von der Download-Seite auf der Rutoken-Website das KeyChain-Support-Modul herunter und installieren Sie es - Download .


Verbinden Sie als Nächstes das USB-Token, führen Sie das Terminal aus und führen Sie den folgenden Befehl aus:


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

Die Antwort sollte lauten:


Aktiv Rutoken ...
Karte vorhanden ...
[ErrorCode: 0x00000000]

3. Installieren Sie die Zertifikate


3.1. Wir löschen alle alten GOST-Zertifikate


Wenn zuvor versucht wurde, CEP unter macOS auszuführen, müssen Sie alle zuvor installierten Zertifikate bereinigen. Diese Befehle im Terminal entfernen nur CryptoPro-Zertifikate und wirken sich nicht auf normale Zertifikate aus dem Schlüsselbund unter macOS aus.


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

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

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

Die Antwort jedes Befehls sollte sein:


Kein Zertifikat, das den Kriterien entspricht

oder


Löschen abgeschlossen

3.2. Installieren Sie Stammzertifikate


Stammzertifikate sind allen CEPs gemeinsam, die von einer Zertifizierungsstelle ausgestellt wurden. Download von der Download-Seite des Bundesministeriums für Kommunikation im Ural :



Installieren Sie die folgenden Befehle im Terminal:


 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 

Jedes Team sollte zurückkehren:


Installation:
...
[ErrorCode: 0x00000000]

3.3. Laden Sie die Zertifikate des Zertifizierungszentrums herunter


Als Nächstes müssen Sie die Zertifikate der Zertifizierungsstelle installieren, bei der Sie die CEP ausgestellt haben. In der Regel befinden sich die Stammzertifikate jeder Zertifizierungsstelle auf ihrer Website im Downloadbereich.


Alternativ können Zertifikate einer CA von der Website des Ural-Bundesdistrikts des Kommunikationsministeriums heruntergeladen werden. Dazu müssen Sie im Suchformular die Zertifizierungsstelle anhand ihres Namens suchen, zur Seite mit den Zertifikaten gehen und alle gültigen Zertifikate herunterladen , dh diejenigen, deren zweites Datum noch nicht im Feld "Gültig" angekommen ist. Laden Sie den Link aus dem Feld "Impressum" herunter.


Screenshots



Am Beispiel von CA Corus Consulting: Sie müssen 4 Zertifikate von der Download-Seite herunterladen :



Wir installieren die heruntergeladenen CA-Zertifikate mit den Befehlen vom Terminal:


 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 

Dabei stehen nach ~ / Downloads / die Namen der heruntergeladenen Dateien für jede Zertifizierungsstelle.


Jedes Team sollte zurückkehren:


Installation:
...
[ErrorCode: 0x00000000]

3.4. Installieren Sie das Zertifikat mit Rutoken


Befehl im Terminal:


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

Das Team muss zurückkehren:


OK
[ErrorCode: 0x00000000]

3.5. Konfigurieren Sie CryptoPro für die Arbeit mit GOST R 34.10-2012-Zertifikaten


Um mit nalog.ru mit seit 2019 ausgestellten Zertifikaten ordnungsgemäß zu arbeiten, wird in den Anweisungen auf der CryptoPro-Website Folgendes empfohlen:


Befehle im Terminal:


 sudo /opt/cprocsp/sbin/cpconfig -ini '\cryptography\OID\1.2.643.7.1.1.1.1!3' -add string 'Name' 'GOST R 34.10-2012 256 bit' 

 sudo /opt/cprocsp/sbin/cpconfig -ini '\cryptography\OID\1.2.643.7.1.1.1.2!3' -add string 'Name' 'GOST R 34.10-2012 512 bit' 

Teams geben nichts zurück.


4. Installieren Sie den speziellen Browser Chromium-GOST


Um mit Regierungsportalen arbeiten zu können, benötigen Sie eine spezielle Baugruppe des Chrom-Browsers - Chromium-GOST . Der Quellcode des Projekts ist offen, ein Link zum Repository auf GitHub finden Sie auf der CryptoPro-Website . Erfahrungsgemäß eignen sich andere Browser CryptoFox und Yandex.Browser nicht für die Arbeit mit Regierungsportalen für macOS. Es ist zu beachten, dass in einigen Assemblys von Chromium-GOST das persönliche Konto auf nalog.ru möglicherweise einfriert oder die Schriftrolle im Allgemeinen nicht mehr funktioniert. Daher wird vorgeschlagen , die alte bewährte Assembly 71.0.3578.98 herunterzuladen .


Laden Sie das Archiv herunter und entpacken Sie es, installieren Sie den Browser durch Kopieren oder Ziehen und Ablegen in das Anwendungsverzeichnis. Schließen Sie Chromium-Gost nach der Installation mit einem Befehl vom Terminal und öffnen Sie es noch nicht (wir arbeiten von Safari aus):


 killall Chromium-Gost 

5. Installieren Sie die Browsererweiterungen


5.1 CryptoPro EDS Browser Plug-In


Laden Sie von der Download-Seite auf der CryptoPro-Website das CryptoPro EDS Browser-Plug-In Version 2.0 für Benutzer herunter und installieren Sie es - laden Sie es herunter .


5.2. Plugin für Regierungsdienste


Laden Sie von der Download-Seite im Gosuslug-Portal das Plugin herunter und installieren Sie es für die Arbeit mit dem Government Services Portal (Version für macOS) - Download .


5.3. Richten Sie ein Plugin für öffentliche Dienste ein


Laden Sie die richtige Konfigurationsdatei für die Erweiterung von Regierungsdiensten herunter , um macOS und neue digitale Signaturen im Standard-GOST2012- Download zu unterstützen .


Wir führen Befehle im Terminal aus:


 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. Erweiterungen aktivieren


Wir starten den Chromium-Gost-Browser und geben in die Adressleiste Folgendes ein:


 chrome://extensions/ 

Wir enthalten beide installierten Erweiterungen:


  • CryptoPro-Erweiterung für das CAdES-Browser-Plug-In
  • Erweiterung für das Plugin für öffentliche Dienste

Screenshot


5.5. Wir konfigurieren die Erweiterung CryptoPro EDS Browser Plug-In


In die Adressleiste von Chromium-Gost geben wir Folgendes ein:


 /etc/opt/cprocsp/trusted_sites.html 

Auf der angezeigten Seite fügen wir die Websites der Reihe nach der Liste der vertrauenswürdigen Websites hinzu:


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

Klicken Sie auf "Speichern". Ein grüner Würfel sollte erscheinen:


Die Liste der vertrauenswürdigen Sites wurde erfolgreich gespeichert.

Screenshot


6. Überprüfen Sie, ob alles funktioniert


6.1. Wir gehen zur Testseite CryptoPro


In die Adressleiste von Chromium-Gost geben wir Folgendes ein:


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

"Plugin geladen" sollte angezeigt werden und Ihr Zertifikat sollte in der Liste unten stehen.
Wählen Sie ein Zertifikat aus der Liste aus und klicken Sie auf "Signieren". Die Zertifikat-PIN wird angefordert. Das Ergebnis sollte angezeigt werden


Signatur erfolgreich generiert

Screenshot


6.2. Wir gehen in das persönliche Konto auf nalog.ru


Es ist möglicherweise nicht möglich, den Links von der Website nalog.ru zu folgen, weil Schecks werden nicht bestanden. Sie müssen zu direkten Links gehen:



Screenshot


6.3. Wir gehen zu öffentlichen Diensten


Wählen Sie während der Autorisierung "Mit elektronischer Signatur anmelden". In der angezeigten Liste "Wählen Sie ein Zertifikat für einen Verifizierungsschlüssel für die elektronische Signatur aus" werden alle Zertifikate angezeigt, einschließlich Root und Zertifizierungsstelle. Sie müssen Ihre Zertifikate aus dem USB-Token auswählen und die PIN eingeben.


Screenshot



7. Was tun, wenn es nicht mehr funktioniert?


  1. Wir verbinden das USB-Token erneut und überprüfen, ob es sichtbar ist, indem wir den Befehl im Terminal verwenden:


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

  2. Wir leeren den Browser-Cache für die ganze Zeit, für die wir die Adressleiste von Chromium-Gost eingeben:


      chrome://settings/clearBrowserData 

  3. Installieren Sie das CEP-Zertifikat mit dem Befehl im Terminal neu:


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


Container-PIN ändern


Der Standard-PIN-Code für Rutoken lautet 12345678 und kann nicht als solcher belassen werden. Anforderungen für den Rootoken-PIN-Code: max. 16 Zeichen, Kann lateinische Buchstaben und Zahlen enthalten.


1. Ermitteln Sie den Namen des Container-CEP


Auf dem USB-Token und in anderen Speichern können mehrere Zertifikate gespeichert werden, und Sie müssen das richtige auswählen. Mit dem eingefügten USB-Token erhalten wir eine Liste aller Container im System mit dem Befehl im Terminal:


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

Das Team muss mindestens 1 Container herausbringen und zurückgeben


[ErrorCode: 0x00000000]

Der Container, den wir brauchen, hat die Form


\. \ Aktiv Rutoken lite \ XXXXXXXX

Wenn mehrere solcher Container vorhanden sind, bedeutet dies, dass mehrere Zertifikate auf das Token geschrieben sind und Sie wissen, welches Sie benötigen. Der Wert XXXXXXXX nach dem Schrägstrich muss kopiert und in den folgenden Befehl eingesetzt werden.


2. Ändern Sie den PIN-Befehl vom Terminal


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

Dabei ist XXXXXXXX der in Schritt 1 erhaltene Containername (in Anführungszeichen erforderlich).


Ein CryptoPro-Dialogfeld wird angezeigt, in dem Sie nach dem alten PIN-Code für den Zugriff auf das Zertifikat gefragt werden. Anschließend wird ein weiteres Dialogfeld zur Eingabe eines neuen PIN-Codes angezeigt. Fertig.


Screenshot


Signieren von Dateien unter macOS


Unter macOS können Dateien in der CryptoArm- Software (Lizenzkosten 2500 = Rubel) oder mit einem einfachen Befehl über das Terminal kostenlos signiert werden.


1. Finden Sie den Hash des CEP-Zertifikats heraus


Auf dem Token und in anderen Speichern können sich mehrere Zertifikate befinden. Es ist notwendig, denjenigen eindeutig zu identifizieren, mit dem wir weiterhin Dokumente unterzeichnen werden. Es wird einmal gemacht.
Token muss eingefügt werden. Wir erhalten die Liste der Zertifikate in den Repositorys mit dem Befehl vom Terminal:


 /opt/cprocsp/bin/certmgr -list 

Das Team muss mindestens 1 Zertifikat des Formulars vorweisen:


Certmgr 1.1 © "Crypto-Pro", 2007-2018.
Programm zur Verwaltung von Zertifikaten, CRLs und Filialen
= = = = = = = = = = = = = = = = = = = = =
1 -------
Emittent: E = help @ esphere.ru, ... CN = KORUS Consulting CIS LLC ...
Betreff: E = sergzah @ gmail.com, ... CN = Zakharov Sergey Anatolyevich ...
Seriennummer: 0x00000000000000000000000000000000000000
SHA1 Hash: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
...
Container: SCARD \ rutoken_lt_00000000 \ 0000 \ 0000
...
= = = = = = = = = = = = = = = = = = = = =
[ErrorCode: 0x00000000]

Das Zertifikat, das wir im Parameter Container benötigen, sollte den Wert SCARD \ rutoken haben .... Wenn es mehrere Zertifikate mit solchen Werten gibt, bedeutet dies, dass mehrere Zertifikate auf das Token geschrieben sind und Sie wissen, welches Sie benötigen. Der Wert des SHA1-Hash- Parameters (40 Zeichen) muss kopiert und in den folgenden Befehl eingesetzt werden.


2. Signieren einer Datei mit einem Befehl vom Terminal


Wechseln Sie im Terminal in das Verzeichnis mit der zu signierenden Datei und führen Sie den folgenden Befehl aus:


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

Dabei ist ... der in Schritt 1 erhaltene Zertifikat-Hash und FILE der Name der zu signierenden Datei (mit allen Erweiterungen, jedoch ohne Pfad).


Das Team muss zurückkehren:


Signierte Nachricht wird erstellt.
[ErrorCode: 0x00000000]

Eine elektronische Signaturdatei mit der Erweiterung * .sgn wird erstellt - dies ist eine nicht verbundene Signatur im CMS-Format mit DER-Codierung.


3. Installieren Sie Apple Automator Script


Um nicht jedes Mal mit dem Terminal zu arbeiten, können Sie Automator Script einmal installieren, mit dem Sie Dokumente über das Finder-Kontextmenü signieren können. Laden Sie dazu das Archiv herunter - download .


  1. Entpacken Sie das Archiv 'Mit CryptoPro.zip signieren'
  2. Starten Sie Automator
  3. Suchen und öffnen Sie die entpackte Datei 'Mit CryptoPro.workflow signieren'.
  4. Im Block " Shell-Skript ausführen" ändern wir den Text in den Wert des SHA1-Hash- Parameters des oben erhaltenen CEP-Zertifikats.
  5. Speichern Sie das Skript: ⌘Befehl + S.
  6. Führen Sie die Datei 'Mit CryptoPro.workflow signieren' aus und bestätigen Sie die Installation.
  7. Gehen Sie zu Systemeinstellungen -> Erweiterungen -> Finder und überprüfen Sie, ob die Schnellaktion Mit CryptoPro signieren aktiviert ist.
  8. Rufen Sie im Finder das Kontextmenü einer beliebigen Datei auf und wählen Sie im Abschnitt Schnellaktionen und / oder Dienste die Option Mit CryptoPro signieren aus
  9. Geben Sie im angezeigten CryptoPro-Dialogfeld die Benutzer-PIN aus dem CEP ein
  10. Eine Datei mit der Erweiterung * .sgn wird im aktuellen Verzeichnis angezeigt - eine nicht verbundene Signatur im CMS-Format mit DER-Codierung.

Screenshots

Apple Automator-Fenster:


Systemeinstellungen:


Kontextmenü Finder:



Überprüfen Sie die Unterschrift auf dem Dokument


Wenn der Inhalt des Dokuments keine Geheimnisse und Geheimnisse enthält, ist es am einfachsten, den Webdienst auf dem Gosuslug-Portal zu verwenden - https://www.gosuslugi.ru/pgu/eds . Sie können also einen Screenshot von einer maßgeblichen Ressource erstellen und sicherstellen, dass mit einer Signatur alles in Ordnung ist.


Screenshots


Source: https://habr.com/ru/post/de450516/


All Articles