CIB doXisign technischer Leitfaden

Site: CIB eLearning
Course: CIB doXisign
Book: CIB doXisign technischer Leitfaden
Printed by: Guest user
Date: Thursday, 21 November 2024, 7:07 PM

1. Lieferumfang

CIB doXisign wird in Form einer einzelnen Datei namens doxisign-<version>.zip geliefert. Diese enthält:

Dateiname

Erläuterung

doxisign.war

CIB doXisign als Java Web application archive

 

Dieselbe war-Datei ist für Linux/Solaris/AIX und für Windows geeignet. Mit dieser war-Datei allein ist CIB doXisign bereits in einem Servlet-Container wie Tomcat lauffähig.


2. Überblick

CIB doXisign ist eine Web Applikation mit einem clientseitigen und einem serverseitigen Anteil.

Die Serverseite übernimmt im Wesentlichen die folgenden Aufgaben:

  • Verwaltung von laufenden Signaturprozessen
  • Digitales Signieren von Dokumenten
  • Konfiguration eigener Zertifikate
  • Optional: Ansteuerung einer Time Stamp Authoritiy für signierte Zeitstempel
  • Optional: Erstellen eines Signaturverlaufsprotokolls
  • Optional: Authentifizierung der Benutzers

Die Clientseite übernimmt folgende Aufgaben:

  • Öffnen des Signaturpads für den Unterzeichnenden.
  • Entgegennahme des Unterschriftenbildes (Touchpad, Maus, Schrift, Bild)
  • Optional: Entgegennahme eines persönlichen Zertifikates
  • Optional: Möglichkeit ein mobiles Endgerät mit dem Signaturprozess zu verbinden.
  • Optional: Eingabe der Benutzerdaten für die Authentifizierung

In diesem Bereich werden die Funktionen nur knapp beschrieben, eine detaillierte Auflistung aller Möglichkeiten findet sich im Bereich „REST SCHNITTSTELLE“

2.1. Signaturprozess

Ein Dokument kann grundsätzliche mehrere Unterschriftenfelder besitzen. Diese Felder sollten innerhalb eines Signaturprozesses unterschrieben werden.

Wird ein Signaturprozess zum Unterschreiben aller Signaturfelder wiederverwendet, nennen wir ihn dokumentbasiert. Genauso kann aber auch für jedes Signaturfeld ein neuer Signaturprozess erzeugt werden. Diese Prozesse sind dann inhaltlich signaturfeldbasiert.

Die Auswahl eines dokumentbasierten oder signaturfeldbasierten Ablaufszenarios wirkt sich wie folgt aus:

  • Speicherung von prozessbezogenen Daten in der integrierenden Applikation: Beim dokumentbasierten Ablaufszenario muss sich die aufrufende Anwendung die Prozess-ID merken, damit der Prozess pro Unterschriftenfeld wiederverwendet werden kann. Beim signaturfeldbasierten Ablaufszenario muss sich die integrierende Anwendung keinerlei Daten zum Signaturprozess merken.
  • Signaturverlaufsprotokolle: Bei der Erstellung von Signaturverlaufsprotokollen, ist beim dokumentbasierten Ablaufszenario einem Dokument nur ein Protokoll zugeordnet, wohingegen beim signaturfeldbasierten Szenario einem Dokument mehrere Protokolle zugeordnet werden müssen.

Außerdem kann festgelegt werden welche Angaben der Unterzeichner machen bzw. welche Daten er verifizieren muss.

2.2. Signatur-Session

Eine Signatur-Session bezeichnet den Vorgang des Unterschreibens von einem Signaturfeld im Dokument. Signatur-Sessions werden durch die integrierende Anwendung von CIB doXisign für einen Signaturprozess erzeugt. Das aufrufende System kann beim Erstellen der Session Daten zum Benutzer mitliefern. Diese dienen im Wesentlichen dazu die Unterschrift des Benutzers zu speichern und doppelte Authentifizierung zu Vermeiden.


2.3. Signatur-Token

