Passwort für Schlüsseldatei notwendig?

 
semi
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Erfurt
Beiträge: 6
Dabei seit: 10 / 2009
Betreff:

Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 10:21 Uhr  ·  #1
Hallo,

ich entwickle derzeit ein Online-Banking-Programm unter .NET. Dazu verwende ich hbci4java, was auch sehr gut funktioniert.

Derzeit verwende ich nur das PIN/TAN-Verfahren. Was mich aber stört ist, dass hbci4java die Schüsseldatei (client.passport.PinTan.filename) mit einem Passwort schützen will. Ich finde es nur etwas umständlich wenn der Anwender beim Programmstart ein Passwort für die Schlüsseldatei angeben soll, und dann nochmal die PIN wenn er einen HBCI-Vorgang startet.

Bei anderen Anwendungen wie z.B. StarMoney ist meines Wissens sowas auch nicht notwendig!?

Was wird denn eigentlich in der Datei gespeichert? Kann man das Passwort irgendwie umgehen?Und welche Sicherheitsrisiken habe ich dann?

Viele Grüße
Sebastian
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 10:46 Uhr  ·  #2
In der Passport-Datei werden neben den HBCI-Zugangsdaten (hauptsächlich relevant ist hier wohl die Nutzerkennung) auch die abgeholten BPD und UPD gespeichert. Die UPD enthalten u.a. Informationen über die Kontoverbindungen des Kunden, sowie dessen Kreditlinien usw. Alles Daten, die in dem Sinne nicht wirklich "sicherheitsrelevant" sind, die ich aber auch nicht unbedingt freiwillig an ein schwarzes Brett heften würde und die zumindest als vertraulich einzustufen wären.

Wenn Du explizit nicht möchtest, dass Deine Nutzer ein Passwort eingeben müssen, um die Schlüsseldatei lesen zu können, hast Du im wesentlichen zwei Möglichkeiten:

1) Du schreibst eine eigene Passport-Implementierung, abgeleitet von HBCIPassportPinTan, bei der Du die Codeteile zum Lesen und Schreiben der Dateien entsprechend modifizierst. Diese Passport-Variante (z.B. "HBCIPassportMyPinTan") kannst Du dann mit passport=AbstractHBCIPassport.getInstance("MyPinTan") verwenden.

2) Du verwendest eine eigene Callback-Klasse, in deren "callback()"-Methode du bei reason=NEED_PASSPHRASE_LOAD/SAVE einfach ein festes Passwort zurückgibst, so dass der Nutzer nicht mehr zu einer entsprechenden Eingabe aufgefordert wird.

-stefan-
semi
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Erfurt
Beiträge: 6
Dabei seit: 10 / 2009
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 10:52 Uhr  ·  #3
Hallo und danke erstmal für die Antwort.

Bisher habe ich die 2. Variante implementiert, d.h. ich vergebe ein dummy-Passwort.

Die Daten werden meiner Meinung nach auch durch die Login-Informationen des Betriebssystems geschützt. Also ein anderer Nutzer außer ich kommt an meine Daten nicht ran.
An einem öffentlichen PC hat das natürlich nichts zu suchen!

Angenommen ich implementiere in Zukunft ein anderes Verfahren als PIN/TAN. Ergeben sich durch die Vorgehensweise andere schwerwiegendere Risiken?

Viele Grüße
Sebastian
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 10:58 Uhr  ·  #4
Zitat
Angenommen ich implementiere in Zukunft ein anderes Verfahren als PIN/TAN. Ergeben sich durch die Vorgehensweise andere schwerwiegendere Risiken?


Im Falle von DDV ist das Risiko ähnlich wie bei PIN/TAN: Auch dort dient die Passport-Datei im wesentlichen zum Cachen von BPD und UPD - die Zugangsdaten und Schlüssel liegen direkt auf der Chipkarte (und nur dort).

Im Falle von RDH ist das etwas anderes, denn bei dieser Variante werden zusätzlich die RSA-Schlüssel des Nutzers in der Datei gespeichert. Wer darauf Zugriff hat, kann ungehindert Kontoauszüge ansehen und Geld überweisen! Hier sollte also "echte Sicherheit" implementiert werden, aber das ist bei den "kommerziellen" Anwendungen auch so - Beim Verwenden einer RDH-Datei wird immer zur Eingabe eines Passwortes aufgefordert...

Grüße
-stefan-
semi
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Erfurt
Beiträge: 6
Dabei seit: 10 / 2009
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 11:05 Uhr  ·  #5
Ok, dann könnte man ja bei der Verwendung von RDH auch ein Passwort fordern. Das soll mich nicht stören :-)

