Mehrere PDF-Spezialisten oder entsprechende Bibliotheken auf dem Markt können signierte Hash-Werte in PDF-Dokumente einbetten.
Hier finden Sie eine Auswahl von PDF-Bibliotheksanbietern, die die Signing Service API implementiert haben:
- Blocksigner, Schweiz (Skribble.com): https://api.skribble.com/swagger-ui.html
- Intarsys, Deutschland: OnPremise Signier-Software "Sign Live! cloud suite gears": https://www.intarsys.de/produkte/fernsignatur
- iText, Belgien: https://itextpdf.com/products/product-tour. Swisscom Trust Services verwendet iText in seinen Beispielen. Diese Beispiele sind jedoch nicht aktualisiert, da sich einige Funktionalitäten geändert haben. Aber die grundsätzliche Handhabung ist dort zu sehen.
- Swisscom verwendet iText in seinen Beispielen, aber die Beispiele sind «veraltet», d. h. einige Funktionalitäten haben sich geändert. Die grundsätzliche Handhabung ist dort jedoch ersichtlich: GitHub Swisscom Trust Services
- PDF-Tools, Schweiz: 3-Heights PDF Suite: http://www.pdf-tools.com/pdf20/de/produkte/pdf-security-signature/pdf-security/
- Setasign, Deutschland: PHP-Bibliothek, SetaPDF: https://www.setasign.com/products/setapdf-signer/demos/swisscom-all-in-signing-service/
Wenn Sie den signierten Hash in Ihrer Signaturanwendung selbst implementieren möchten, müssen Sie den Platz für die Signatur vorberechnen. Bitte besuchen Sie Swisscom Trust Services Github für weitere Informationen.
Die folgenden Schritte können Ihnen helfen, einen signierten Hash einzubetten:
- Erstellen Sie ein PDF mit einem leeren und vorausgefüllten Signaturfeld
- Der Byte-Bereich sollte mit Nullen bis zur erwarteten Grösse aufgefüllt werden
- Berechnen Sie den Hash-Wert des Dokuments
- Signieren Sie den Hash mit dem Signierdienst
- Füllen Sie den signierten Hash in das leere Signaturfeld ein
- Iterieren Sie bis zum leeren Signaturfeld
- Ermitteln Sie den Byte-Bereich des leeren Signaturfeldes
- Berechnen Sie den Offset des Bytebereichs
- Öffnen Sie das Dokument mit dem leeren Signaturfeld im Lese-/Schreibmodus und ermitteln Sie den Offset, an dem der Hash eingefügt wurde.
Damit Sie es wissen, wir garantieren nicht für die Korrektheit dieses Verfahrens, da Swisscom sich nicht auf die Einrichtung einer Kunden-Signaturanwendung konzentriert.