Dieses Token wird zusätzlich mit der Unterschrift, dem Zeitstempel und dem hinterlegten Zertifikat in das Dokument sichtbar eingemischt.


Hintergrund: Die meisten Dokumente sind nur dann erreichbar, wenn man sich in einem führenden System authentifiziert. Um das Dokument unterzeichnen zu können, sind dann ein Benutzerkonto und ein erfolgreiches Einloggen vorausgesetzt. Beim Starten der Signatur-Session kann nun optional die technische ID des verwendeten Accounts mitgegeben werden. Diese wird sichtbar in das Dokument eingemischt und bietet einen weiteren Hinweis auf den tatsächlichen Unterzeichner. Dieser Token kann von einem Benutzer mit seinem Namen überschrieben werden.

3. Serverseitige REST-Schnittstelle

Dieser Bereich beschreibt die Schnittstellen von doXisign und dessen angebotene Optionen. Sollten Sie doXisign über ein anderes Produkt der CIB Unternehmensgruppe einbinden, in der Regel CIB. doXiview, ist dieser Bereich für Sie weniger relevant. In dem Fall können Sie hier die verfügbaren Optionen und Erklärungen einsehen, für die technische Ansteuerung der Schnittstelle prüfen Sie bitte die Dokumentation des Produktes welches Sie einbinden.


3.1. Signaturprozess starten

Post

<baseUrl>/rest/process/create

File

Das PDF welches Unterschrieben werden soll. Es muss mindestens ein Signaturfeld besitzen und mehrere Signaturfelder dürfen nicht die gleiche ID haben.

sealDocument

Legt fest ob das Dokument nach der Unterschrift versiegelt werden soll, dadurch können keine Änderungen mehr gemacht werden (z. B. Formularfelder ausfüllen). Aktuell sind die Werte „FirstSignature“ und „NoSeal“ (default) erlaubt.

requireName

Legt fest ob der Unterzeichner seinen Namen eingeben muss (dieser wird nicht verifiziert)

requireMail

Legt fest ob der Unterzeichner seine E-Mail-Adresse angeben muss. Diese wird dann Verifiziert indem eine E-Mail mit einem verifikationslink an die Angegebene Adresse gesendet wird.

requireSms

Legt fest ob der Unterzeichner seine Handynummer angeben muss. Diese wird dann Verifiziert indem eine SMS mit einem Code an die angegebene Nummer gesendet wird. Dieser Code muss in einem Folgeschritt eingegeben werden.

return

JSON mit der generierten Prozess-ID welche für alle anderen aufrufe benötigt wird.

 

Es kann keine Unterschrift geleistet werden solange die benötigten Angaben (requireName, requireMail, requireSms) nicht gemacht und Verifiziert wurden. Diese Voraussetzung gilt für alle Unterschriften auf diesem Dokument.

Sollten diese optionalen Angaben fehlen werden die Standardeinstellungen (siehe Konfiguration) benutzt.


3.2. Signatur-Session starten

Innerhalb des erzeugten Prozesses kann für jedes Signaturfeld eine Signatur-Session zum Unterschreiben gestartet werden.

Post

<baseUrl>/rest/ process/{processId}/prepare

Signaturfeld-Name

Der Name des zu unterschreibenden Signaturfeldes.

Signatur-Token (optional)

Ein maximal 32 Zeichen langes Text-Token, welches an CIB doXisign zum Einmischen einer Unterschrift mitgegeben wird und zusätzlich zu dem Bild der Signatur im Dokument erscheinen wird. Falls ein userName vorhanden ist wird dieser verwendet.

userId (optional)

Der Eindeutige Identifier des Unterzeichners sofern dieser bekannt ist. Wenn die userId gesetzt wurde wird auch die Unterschrift zusammen mit weiteren Daten (z. B. Authentifizierungsdaten) gespeichert und kann wiederverwendet werden.

skipDialog (optional)

