Initial commit of actLibrary ( see #2 ) , Updates in openssl-act-engine, extended documentation ( see #6 )
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
Benutzung der engine_act OpenSSL engine
|
||||
|
||||
Abgesehen von den Engine-Befehlen "ENUM_CERTS" und "PIN" (s.u.) l<EFBFBD>uft die Benutzung dieser Engine <EFBFBD>ber OpenSSL selbst ab.
|
||||
Abgesehen von den Engine-Befehlen "ENUM_CERTS" und "PIN" (s.u.) läuft die Benutzung dieser Engine über OpenSSL selbst ab.
|
||||
|
||||
1) Laden/Einbinden
|
||||
|
||||
@@ -24,7 +24,7 @@ SO_PATH gibt den absoluten Pfad zur Engine an.
|
||||
ENGINE_cleanup();
|
||||
|
||||
|
||||
3) Enumerierung der erreichbaren Smartcard-Zertifikate und Schl<EFBFBD>ssel
|
||||
3) Enumerierung der erreichbaren Smartcard-Zertifikate und Schlüssel
|
||||
|
||||
#include <openssl/engine.h>
|
||||
#include "engine_sct.h"
|
||||
@@ -50,7 +50,7 @@ struct enum_certs_s
|
||||
};
|
||||
|
||||
|
||||
So kann man dann mit einer for-Schleife <EFBFBD>ber die einzelnen Zertifikate/Schl<EFBFBD>sselidentifikationen iterieren
|
||||
So kann man dann mit einer for-Schleife über die einzelnen Zertifikate/Schlüsselidentifikationen iterieren
|
||||
|
||||
for(int i=0;i<certs_found->num_certs;i++)
|
||||
{
|
||||
@@ -59,17 +59,17 @@ So kann man dann mit einer for-Schleife
|
||||
....
|
||||
}
|
||||
|
||||
4) Laden eines Schl<EFBFBD>ssels zur Benutzung
|
||||
4) Laden eines Schlüssels zur Benutzung
|
||||
|
||||
Sowohl cert_data.id als auch cert_data.name k<EFBFBD>nnen als Parameter f<EFBFBD>r ENGINE_load_public_key() oder ENGINE_load_private_key() verwendet werden.
|
||||
cert_data.name hat das Format "slot-<x>-name-<name>", der Authenthisierungsschl<EFBFBD>ssel im ersten (oder einzigen) Slot w<EFBFBD>re dann
|
||||
Sowohl cert_data.id als auch cert_data.name können als Parameter für ENGINE_load_public_key() oder ENGINE_load_private_key() verwendet werden.
|
||||
cert_data.name hat das Format "slot-<x>-name-<name>", der Authenthisierungsschlüssel im ersten (oder einzigen) Slot wäre dann
|
||||
|
||||
"slot-0-name-SwissSign_digSig"
|
||||
|
||||
ENGINE_load_private_key() versucht gleich schon ein Login auf der Karte. Man kann ein Pin-Dialog per Callback <EFBFBD>bergeben, aber man kann auch
|
||||
ENGINE_load_private_key() versucht gleich schon ein Login auf der Karte. Man kann ein Pin-Dialog per Callback übergeben, aber man kann auch
|
||||
die PIN von vornherein setzen, und zwar mit
|
||||
|
||||
ENGINE_ctrl_cmd_string(e, "PIN", pin_str, 0);
|
||||
|
||||
/!\ pin_str ist ein nullterminierter String (char *) und wird in der Funktion <EFBFBD>berschrieben! Wird die PIN also sp<EFBFBD>ter anderswo noch gebraucht, muss man
|
||||
hier eine Kopie des Strings <EFBFBD>bergeben.
|
||||
/!\ pin_str ist ein nullterminierter String (char *) und wird in der Funktion überschrieben! Wird die PIN also später anderswo noch gebraucht, muss man
|
||||
hier eine Kopie des Strings übergeben.
|
||||
|
Reference in New Issue
Block a user