CSJCurrent de:Über Funktionen der API

Aus Cryptshare Documentation
Version vom 13. Oktober 2021, 12:03 Uhr von imported>Hartwigr (Hartwigr verschob die Seite CSJCurrent de:58296696 nach CSJCurrent de:Über Funktionen der API)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu:Navigation, Suche



Dieser Abschnitt beschreibt welche Methoden von der API angeboten werden und wie sie verwendet werden müssen, um die gewünschten Operationen durchführen zu können. Alle verfügbaren Servicemethoden werden von der Client-Klasse angeboten. Um also die Funktionen der API nutzen zu können, muss zuerst eine Instanz dieser Klasse erzeugt werden. Das Hauptanliegen der Java API ist der, einen möglichst einfachen Weg für die Übertragung von Cryptshare Transfers zu liefern. Daher erfordert die Erzeugung einer Client-Instanz immer die Angabe der Absenderadresse, die Verbindung zum Cryptshare Server in Form der CryptshareConnection-Klasse sowie die Verifizierungsinformationen.

Erzeugen einer Client-Instanz

Der erste Schritt für das Erzeugen einer Client-Instanz ist das Anlegen der CryptshareConnection-Instanz, die mit der URL des Cryptshare Servers initialisiert wird. Der Konstruktor der CryptshareConnection-Klasse fordert die Angabe einer WebServiceUri, welche die URL des Cryptshare Servers erhält und damit die korrekten Service-URLs für den Zugriff auf den Cryptshare Server erzeugt. Sobald die CryptshareConnection-Instanz erzeugt ist, kann sie dem Konstruktor der Client-Klasse übergeben werden. Neben der CryptshareConnection-Instanz fordert der Client-Konstruktor außerdem die Absenderadresse, sowie eine Pfadangabe zum Verifizierungsspeicher. Der Verifizierungsspeicher enthält die Verifizierungsinformationen des Clients, bzw. des Hosts, abhängig vom verwendeten Verifizierungsverfahren. Der Verifizierungsspeicher wird mit dem Client-Schlüssel verschlüsselt. Für die Pfadangabe des Verifizierungsspeichers kann entweder der vollständige Pfad mit Dateinamen, ein relativer Pfad mit Dateinamen oder ein Pfad ohne Dateinamen angegeben werden. In letzterem Fall wird als Dateinamen 'client.store' verwendet. Existiert die Datei für den Verifizierungsspeicher nicht, so wird sie automatisch von der Client-Instanz angelegt.

Beispiele

Beispiel: Anlegen einer Client-Instanz mit Pfadangabe

// Erzeugen der WebServiceUri für den Cryptshare Server 
WebServiceUri serviceUri = new WebServiceUri("https://cryptshare.server.com");
 
// Anlegen der CryptshareConnection für die WebServiceUri
CryptshareConnection connection = new CryptshareConnection(serviceUri);
 
// Anlegen der Client-Instanz mit der Absenderadresse, der
// CryptshareConnection, und dem Pfad zum Verifizierungsspeicher.
Client client = new Client("sender_email@server.com", connection, Paths.get("C:\\\\temp"));

Sobald die Client-Instanz erzeugt wurde, können über die entsprechenden Objektmethoden die vorhandenen Serviceoperationen ausgeführt werden, wie in den entsprechenden Abschnitten dieses Handbuches beschrieben.

Beachten Sie bitte, dass die meisten Operationen eine gültige Verifizierung erfordern. Wie eine Verifizierung durchzuführen ist, wird im Abschnitt 'Verifizierung' beschrieben.


Client-ID und Client-Schlüssel

Die Client-ID identifiziert einen verwendeten Host, welcher die Java API nutzt. Die Client-ID enthält Daten, die den Host eindeutig identifizieren, wie beispielsweise die MAC-Adresse. Die Client-ID wird bei der ersten Verwendung der API angelegt und im lokalen Verifizierungsspeicher für die nachfolgende Nutzung abgelegt. Die Client-ID ist Voraussetzung für die Kommunikation mit dem Cryptshare Server. Wird das Client-Verifizierungsverfahren verwendet, so wird diese Client-ID am Server registriert. Der Client-Schlüssel wird, wie die Client-ID, auf Basis der verwendeten MAC-Adresse erzeugt und wird für die Verschlüsselung des Verifizierungsspeichers verwendet. Wenn also der Client den Verifizierungsspeicher öffnet, so erzeugt er den Client-Schlüssel und verwendet diesen, um die Daten zu entschlüsseln.

Warnung
Da der Client-Schlüssel auf Basis der MAC-Adresse erzeugt wird, führt ein Austauschen der Netzwerkkarte zwangsläufig zu einem neuen Client-Schlüssel. Damit können die im Verifizierungsspeicher hinterlegten Daten nicht mehr entschlüsselt werden, da sie mit einem anderen Schlüssel erzeugt wurden. Vorhandene Verifizierungsinformationen gehen dadurch also verloren und es muss eine neue Verifizierung durchgeführt werden. Um dies zu vermeiden, sollten Sie in Betracht ziehen, die MAC-Adresse wieder auf die alte Adresse einzustellen, sofern dies möglich ist.