Boolischer Wert der angibt ob das Unterschriftfenster übersprungen werden soll. Funktioniert nur mit einer userId. Sollte der Benutzer noch keine Unterschrift gespeichert haben oder benötigte Authentifizierungen fehlen wird das Unterschriftenfenster trotzdem angezeigt.

userName (optional)

Der Name des Unterzeichners (siehe Signatur Token). Kann nur in Verbindung mit der userId verwendet werden.

userMail (optional)

Die Authentifizierte E-Mail-Adresse des Unterzeichners, kann nur in Verbindung mit der userId verwendet werden.

userMailAuthenticatedBy (optional)

Von welchem Service die E-Mail-Adresse (siehe userMail) verifiziert wurde.

userPhone (optional)

Die Authentifizierte Handynummer des Unterzeichners, kann nur in Verbindung mit der userId verwendet werden.

userPhoneAuthenticatedBy (optional)

Von welchem Service die Handynummer (siehe userPhone) verifiziert wurde.

certificate (optional)

Ein persönliches Zertifikat des Unterzeichners das mit der Unterschrift verknüpft werden soll. Aktuell werden nur PKCS #12 Zertifikate (.p12 / .pfx) unterstützt. Kann nur in Verbindung mit der userId verwendet werden.

certPassword (optional)

Das Passwort für das Zertifikat (siehe certificate).

return

JSON mit der URL zum Unterschriftenfenster. Dies URL sollte i. d. R. per IFrame eingebunden werden.


3.3. Dokument Abholen

Die Kommunikation nach dem Unterschreiben des Dokumentes geschieht am Client über JavaScript-Callbacks. Dort wird der Integrator darüber informiert, dass eine neue Unterschrift geleistet wurde. Zusätzlich bekommt er die Information, ob das Dokument bereits vollständig signiert ist.

Wenn das Dokument noch nicht vollständig signiert ist und der Prozess dokumentbasiert ist, sollte die Download-Schnittstelle aufgerufen werden, um das Dokument als Zwischenstand abzuholen. 

GET

<baseUrl>/rest/process/{processId}/document

return

Das aktuelle Dokument das unter dieser Prozess ID Abgelegt ist mit allen Unterschriften die bis jetzt geleistet wurden.


3.4. Prozess beenden

Soll der Prozess beendet werden bevor alle Signaturfelder unterschrieben wurden, z. B. Fristablauf, kann diese Schnittstelle aufgerufen werden. Sobald der Prozess beendet wurde kann keine Unterschrift mehr geleistet werden,

GET

<baseUrl>/rest/process/{processId}/finish

return

Das aktuelle Dokument das unter dieser Prozess ID Abgelegt ist mit allen Unterschriften die geleistet wurden.


3.5. Audit trail

Um sich ein Verlaufsprotokoll zu dem Prozess (Audit Trail) abzuholen, nutzen Sie bitte folgende REST-Schnittstelle:

GET

<baseUrl>/rest/process/{processId}/audit

return

Den aktuellen Audittrail (Verlaufsprotokoll) als Dokument.

 


3.6. Audit Trail Daten

Alle gesammelten Daten können auch in einer JSON-basierten Datenstruktur abgeholt werden. In diesem Fall nutzen Sie bitte den folgenden Aufruf:

GET

<baseUrl>/rest/process/{processId}/audit-data

return

Liefert alle gespeicherten Daten des Audit-Trails im JSON Format.

 


4. Datenbank

Aktuell werden nur PostgreSQL Datenbanken unterstützt. Sollte eine andere Datenbank unterstützt werden wenden Sie sich an einen Mitarbeiter des CIB Vertriebs.

Folgende Tabellen werden aktuell für CIB doXisign benötigt, diese werden beim Starten des Servers automatisch erstellt. Sollten Sie aber eine neue Version aufspielen prüfen Sie bitte ob die Datenbank geändert wurde, diese Änderungen müssen ggf. manuell durchgeführt werden. Sollten Sie sich unsicher sein oder Fragen hierbei haben unterstützen wir Sie gerne.


4.1. Tabelle: doxisignprocess

Hier werden alle Informationen über den Prozess gespeichert.