Ansonsten erstmal ein dickes Kompliment für hbci4java. Die Funktionen, die ich bisher implementiert habe (Abfrage von Konten, Salden und Umsätzen mit PIN/TAN), funktionieren wirklich ohne Probleme unter .NET mit ikvm.

Viele Grüße
Sebastian
subsembly
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: München
Homepage: subsembly.com/
Beiträge: 4566
Dabei seit: 11 / 2004
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 11:08 Uhr  ·  #6
Hallo,

ist zwar off topic, aber, warum nicht gleich die selbst in .NET geschriebene Subsembly FinTS API? Die ist für "private" Anwendungen ebenfalls kostenlos.
semi
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Erfurt
Beiträge: 6
Dabei seit: 10 / 2009
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 11:41 Uhr  ·  #7
Nunja,

ich hatte mir Hibiscus angeschaut, was ja hbci4java benutzt. Das hat mir rein optisch nicht so gefallen, deswegen habe ich mir selbst was programmiert. Und das naheliegendste war dann eben auch hbci4java zu benutzen.

Mein .NET Programm benutzt eine SQLite-Datenbank um die Informationen lokal zu speichern. Es ruft bisher nur Konten, Salden und Umsätze ab. Ich hab noch eine Chart-Funktion eingebaut, die Saldoverläufe darstellen kann. Zusätzlich kann man im Chart auch Berechnungen durchführen und Trendfunktionen berechnen.

Ich denke es sollte auch kein Problem sein, das auf eine andere Bibliothek wie FinTS umzustellen. Ich guck mir das am besten mal an. Für den Privatbenutzer ist es kostenlos. Eine Einzelplatzlizenz würde bedeuten 200€ pro Entwickler zu zahlen und dann entstehen keine weiteren Kosten wenn man die fertige Anwendung verkauft?

Viele Grüße
Sebastian
subsembly
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: München
Homepage: subsembly.com/
Beiträge: 4566
Dabei seit: 11 / 2004
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 11:50 Uhr  ·  #8
Hallo,

für dem "Weitervertrieb" der Subsembly FinTS API würden noch weitere Kosten entstehen. Es gilt in diesem Fall das Lizenzmodell für Softwarehersteller. Die genaue Preisliste kann man auf der FinTS API Homepage laden.

Ich war davon ausgegangen, dass es sich um eine "private" und keine kommerzielle Anwendung handelt.
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 12:05 Uhr  ·  #9
btw - auch bei HBCI4Java müsstest Du die Lizenz (GPL) beachten. Natürlich kann Dir niemand verbieten, Deine Software zu verkaufen. Du müsstest dem Käufer aber das Recht einräumen, die Software einfach weiterzuverschenken (im für Dich ungünstigsten Falle: freier Download von seiner Webseite) - inklusive Source-Code Deiner Anwendung (und HBCI4Java).

-stefan-
semi
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Erfurt
Beiträge: 6
Dabei seit: 10 / 2009
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 12:20 Uhr  ·  #10
Zitat geschrieben von kleiner77
btw - auch bei HBCI4Java müsstest Du die Lizenz (GPL) beachten. Natürlich kann Dir niemand verbieten, Deine Software zu verkaufen. Du müsstest dem Käufer aber das Recht einräumen, die Software einfach weiterzuverschenken (im für Dich ungünstigsten Falle: freier Download von seiner Webseite) - inklusive Source-Code Deiner Anwendung (und HBCI4Java).


Hallo,

dass hbci4java unter GPL lizensiert ist, ist mir selbstverständlich bewußt.

Viele Grüße
Sebastian
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 19.10.2009 - 13:55 Uhr  ·  #11
Ok, wollte das aus gegebenem Anlass nur erwähnt haben ;-)
-stefan-
semi
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Erfurt
Beiträge: 6
Dabei seit: 10 / 2009
Betreff:

Re: Passwort für Schlüsseldatei notwendig?

 · 
Gepostet: 09.11.2009 - 22:51 Uhr  ·  #12
Hallo,

ich habe nun erstmal alles in meine Applikation eingebaut was ich benötige. Eventuell hat ja jemand außer mir Interesse daran.

Ich verwende das Programm vorerst nur zum Archivieren meine Kontoumsätze. Mehr kann es auch noch nicht. Dafür verwende ich das PIN/TAN-Verfahren.

Hier mal ein paar Screenshots um sich einen Überblick zu verschaffen.









Herunterladen kann man es sich hier: http://semiworks.de/files/S-Online_Setup.msi

Und die Quellen gibt es über SVN hier:
Code
http://semiworks.de/svn/sponline/trunk


Viele Grüße
Sebastian
Gewählte Zitate für Mehrfachzitierung:   0