signoAPI iOS – Klasse STCertificateManager

Die Klasse STCertificateManager ist für die Verwaltung von Zertifikaten und privaten Schlüsseln zuständig, die für das digitale Signieren von Dokumenten sowie für die Verschlüsselung biometrischer Daten verwendet werden. Sie ist als Singleton implementiert und Bestandteil der libSignoPDFSigner.

Die Deklaration der Klasse sieht wie folgt aus:

@interface STCertificateManager: NSObject

Das Instanziieren der Klasse STCertificateManager ist nicht möglich über init-Methoden, sondern nur mit der statischen Methode +[].

Methode getCertificateManager

Von der Klasse STCertificateManager existiert nur eine einzige Instanz (Singletoninstanz), auf die durch diese statische Methode zugegriffen werden kann.

+(STLicenceManager*)getLicenceManager

Parameter

Bedeutung

-

-

Rückgabewert

Bedeutung

STCertificateManager*

Die Singletoninstanz der STCertificateManager-Klasse.

Anwendung:

STCertificateManager *certManager = [STCertificateManager getCertificateManager];

Methode setCertificates:withSigningPrivateKey:biometricX509Certificate:

Diese Methode ermöglicht das Setzen eines X.509-Signaturzertifikats mit zugehörigem privaten Schlüssel sowie eines Biometrie-Zertifikats.

-(int)setCertificates:(NSData*)signingX509Certificate withSigningPrivateKey:(NSData*)signingPrivateKey biometricX509Certificate:(NSData*)biometricX509Certificate

Parameter

Bedeutung


(NSData*) signingX509Certificate

Das öffentliche Zertifikat als Byte-Array zum Verifizieren der Dokumentsignatur. Wird ignoriert, wenn für signingPrivateKey nil übergeben wird.


(NSData*) signingPrivateKey

Der private Schlüssel als Byte-Array zum Signieren des Dokuments. Wenn nil übergeben wird, muss die Signatur außerhalb des APIs berechnet werden, hierzu s. a. .


(NSData*) biometricX509Certificate

X.509-Zertifikat als Byte-Array mit dem öffentlichen Schlüssel zum Verschlüsseln der Biometrie.


Rückgabewert

Bedeutung


int

0

Methode wurde erfolgreich ausgeführt.


< 0

Es ist ein Fehler aufgetreten (s. o.).

Anwendung:

int ret = [certManager setCertificates:signingX509Certificate withSigningPrivateKey:signingPrivateKey biometricX509Certificate: biometricX509Certificate];
if (ret < 0) {
   //error handling
}

Methode setCertificates:withPKCS12Password:biometricX509Certificate:

Mit dieser Methode können ein PKCS#12-Signaturzertifikat und ein Biometrie-Zertifikat gesetzt werden.

-(int)setCertificates:(NSData*)signingPKCS12Certificate withPKC12Password:(NSString*)pkcs12Password biometricX509Certificate:(NSData*)biometricX509Certificate

Parameter

Bedeutung


(NSData*) signingPKCS12Certificate

PKCS#12-Datei als Byte-Array mit dem privaten Schlüssel und dem öffentlichen Zertifikat zum Signieren des Dokuments. Wenn nil übergeben wird, muss die Signatur außerhalb des APIs berechnet werden, hierzu s. a. .


(NSString*) pkcs12Password

Passwort der PKCS#12-Datei. Wird ignoriert, wenn für signingPKCS12Certificate nil übergeben wird.


(NSData*) biometricX509Certificate

X.509-Zertifikat als Byte-Array mit dem öffentlichen Schlüssel zum Verschlüsseln der Biometrie.


Rückgabewert

Bedeutung


int

0

Methode wurde erfolgreich ausgeführt.


< 0

Es ist ein Fehler aufgetreten (s. o.).

Anwendung:

int ret = [certManager setCertificates: signingPKCS12Certificate withPKC12Password: pkcs12Password biometricCertificate: biometricX509Certificate];
if (ret < 0) {
   //error handling
}

Methode setPKCS12SigningCertificate:withPassword:

Diese Methode setzt ein PKCS#12-Signaturzertifikat mit dem zugehörigen Passwort.

