| |
|
Der Banking Kernel HBCI Java
Die Architektur für den Banking Kernel HBCI Java setzt auf
einer schichtenorientierten Architektur für Online-Banking auf. Der große Vorteil ist, dass auf diesem Kernel
basierende Entwicklungen bei entsprechendem Design auch beim Banking Kernel HBCI
Java Multiuser einsetzbar sind.
Die folgende Abbildung verdeutlicht dies. Die Abbildung zeigt den
Gesamtaufbau der Java-Implementierungsvarianten des Banking Kernels. Die Pakete
und Schnittstellen des Banking Kernel HBCI Java sind in Form gelber Kästen bzw.
schwarzer Balken hervorgehoben.
|
| |
 |
| |
|
| |
Um beim Einsatz im Browserbanking die Übertragungszeiten des Banking Kernel
HBCI Java möglichst kurz zu halten, ist die Dialogsteuerung
geschäftsvorfallabhängig modularisiert. So gibt es beispielsweise eine Klasse
HxUEB, die einen Überweisungsauftrag mit dem Kreditinstitut abwickelt, und eine
Klasse HxSAL, die eine Saldenabfrage ausführt. Es müssen also immer nur
diejenigen Geschäftsvorfallsklassen geladen werden, die aktuell auch benötigt
werden.
|
| |
Es folgt eine Beschreibung der einzelnen Komponenten:
|
| |
-
HBCI-System-Management-Agent
Aufgabe des Pakets HBCI-System-Management-Agent ist die Administration
der Banking Kernel HBCI Java. Der HBCI-System-Management-Agent koordiniert
die Abläufe zum Öffnen und Schließen des Kernels, die eine Initialisierung
und Deinitialisierung der Kernel-Pakete Trace, Repository und
Dialogsteuerung veranlassen. Weiterhin verarbeitet der
HBCI-System-Management-Agent Ereignismeldungen der übrigen Kernelpakete und
reicht diese gegebenenfalls weiter.
|
| |
-
Dialogsteuerung
Aufgabe des Pakets Dialogsteuerung ist die Steuerung der
Geschäftsabläufe. Die Dialogsteuerung nimmt XML-Auftragsdokumente entgegen,
führt die beauftragten Aktionen durch, generiert XML-Antwortdokumente und
übergibt diese der Applikation. Die Dialogsteuerung koordiniert die Pakete
Format, Security und Transport bei der Abwicklung von
HBCI-Geschäftsvorfällen und parst bzw. generiert Fremdformatnachrichten
(SWIFT, DTAUS und DTAZV), die transparent in HBCI-Nachrichten übertragen
werden. Weiterhin verwaltet die Dialogsteuerung Userparameterdaten und
Bankparameterdaten.
|
| |
-
Security
Aufgabe des Pakets Security ist die Bereitstellung der HBCI-spezifischen
kryptographischen Operationen und die Anbindung des Sicherheitsmediums. Das
Paket Security stellt die in den HBCI-Versionen 2.1 und 2.2 vorgesehenen
kryptographischen Operationen mit Hilfe eines Kryptographie-Providers und
der OCF-Anbindung zur Verfügung. Weiterhin bietet das Paket Methoden zum
lesenden und schreibenden Zugriff auf Felder des unterstützten
Sicherheitsmediums. Für den Einsatz ohne Kryprographie kann eine
Leer-Implementierung des Pakets Security (Dummyprovider) angebunden werden.
Das Paket Security hat keinerlei Kenntnisse des HBCI-Formats.
Elektronische Unterschriften und verschlüsselte Daten in das HBCI-Format
umzusetzen, ist Aufgabe des Pakets Format.
|
| |
-
Format
Das Paket Format kapselt Methoden zum Parsen und Generieren des
HBCI-Formats.
Das Paket Format hat weder Kenntnisse darüber, wie die Anbindung an das
zentrale HBCI-System bzw. den HBCI-Konverter erfolgt (dies ist
Aufgabenbereich des Pakets Transport), noch darüber, mit welchen Verfahren
signiert bzw. verschlüsselt wird (dies ist Aufgabenbereich des Pakets
Security).
|
| |
|
| |
|
| |
-
Repository
Aufgabe des Pakets Repository ist es, den einzelnen Paketen des Banking
Kernel HBCI Java die permanente Speicherung von Informationen beliebiger Art
zu ermöglichen. Die einzelnen Informationen werden unter einem Schlüssel
(einer URL) abgelegt und können jederzeit abgefragt oder geändert werden.
Bei Bedarf können sich die Pakete des Banking Kernel HBCI Java über die
Änderung einzelner Informationen im Repository informieren lassen.
|
| |
-
CT-API-Wrapper
Aufgabe des Pakets CT-API-Wrapper ist, die CT-API, die im Banking Kernel
HBCI Java zur Kommunikation mit dem Kartenleser eingesetzt wird, an den
Ausschnitt des Card-Terminal-Layers des OpenCard-Frameworks (OCF)
anzubinden, über den das Paket Security auf den Kartenleser zugreift.
|