doxisignprocess

Spalten Name

Datentyp

Bedeutung

id

varchar(255)

Dieses Feld ist der Primary Key der Tabelle. Es ist gleichzeitig die Prozess ID mit der z. B. das Dokument heruntergeladen werden kann.

finished

boolean

Gibt an ob der Prozess beendet ist, dann können auch keine Änderungen mehr gemacht werden.

requiremail

boolean

Legt fest ob der Unterzeichner eine E-Mail Adresse angeben und diese verifizieren muss.

requirename

boolean

Legt fest ob der Unterzeichner seinen Namen angeben muss.

requiresms

boolean

Legt fest ob der Unterzeichner eine Handynummer angeben und diese verifizieren muss.

sealdocumentstrategy

varchar(50)

Legt fest ob und wie das Dokument versiegelt werden soll.

document

bytea

Das zum Prozess gehörende Dokument.

created

timestamp without time zone

Dieses Feld muss mit „default now()“ gesetzt sein. Dies wird für den Cleanup Service verwendet.


4.2. Tabelle: doxisignaudittraildata

Hier werden alle Daten für den Audit Trail gespeichert.

doxisignaudittraildata

Spalten Name

Datentyp

Bedeutung

id

serial

Dieses Feld ist der automatisch generierte Primary Key der Tabelle.

processid

varchar(255)

Die Prozess ID zu dem dieser Eintrag gehört.

action

varchar(100)

Zeigt an welche Aktion durchgeführt wurde.

created

timestamp without time zone

Dieses Datum wird von doXisign gesetzt. Dies entspricht der Anzeige in der Unterschrift.

ipadresscaller

varchar(50)

Die IP-Adresse des Aufrufers der diese Aktion ausgelöst hat.

dbentrycreated

timestamp without time zone

Dieses Feld muss mit „default now()“ gesetzt sein. Dieses Feld hat keine nähere Bedeutung und wird nur dient nur der zusätzlichen Sicherheit.

additionaldata

text

Alle Daten die für nicht für jede Aktion vorhanden sind können hier angegeben werden. Diese werden im JSON Format als Key-Value paare gespeichert.


4.3. Tabelle: doxisignaudittrail

Hier wird der Finale Audit Trail gespeichert. Dieser wird einmalig generiert beim Beenden des Prozesses.

doxisignaudittrail

Spalten Name

Datentyp

Bedeutung

id

varchar(255)

Dieses Feld ist der Primary Key der Tabelle. Hierbei handelt es sich um die Prozess ID

audittrail

bytea

Der Audit Trail im PDF Format.

 


4.4. Tabelle: doxisignsignatures

Hier werden alle Daten des Unterzeichners gespeichert.

doxisignsignatures

Spalten Name

Datentyp

Bedeutung

userid

varchar(100)

Dieses Feld ist der Primary Key der Tabelle. Es ist die Benutzer ID welche vom führenden System übergeben wurde.

dbentrycreated

timestamp without time zone

Dieses Feld muss mit „default now()“ gesetzt sein.

signature

bytea

Die Signatur des Unterzeichners.

certificate

bytea

Das Persönliche Zertifikat des Benutzers.

certificatepassword

varchar(255)

Das verschlüsselte Passwort für das Zertifikat.

name

varchar(100)

Der Name des Unterzeichners.

confirmed_mail

varchar(255)

Die verifizierte E-Mail Adresse des Unterzeichners.

confirmed_mail_by

varchar(50)

Von wem die E-Mail Adresse verifiziert wurde.

confirmed_phone

varchar(50)

Die verifizierte Handynummer des Unterzeichners

confirmed_phone_by

varchar(50)

Von wem die Handynummer verifiziert wurde.

generated_cert

boolean

Gibt an ob das hinterlegte Zertifikat von doXisign generiert wurde (true) oder ob es vom Benutzer hochgeladen wurde (false)


5. Konfiguration

Der Konfigurationsmechanismus von CIB doXisign beruht auf bis zu drei Konfigurationsdateien:

Konfigurationsdatei

Beschreibung

application.properties

Diese Konfigurationsdatei befindet sich innerhalb des .war Archivs (WEB-INF/classes) und definiert alle möglichen Konfigurationseinstellungen und dessen Default-Werte.

Änderungen sind in dieser Datei grundsätzlich nicht vorzunehmen!

environment-config.properties

Diese Konfigurationsdatei befindet sich ebenfalls innerhalb des .war Archivs (WEB-INF/classes). Abweichungen von den Standardeinstellungen können hier eingetragen werden.

doxisign.properties

 

Diese Konfigurationsdatei dient ebenfalls zum Überschreiben der Standardeinstellungen. Darüber hinaus sollte diese Datei außerhalb des .war Archivs platziert werden.


5.1. Benötigte Konfigurationen

Tragen Sie bitte die folgenden Konfigurationseinstellungen vor dem ersten Deployment in der Datei environment-config.properties innerhalb des WAR Archivs ein. Später können Sie diese Datei externalisieren.

Konfigurationseinstellung

Beschreibung

doxisign.url

Die URL ist aus Sicht des CIB doXisign Clients anzugeben. Sie wird also von Client Rechnern gerufen werden.

doxisign.workspace

Aktuell verfügbare Optionen sind „file“ oder „POSTGRESQL“. Entsprechend dieser Angabe müssen auch Angaben zur Datenbankverbindung oder zum Filesystem gemacht werden.

doxisign.fs.root

Wenn sie für „doxisign.workspace=file“ festgelegt haben sollten Sie unbedingt einen persistenten Ort für den Workspace konfigurieren. (Default ist das temporäre Verzeichnis für Java-Applikationen).

doxisign.db.url

Die URL unter der die Datenbank aus Sicht des Servers erreicht werden kann.

doxisign.db.user

Der Benutzer mit dem doXisign auf die Datenbank zugreifen soll.

doxisign.db.password

Das entsprechende Passwort für den Benutzer.


5.2. Optionale Konfigurationen

Diese Angaben sind Optional zu machen wenn Sie Abweichungen gegenüber den Defaults haben wollen. 

Konfigurationseinstellung

Beschreibung

document.server.host (optional)

Wenn zusätzlich ein Signaturverlaufsprotokoll erstellt werden soll und Sie einen CIB documentServer betreiben, kann dieser ebenfalls hinterlegt werden.

document.server.port (optional)

doxisign.audittrail

Um das Signaturverlaufsprotokoll zu aktiveren muss dieser Schalter auf „true“ gesetzt werden und zusätzlich ein Document Server (siehe oben) eingerichtet sein.

doxisign.date.format

Legt das Datumsformat fest wie es in der Unterschrift und im Audit Trail angezeigt wird. (Default: dd.MM.yyyy HH:mm:ss)

doxisign.cleanup.age

Legt die Zeitdauer fest nachdem offene Prozesse gelöscht werden (Zeitpunkt ab Erstellung). (Default: 30d)

ntp.url

Gibt die NTP-Server URL an von wo der Zeitstempel geladen werden soll.

tsa.url

Gibt die URL eines TSA Servers an. Wenn diese URL angegeben ist muss auch ein User mit Passwort hinterlegt werden. Die Unterschrift wird dann von der TSA verifiziert.

tsa.user

Benutzerdaten für den Angegebenen TSA Server.

tsa.password

auth.requirements.name

Standardeinstellung ob der Unterzeichner seinen Namen eingeben muss. (Default: false)

auth.requirements.mail

Standardeinstellung ob der Unterzeichner seine E-Mail-Adresse eingeben und verifizieren muss. (Default: false)

auth.requirements.sms

Standardeinstellung ob der Unterzeichner seine Handynummer eingeben und verifizieren muss. (Default: false)

signpad.toolbar.draw.show

Dieses Setting legt fest ob die Option „Zeichnen“ in der Toolbar angezeigt werden soll.

signpad.toolbar.draw.
onlyallowtouch

