Package org.kapott.hbci.passport
Class AbstractPinTanPassport
- java.lang.Object
-
- org.kapott.hbci.passport.AbstractHBCIPassport
-
- org.kapott.hbci.passport.AbstractPinTanPassport
-
- All Implemented Interfaces:
java.io.Serializable,HBCIPassport,HBCIPassportInternal
- Direct Known Subclasses:
HBCIPassportPinTan
public abstract class AbstractPinTanPassport extends AbstractHBCIPassport
Abstrakte Basis-Implementierung des PIN/TAN-Supports.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringKEY_PD_CHALLENGEHier speichern wir den Challenge-Text der Bank fuer die TAN-Abfrage.static java.lang.StringKEY_PD_HHDUCHier speichern wir das HHDuc fuer die TAN-Abfrage.static java.lang.StringKEY_PD_ORDERREFHier speichern wir die Auftragsreferenz fuer die TAN-Abfrage.static java.lang.StringKEY_PD_SCAHier speichern wir, ob wir eine SCA-Ausnahme fuer einen GV von der Bank erhalten haben-
Fields inherited from interface org.kapott.hbci.passport.HBCIPassport
ROLE_CON, ROLE_ISS, ROLE_WIT
-
-
Constructor Summary
Constructors Constructor Description AbstractPinTanPassport(java.lang.Object initObject)ct.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactivateTANVerifyMode()voidclearPIN()protected java.lang.StringcollectSegCodes(java.lang.String msg)voiddeactivateTANVerifyMode()java.util.List<java.lang.String>getAllowedTwostepMechanisms()java.lang.StringgetCertFile()booleangetCheckCert()CommgetCommInstance()java.lang.StringgetCryptAlg()java.lang.StringgetCryptFunction()java.lang.StringgetCryptKeyType()java.lang.StringgetCryptMode()java.util.PropertiesgetCurrentSecMechInfo()java.lang.StringgetCurrentTANMethod(boolean recheck)Liefert das aktuelle TAN-Verfahren.java.lang.StringgetHashAlg()java.lang.StringgetHost()Ueberschrieben, um das "https://" am Anfang automatisch abzuschneiden.HBCIKeygetInstEncKey()java.lang.StringgetInstEncKeyName()java.lang.StringgetInstEncKeyNum()java.lang.StringgetInstEncKeyVersion()HBCIKeygetInstSigKey()java.lang.StringgetInstSigKeyName()java.lang.StringgetInstSigKeyNum()java.lang.StringgetInstSigKeyVersion()intgetMaxGVSegsPerMsg()java.lang.StringgetMyEncKeyName()java.lang.StringgetMyEncKeyNum()java.lang.StringgetMyEncKeyVersion()HBCIKeygetMyPrivateDigKey()HBCIKeygetMyPrivateEncKey()HBCIKeygetMyPrivateSigKey()HBCIKeygetMyPublicDigKey()HBCIKeygetMyPublicEncKey()HBCIKeygetMyPublicSigKey()java.lang.StringgetMySigKeyName()java.lang.StringgetMySigKeyNum()java.lang.StringgetMySigKeyVersion()java.lang.StringgetPassportTypeName()java.lang.StringgetPIN()java.lang.StringgetPinTanInfo(java.lang.String code)Liefert "J" oder "N" aus den BPD des Geschaeftsvorfalls, ob fuer diesen eine TAN erforderlich ist.java.lang.StringgetProfileMethod()java.lang.StringgetProfileVersion()java.lang.StringgetProxy()java.lang.StringgetProxyPass()java.lang.StringgetProxyUser()java.lang.StringgetSigAlg()java.lang.StringgetSigFunction()java.lang.StringgetSigMode()java.lang.StringgetSysStatus()java.util.Hashtable<java.lang.String,java.util.Properties>getTwostepMechanisms()booleanhasInstEncKey()booleanhasInstSigKey()booleanhasMyEncKey()booleanhasMySigKey()voidincSigId()booleanisSupported()booleanneedInstKeys()booleanneedUserKeys()booleanneedUserSig()voidonDialogEvent(DialogEvent event, DialogContext ctx)Wird bei einem Dialog-Event ausgefuehrt.voidresetSecMechs()Kann vornew HBCIHandler()aufgerufen werden, um zu erzwingen, dass die Liste der unterstützten PIN/TAN-Sicherheitsverfahren neu vom Server abgeholt wird und evtl.voidsetAllowedTwostepMechanisms(java.util.List<java.lang.String> l)voidsetBPD(java.util.Properties p)voidsetCertFile(java.lang.String filename)protected voidsetCheckCert(boolean doCheck)voidsetCurrentTANMethod(java.lang.String method)Legt das aktuelle TAN-Verfahren fest.voidsetInstEncKey(HBCIKey key)voidsetInstSigKey(HBCIKey key)voidsetMyPrivateDigKey(HBCIKey key)voidsetMyPrivateEncKey(HBCIKey key)voidsetMyPrivateSigKey(HBCIKey key)voidsetMyPublicDigKey(HBCIKey key)voidsetMyPublicEncKey(HBCIKey key)voidsetMyPublicSigKey(HBCIKey key)voidsetPIN(java.lang.String pin)voidsetProxy(java.lang.String proxy)voidsetProxyPass(java.lang.String proxypass)voidsetProxyUser(java.lang.String proxyuser)-
Methods inherited from class org.kapott.hbci.passport.AbstractHBCIPassport
askForMissingData, canMixSecMethods, changePassphrase, checkForCryptDataSize, clearBPD, clearInstEncKey, clearInstSigKey, clearMyDigKey, clearMyEncKey, clearMySigKey, clearUPD, close, closeComm, fillAccountInfo, generateNewUserKeys, getAccount, getAccounts, getBLZ, getBPD, getBPDVersion, getCID, getClientData, getComm, getCommFilter, getCountry, getCustomerId, getCustomerId, getDefaultLang, getFilterType, getHBCIVersion, getInstance, getInstance, getInstance, getInstance, getInstName, getJobRestrictions, getJobRestrictions, getLang, getMaxGVperMsg, getMaxMsgSizeKB, getParamHeader, getParamSegmentNames, getParentHandlerData, getPersistentData, getPort, getSigId, getStoredCustomerId, getSuppCompMethods, getSuppLangs, getSuppSecMethods, getSuppVersions, getSysId, getUPD, getUPDVersion, getUserId, isAnonymous, onlyBPDGVs, setBLZ, setCID, setClientData, setCountry, setCustomerId, setFilterType, setHBCIVersion, setHost, setParamHeader, setParentHandlerData, setPersistentData, setPort, setProfileMethod, setProfileVersion, setSigId, setSysId, setUPD, setUserId, syncSigId, syncSysId
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.kapott.hbci.passport.HBCIPassport
saveChanges
-
Methods inherited from interface org.kapott.hbci.passport.HBCIPassportInternal
decrypt, encrypt, hash, resetPassphrase, sign, verify
-
-
-
-
Field Detail
-
KEY_PD_SCA
public static final java.lang.String KEY_PD_SCA
Hier speichern wir, ob wir eine SCA-Ausnahme fuer einen GV von der Bank erhalten haben- See Also:
- Constant Field Values
-
KEY_PD_CHALLENGE
public static final java.lang.String KEY_PD_CHALLENGE
Hier speichern wir den Challenge-Text der Bank fuer die TAN-Abfrage.- See Also:
- Constant Field Values
-
KEY_PD_HHDUC
public static final java.lang.String KEY_PD_HHDUC
Hier speichern wir das HHDuc fuer die TAN-Abfrage.- See Also:
- Constant Field Values
-
KEY_PD_ORDERREF
public static final java.lang.String KEY_PD_ORDERREF
Hier speichern wir die Auftragsreferenz fuer die TAN-Abfrage.- See Also:
- Constant Field Values
-
-
Method Detail
-
getPassportTypeName
public java.lang.String getPassportTypeName()
-
setBPD
public void setBPD(java.util.Properties p)
- Specified by:
setBPDin interfaceHBCIPassportInternal- Overrides:
setBPDin classAbstractHBCIPassport- See Also:
AbstractHBCIPassport.setBPD(java.util.Properties)
-
onDialogEvent
public void onDialogEvent(DialogEvent event, DialogContext ctx)
Description copied from interface:HBCIPassportInternalWird bei einem Dialog-Event ausgefuehrt.- Specified by:
onDialogEventin interfaceHBCIPassportInternal- Overrides:
onDialogEventin classAbstractHBCIPassport- Parameters:
event- das Event.ctx- der Dialog-Kontext.- See Also:
AbstractHBCIPassport.onDialogEvent(org.kapott.hbci.dialog.DialogEvent, org.kapott.hbci.dialog.DialogContext)
-
getCommInstance
public Comm getCommInstance()
- Specified by:
getCommInstancein classAbstractHBCIPassport- See Also:
AbstractHBCIPassport.getCommInstance()
-
isSupported
public boolean isSupported()
- See Also:
HBCIPassport.isSupported()
-
resetSecMechs
public void resetSecMechs()
Kann vornew HBCIHandler()aufgerufen werden, um zu erzwingen, dass die Liste der unterstützten PIN/TAN-Sicherheitsverfahren neu vom Server abgeholt wird und evtl. neu vom Nutzer abgefragt wird.
-
setCurrentTANMethod
public void setCurrentTANMethod(java.lang.String method)
Legt das aktuelle TAN-Verfahren fest.- Parameters:
method- das aktuelle TAN-Verfahren.
-
getCurrentTANMethod
public java.lang.String getCurrentTANMethod(boolean recheck)
Liefert das aktuelle TAN-Verfahren.- Parameters:
recheck- true, wenn die gespeicherte Auswahl auf Aktualitaet und Verfuegbarkeit geprueft werden soll. Die Funktion kann in dem Fall einen Callback ausloesen, wenn mehrere Optionen zur Wahl stehen.- Returns:
- das TAN-Verfahren.
-
getCurrentSecMechInfo
public java.util.Properties getCurrentSecMechInfo()
-
getTwostepMechanisms
public java.util.Hashtable<java.lang.String,java.util.Properties> getTwostepMechanisms()
-
getProfileMethod
public java.lang.String getProfileMethod()
-
getProfileVersion
public java.lang.String getProfileVersion()
-
needUserKeys
public boolean needUserKeys()
-
needInstKeys
public boolean needInstKeys()
-
needUserSig
public boolean needUserSig()
-
getSysStatus
public java.lang.String getSysStatus()
-
hasInstSigKey
public boolean hasInstSigKey()
-
hasInstEncKey
public boolean hasInstEncKey()
-
hasMySigKey
public boolean hasMySigKey()
-
hasMyEncKey
public boolean hasMyEncKey()
-
getInstSigKey
public HBCIKey getInstSigKey()
-
getInstEncKey
public HBCIKey getInstEncKey()
-
getInstSigKeyName
public java.lang.String getInstSigKeyName()
-
getInstSigKeyNum
public java.lang.String getInstSigKeyNum()
-
getInstSigKeyVersion
public java.lang.String getInstSigKeyVersion()
-
getInstEncKeyName
public java.lang.String getInstEncKeyName()
-
getInstEncKeyNum
public java.lang.String getInstEncKeyNum()
-
getInstEncKeyVersion
public java.lang.String getInstEncKeyVersion()
-
getMySigKeyName
public java.lang.String getMySigKeyName()
-
getMySigKeyNum
public java.lang.String getMySigKeyNum()
-
getMySigKeyVersion
public java.lang.String getMySigKeyVersion()
-
getMyEncKeyName
public java.lang.String getMyEncKeyName()
-
getMyEncKeyNum
public java.lang.String getMyEncKeyNum()
-
getMyEncKeyVersion
public java.lang.String getMyEncKeyVersion()
-
getMyPublicDigKey
public HBCIKey getMyPublicDigKey()
-
getMyPrivateDigKey
public HBCIKey getMyPrivateDigKey()
-
getMyPublicSigKey
public HBCIKey getMyPublicSigKey()
-
getMyPrivateSigKey
public HBCIKey getMyPrivateSigKey()
-
getMyPublicEncKey
public HBCIKey getMyPublicEncKey()
-
getMyPrivateEncKey
public HBCIKey getMyPrivateEncKey()
-
getCryptMode
public java.lang.String getCryptMode()
-
getCryptAlg
public java.lang.String getCryptAlg()
-
getCryptKeyType
public java.lang.String getCryptKeyType()
-
getSigFunction
public java.lang.String getSigFunction()
-
getCryptFunction
public java.lang.String getCryptFunction()
-
getSigAlg
public java.lang.String getSigAlg()
-
getSigMode
public java.lang.String getSigMode()
-
getHashAlg
public java.lang.String getHashAlg()
-
setInstSigKey
public void setInstSigKey(HBCIKey key)
-
setInstEncKey
public void setInstEncKey(HBCIKey key)
-
setMyPublicDigKey
public void setMyPublicDigKey(HBCIKey key)
-
setMyPrivateDigKey
public void setMyPrivateDigKey(HBCIKey key)
-
setMyPublicSigKey
public void setMyPublicSigKey(HBCIKey key)
-
setMyPrivateSigKey
public void setMyPrivateSigKey(HBCIKey key)
-
setMyPublicEncKey
public void setMyPublicEncKey(HBCIKey key)
-
setMyPrivateEncKey
public void setMyPrivateEncKey(HBCIKey key)
-
incSigId
public void incSigId()
- Specified by:
incSigIdin interfaceHBCIPassportInternal- Overrides:
incSigIdin classAbstractHBCIPassport
-
collectSegCodes
protected java.lang.String collectSegCodes(java.lang.String msg)
-
getPinTanInfo
public java.lang.String getPinTanInfo(java.lang.String code)
Liefert "J" oder "N" aus den BPD des Geschaeftsvorfalls, ob fuer diesen eine TAN erforderlich ist.- Parameters:
code- der GV-Code.- Returns:
- "J" oder "N". Oder "A", wenn es ein Admin-Segment ist, jedoch keine TAN noetig ist.
-
deactivateTANVerifyMode
public void deactivateTANVerifyMode()
-
activateTANVerifyMode
public void activateTANVerifyMode()
-
setCertFile
public void setCertFile(java.lang.String filename)
-
getCertFile
public java.lang.String getCertFile()
-
setCheckCert
protected void setCheckCert(boolean doCheck)
-
getCheckCert
public boolean getCheckCert()
-
getProxy
public java.lang.String getProxy()
-
setProxy
public void setProxy(java.lang.String proxy)
-
getProxyPass
public java.lang.String getProxyPass()
-
getProxyUser
public java.lang.String getProxyUser()
-
setProxyPass
public void setProxyPass(java.lang.String proxypass)
-
setProxyUser
public void setProxyUser(java.lang.String proxyuser)
-
setPIN
public void setPIN(java.lang.String pin)
-
getPIN
public java.lang.String getPIN()
-
clearPIN
public void clearPIN()
-
getAllowedTwostepMechanisms
public java.util.List<java.lang.String> getAllowedTwostepMechanisms()
-
setAllowedTwostepMechanisms
public void setAllowedTwostepMechanisms(java.util.List<java.lang.String> l)
-
getMaxGVSegsPerMsg
public int getMaxGVSegsPerMsg()
- Specified by:
getMaxGVSegsPerMsgin interfaceHBCIPassportInternal- Overrides:
getMaxGVSegsPerMsgin classAbstractHBCIPassport- See Also:
HBCIPassportInternal.getMaxGVSegsPerMsg()
-
getHost
public java.lang.String getHost()
Ueberschrieben, um das "https://" am Anfang automatisch abzuschneiden. Das sorgte schon fuer so viele unnoetige Fehler.- Specified by:
getHostin interfaceHBCIPassport- Overrides:
getHostin classAbstractHBCIPassport- Returns:
- Hostname oder IP-Adresse des HBCI-Servers
- See Also:
AbstractHBCIPassport.getHost()
-
-