Full paper (pdf) - CDC

Full paper (pdf) - CDC Full paper (pdf) - CDC

cdc.informatik.tu.darmstadt.de
von cdc.informatik.tu.darmstadt.de Mehr von diesem Publisher
04.02.2013 Aufrufe

5.2.3 Paket keyshare.keystore Das Paket keyshare.keystore enthält zwei KeyStore-Implementierungen, die von Secret- und Key-Sharing Gebrauch machen. Der ShamirStore kapselt einen anderen Software-Keystore (beispielsweise den JKS von Sun) und verteilt ihn zur Speicherung in mehrere Dateien nach dem Shamir-Verfahren. Der Key- Sharer verteilt die einzelnen Schlüssel, die in ihn gesteckt werden, mit jeweils dafür geeigneten Key-Sharing-Verfahren auf mehrere abhängige Keystores. Diese Keystores können dann zum Erstellen von Teilsignaturen und -entschlüsselungen genutzt werden. Der Shamir-Store verfügt über eine kleine graphische Benutzerschnittstelle, die sich im Unterpaket keyshare.keystore.gui befindet. Beide Keystores werden über XML-Dateien konfiguriert, deren Zugriffspfade im Unterpaket keyshare.keystore.xml definiert sind. KeyStoreBase diese abstrakte Klasse stellt Default-Implementierungen für die Methoden eines JCA-KeyStoreSpi bereit und dient damit zur Vermeidung von Code-Duplikaten. Sie bedient sich dabei einer gekapselten KeyStore- Instanz aus einem anderen Provider. ShamirStore diese von KeyStoreBase abgeleitete Klasse implementiert den ShamirStore-Keystore. KeySharer diese von KeyStoreBase abgeleitete Klasse implementiert den KeySharer- Keystore. Unterpaket keyshare.keystore.xml Die Keystores werden über XML-Dateien konfiguriert, in denen beispielsweise angegeben wird auf wieviele und welche Dateien der Keystore seinen Inhalt verteilen soll (eine Beschreibung der möglichen Einstellungen findet sich in Abschnitt 5.4). Diese Dateien werden mit Hilfe des Castor-XML-Frameworks ausgewertet. Dieses stellt ein Mapping zwischen XML-Tags und Java-Klassen bereit. Die entsprechenden Klassen liegen im Paket keyshare.keystore.xml: ShamirStore diese Klasse entspricht dem -XML-Tag, welches das Wurzel-Element für die Konfigurationsdatei des ShamirStore darstellt. Es besitzt einige Attribute und kann geschachtelte -Tags aufnehmen. KeySharer diese Klasse entspricht dem -XML-Tag, welches das Wurzel-Element für die Konfigurationsdatei des KeySharers darstellt. Es besitzt einige Attribute und kann geschachtelte -Tags aufnehmen. Share diese Klasse entspricht dem -Tag, welches in beiden Konfigurationsdateien verwendet wird, um den Anteilen ihre Dateien zuzuordnen. Konfiguration nur über Dateien Die beiden KeyStores können nur über die XML-Dateien konfiguriert werden. Dies geschieht durch Einlesen der Dateien während der Methode KeyStore.load(InputStream, char[]). Für eine 57

Abbildung 5.4: Klassen aus dem Paket keyshare.keystore 58

Abbildung 5.4: Klassen aus dem Paket keyshare.keystore<br />

58

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!