Mit dieser Option kann das Zeichnen der Unterschrift mit der Maus unterbunden werden. Dafür diesen Schalter auf „true“ setzen.

signpad.toolbar.keyboard.
show

Dieses Setting legt fest ob die Option „Tastatur eingabe“ in der Toolbar angezeigt werden soll.

signpad.toolbar.upload.
show

Dieses Setting legt fest ob die Option „Unterschrift hochladen“ in der Toolbar angezeigt werden soll.

signpad.toolbar.qr.show

Dieses Setting legt fest ob die Option „QR Code“ in der Toolbar angezeigt werden soll.

mail.server

Die URL für einen E-Mail Server. Falls eine E-Mail Authentifizierung gewünscht ist muss auch ein E-Mail Server konfiguriert werden.

mail.sender.address

Gibt an welcher Absender für die Verifizierung E-Mail verwendet wird.

mail.sender.name

Gibt an welcher Name für die Verifizierung E-Mail verwendet wird.

mail.subject

Der Betreff der bei der Verifizierung -E-Mail verwendet wird

sms.text

Der Text der für die Handynummer Verifizierung versendet wird. Es muss „%s“ in dem Text Vorkommen an dem der Verifikationscode eingefügt wird.

sms.massenversand.authtoken

Um über Massenversand eine SMS versenden zu können muss ein Api-Authtoken angegeben werden.

sms.massenversand.testmode

Um Kosten zu senken kann man für Massenversand einen Testmodus aktivieren. Es wird keine SMS versendet, die übergebene Nummer aber trotzdem validiert. Für den SMS Code kann man einen beliebigen Code eingeben. Der default Wert ist „false“, für den Live-Betrieb muss dieser Wert also geändert werden.

doxisign.frame.color