-(int)setPKCS12SigningCertificate:(NSData*)signingPKCS12Certificate withPassword:(NSString*)password

Parameter

Bedeutung


(NSData*) signingPKCS12Certificate

PKCS#12-Datei als Byte-Array mit dem privaten Schlüssel und dem öffentlichen Zertifikat zum Signieren des Dokuments. Wenn nil übergeben wird, muss die Signatur außerhalb des APIs berechnet werden, hierzu s. a. .


(NSString*)password

Passwort der PKCS#12-Datei. Wird ignoriert, wenn für signingPKCS12Certificate nil übergeben wird.


Rückgabewert

Bedeutung


int

0

Methode wurde erfolgreich ausgeführt.


< 0

Es ist ein Fehler aufgetreten (s. o.).

Anwendung:

int ret = [certManager setPKCS12SigningCertificate: signingPKCS12Certificate withPassword:password];
if (ret < 0) {
   //error handling
}

Methode setX509SigningCertificate:withSigningPrivateKey:

Diese Methode setzt ein X.509-Signaturzertifikat zusammen mit dem privaten Schlüssel.

-(int)setX509SigningCertificate:(NSData*)signingX509Certificate withSigningPrivateKey:(NSData*)signingPrivateKey

Parameter

Bedeutung


(NSData*) signingX509Certificate

Das öffentliche Zertifikat als Byte-Array zum Verifizieren der Dokumentsignatur. Wird ignoriert, wenn für signingPrivateKey nil übergeben wird.


(NSData*) signingPrivateKey

Der private Schlüssel als Byte-Array zum Signieren des Dokuments. Wenn nil übergeben wird, muss die Signatur außerhalb des APIs berechnet werden, hierzu s. a. .


Rückgabewert

Bedeutung


int

0

Methode wurde erfolgreich ausgeführt.


< 0

Es ist ein Fehler aufgetreten (s. o.).

Anwendung:

int ret = [certManager setX509SigningCertificate: signingX509Certificate withSigningPrivateKey:signingPrivateKey];
if (ret < 0) {
   //error handling
}

Methode setX509BiometricCertificate:

Diese Methode setzt das X.509-Zertifikat zur Verschlüsselung biometrischer Daten.

-(int)setX509BiometricCertificate:(NSData*)biometricX509Certificate

Parameter

Bedeutung


(NSData*) biometricX509Certificate

X.509-Zertifikat als Byte-Array mit dem öffentlichen Schlüssel zum Verschlüsseln der Biometrie.


Rückgabewert

Bedeutung


int

0

Methode wurde erfolgreich ausgeführt.


< 0

Es ist ein Fehler aufgetreten (s. o.).

Anwendung:

int ret = [certManager setX509BiometricCertificate: biometricX509Certificate];
if (ret < 0) {
   //error handling
}

Methode hasSigningCertificate

Mit dieser Methode kann überprüft werden, ob ein Zertifikat und der dazugehörige private Schlüssel zum Signieren des Dokuments mit einer der Methoden , , oder übergeben worden sind.

-(BOOL)hasSigningCertificate

Parameter

Bedeutung


-

-


Rückgabewert

Bedeutung


BOOL

YES

Das Zertifikat und der dazugehörige private Schlüssel zum Signieren des Dokuments sind vorhanden.


NO

Das Zertifikat und der dazugehörige private Schlüssel zum Signieren des Dokuments sind nicht vorhanden.

Anwendung:

BOOL hasSigningCertificate = [certManager hasSigningCertificate];

Methode hasBiometricCertificate

Mit dieser Methode kann überprüft werden, ob ein Zertifikat zum Verschlüsseln der Biometrie mit einer der Methoden , oder übergeben worden sind.

-(BOOL)hasBiometricCertificate

Parameter

Bedeutung


-

-


Rückgabewert

Bedeutung


BOOL

YES

Das Zertifikat zum Verschlüsseln der Biometrie ist vorhanden.


NO

Das Zertifikat zum Verschlüsseln der Biometrie ist nicht vorhanden.

Anwendung:

BOOL hasBiometricCertificate = [certManager hasBiometricCertificate];