// im PassportHandle verarbeitet
case NEED_PASSPHRASE_LOAD:
case NEED_PASSPHRASE_SAVE:
// Passwort aus dem Wallet laden
Wallet w = Settings.getWallet();
String pw = (String) w.get("hbci.passport.password." + passport.getClass().getName());
if (pw != null && pw.length() > 0)
{
Logger.debug("using passport key from wallet, passport: " + passport.getClass().getName());
retData.replace(0,retData.length(),pw);
break;
}
// noch kein Passwort definiert. Dann erzeugen wir ein zufaelliges.
Logger.debug("creating new random passport key, passport: " + passport.getClass().getName());
byte[] pass = new byte[8];
SecureRandom random = SecureRandom.getInstance("SHA1PRNG");
random.nextBytes(pass);
pw = Base64.encode(pass);
// Und speichern es im Wallet.
w.set("hbci.passport.password." + passport.getClass().getName(),pw);
retData.replace(0,retData.length(),pw);
break;
case NEED_CONNECTION:
if (!Settings.getOnlineMode())