Legt die Farbe des Rahmens der Signatur fest. Datum und Signature Token werden ebenfalls in dieser Farbe angezeigt. Die Farbe ist in Hexadezimal anzugeben (z. B. #ffffff). Der Default wert ist #961e29

 

Nachdem CIB doXisign auf Ihrem System läuft, schenken sie bitte zwecks Konfiguration auch den Kapiteln (Zertifikate und Zeitstempel) noch einmal ihre Aufmerksamkeit.

5.3. Externalisierung der Konfiguration

Um das Deployment von Software Updates zu erleichtern, ist es möglich, eine externe Konfigurations-Datei einzubinden. Dort können Konfigurationen außerhalb des .war Archivs verwaltet werden.

Folgende Dinge müssen bei der Externalisierung der Konfiguration beachtet werden:

  1. Der Name der externen Konfigurations-Datei ist doxisign.properties.
  2. Die Datei doxisign.properties muss sich im Classpath des JEE Servlet-Container befinden. Um beispielsweise den Classpath des Apache Tomcat so zu erweitern, dass auch Verzeichnisse außerhalb des .war Archivs berücksichtigt werden, muss die Datei catalina.properties im Tomcat conf-Verzeichnis angepasst werden, indem man das gewünschte Verzeichnis der Property shared.loader hinzufügt.


6. Clientseitige JavaScript Integration

Dieses Kapitel ist vor allem dann relevant, wenn CIB doXisign direkt und nicht z.B. über CIB doXiview integriert werden soll. Wird eine Integration über CIB doXiview genutzt, sei hier auf die Schnellstart-Dokumentation von CIB doXiview verwiesen.

Clientseitig wird CIB doXisign in einem IFrame integriert. Die Aufruf-URL ist das Ergebnis des REST Aufrufs „prepare“. 

Damit eine Integration über IFrame-Grenzen hinweg möglich ist, wird das Postmessage Framework CIB iwc (CIB inter window communication) genutzt. Dieses muss der Aufrufer bei sich integrieren und beim Öffnen der URL nutzen. 

Die folgenden Abhängigkeiten müssen vom Integrator (der einbettenden Seite von CIB doXisign) geladen werden:

<script type="text/javascript" src="./js/cib.iwc.1.0.0.min.js"></script>
<script type="text/javascript" src="./js/iwc-interfaces-min.js"></script>

Anschließend kann CIB doXisign wie folgt geöffnet werden:

// url taken from response of REST call prepare
function openDoxisign(url)
{
        // initialize IWC framework
        var master = {};
        master.iwc = new window.CibGetMasterController().createMaster();
        master.signPad = new window.CibSignPadMasterFunctions(master.iwc);
 master.signPad.registerOnFinishSignProcessCallback(function(params) {
                console.log(">>> " + params.referenceId);
                // will be called after successful signing      
        });
 master.signPad.registerOnCancelSignProcessCallback(function(params) {
                // will be called after canceled signing 
        });
        // open doxisign which will trigger the start parameter callback
        master.iwc.openURLInFrame("#doxisign-frame", url);
}

Sobald ein Signaturvorgang erfolgreich abgeschlossen wurde, wird der Integrator über den folgenden Callback darüber informiert:

master.signPad.registerOnFinishSignProcessCallback(function(params) {
                console.log(">>> " + params.referenceId);
                // will be called after successful signing      
        });

Über die Refrenz-ID des Prozesses können nun weitere Aktivitäten ausgeführt werden. Dafür sei auf die Schnittstellen-Beschreibung der REST-Services in diesem Dokument verwiesen.

Wenn ein Signaturvorgang abgebrochen wurde, wird der Integrator über folgenden Callback informiert:

master.signPad.registerOnCancelSignProcessCallback(function(params) {
                // will be called after canceled signing 
        });

7. Zertifikate

Am Server kann ein Default Zertifikat konfiguriert werden (siehe Konfiguration). Dieses wird normalerweise bei jeder Unterschrift benutzt. Jeder Benutzer hat manuell die Möglichkeit ein persönliches Zertifikat hoch zu laden.

Zusätzlich kann beim Starten einer Signatur-Session ein Zertifikat mitgegeben werden (siehe REST Schnittstellen). Dies ist vor allem Sinnvoll wenn der Unterzeichner in einem angemeldeten System ein Zertifikat besitzt.

Per Default ist ein CIB eigenes Zertifikat hinterlegt. Dieses Zertifikat dient lediglich für erste Integrationstests und sollte nicht in Produktion verwendet werden.


8. Zeitstempel

In CIB doXisign gibt es zwei Arten Zeitdienste zu integrieren.


8.1. NTP ZeitServer

Das Network Time Protocol ist ein Standard zur Synchronisierung von Uhren in Computersystemen. Es ist möglich einen NTP Zeitserver in CIB doXisign zu konfigurieren. Wenn dies der Fall ist, wird nicht die lokale Systemzeit zur Bestimmung des Signierzeitpunktes herangezogen, sondern die abgeglichene Zeit mit dem NTP Zeitserver.

 

Die URL kann in der Datei environment-config.properties oder in der Datei doxisign.properties wie folgt hinterlegt werden:

Konfigurationseinstellung

Beschreibung

ntp.url

URL zu einem NTP Server.

 

Die Zeitserver der PTB (Physikalisch-Technischen Bundesanstalt) in Braunschweig sind beispielsweise für jedermann zu benutzen und kann unter folgender Adresse abgefragt werden:

             ptbtime1.ptb.de

Quelle: https://www.zeitserver.de/deutschland/ptb-zeitserver-in-braunschweig/


8.2. Time Stamp Authority (TSA)

Vertrauenswürdiges Zeitstempeln ist ein Prozess, bei dem die Erstellungs- und Änderungszeiten eines Dokuments sicher verfolgt werden können. Dieser setzt eine sogenannte Time Stamp Authority (TSA) voraus, der das Signieren mit einem aktuellen Zeitstempel übernimmt.

Mehrere Anbieter stellen diesen Service als Software as a Service (SaaS) zur Verfügung und dieser kann in CIB doXisign konfiguriert werden.

Es werden lediglich die Hashwerte der digitalen Signaturen an diesen Dienst übermittelt und keine Dokumente.