Class SrpAnswer
java.lang.Object
de.bsvrz.dav.daf.communication.lowLevel.telegrams.DataTelegram
de.bsvrz.dav.daf.communication.lowLevel.telegrams.SrpAnswer
- All Implemented Interfaces:
QueueableTelegram
Zweites Telegramm der SRP-Authentifizierung, wird vom Server zum Client geschickt.
Sendet die SRP-Werte B und s sowie die kryptographischen Parameter an den Client
Kann SRP nicht benutzt werden, enthält das Telegramm einen B-Wert von 0 (was gemäß SRP kein gültiger Wert ist) und einen Fehlermeldungstext als String-Wert
-
Field Summary
Fields inherited from class de.bsvrz.dav.daf.communication.lowLevel.telegrams.DataTelegram
APPLICATION_DATA_TELEGRAM_TYPE, APPLICATION_REQUEST_TYPE, AUTHENTIFICATION_ANSWER_TYPE, AUTHENTIFICATION_REQUEST_TYPE, AUTHENTIFICATION_TEXT_ANSWER_TYPE, AUTHENTIFICATION_TEXT_REQUEST_TYPE, CLOSING_TYPE, COM_PARAMETER_ANSWER_TYPE, COM_PARAMETER_REQUEST_TYPE, DISABLE_ENCRYPTION_ANSWER_TYPE, DISABLE_ENCRYPTION_REQUEST_TYPE, ENCRYPTED_TYPE, KEEP_ALIVE_TYPE, length, priority, PROTOCOL_VERSION_ANSWER_TYPE, PROTOCOL_VERSION_REQUEST_TYPE, RECEIVE_SUBSCRIPTION_TYPE, RECEIVE_UNSUBSCRIPTION_TYPE, REQUEST_SENDER_DATA_TYPE, SEND_SUBSCRIPTION_TYPE, SEND_UNSUBSCRIPTION_TYPE, SRP_ANSWER_TYPE, SRP_REQUEST_TYPE, SRP_VALDIATE_ANSWER_TYPE, SRP_VALDIATE_REQUEST_TYPE, TELEGRAM_TIME_ANSWER_TYPE, TELEGRAM_TIME_REQUEST_TYPE, TERMINATE_ORDER_TYPE, TRANSMITTER_AUTHENTIFICATION_ANSWER_TYPE, TRANSMITTER_AUTHENTIFICATION_REQUEST_TYPE, TRANSMITTER_AUTHENTIFICATION_TEXT_ANSWER_TYPE, TRANSMITTER_AUTHENTIFICATION_TEXT_REQUEST_TYPE, TRANSMITTER_BEST_WAY_UPDATE_TYPE, TRANSMITTER_CLOSING_TYPE, TRANSMITTER_COM_PARAMETER_ANSWER_TYPE, TRANSMITTER_COM_PARAMETER_REQUEST_TYPE, TRANSMITTER_DATA_SUBSCRIPTION_RECEIPT_TYPE, TRANSMITTER_DATA_SUBSCRIPTION_TYPE, TRANSMITTER_DATA_TELEGRAM_TYPE, TRANSMITTER_DATA_TELEGRAM_V2_TYPE, TRANSMITTER_DATA_UNSUBSCRIPTION_TYPE, TRANSMITTER_KEEP_ALIVE_TYPE, TRANSMITTER_LISTS_DELIVERY_UNSUBSCRIPTION_TYPE, TRANSMITTER_LISTS_SUBSCRIPTION_TYPE, TRANSMITTER_LISTS_UNSUBSCRIPTION_TYPE, TRANSMITTER_LISTS_UPDATE_2_TYPE, TRANSMITTER_LISTS_UPDATE_TYPE, TRANSMITTER_PROTOCOL_VERSION_ANSWER_TYPE, TRANSMITTER_PROTOCOL_VERSION_REQUEST_TYPE, TRANSMITTER_REQUEST_TYPE, TRANSMITTER_TELEGRAM_TIME_ANSWER_TYPE, TRANSMITTER_TELEGRAM_TIME_REQUEST_TYPE, TRANSMITTER_TERMINATE_ORDER_TYPE, type
-
Constructor Summary
ConstructorsConstructorDescriptionErstellt eine neue nicht-initialisierte Instanz (zur Initialisierung überread(DataInputStream)
).Erstellt eine negative SRP-AntwortSrpAnswer
(BigInteger b, BigInteger s, SrpCryptoParameter cryptoParameter) Erstellt eine neue Instanz mit vordefinierten Werten -
Method Summary
Modifier and TypeMethodDescriptiongetB()
Gibt den öffentlichen Serverwert B zurückGibt die Crypto-Parameter zurück, die der Client (u.a.) zur Erzeugung des Verifiers benutzen sollgetS()
Gibt das dem Client zugeordnete Salt s zurückboolean
isValid()
Gibt zurück, ob SRP benutzt werden kann.Gibt eine String-Repräsentation dieses Datensatzes zurück.void
read
(DataInputStream in) Liest ein Telegramm vom übergegebenen DataInputStream.void
write
(DataOutputStream out) Schreibt ein Telegramm in den übergegebenen DataOutputStream.Methods inherited from class de.bsvrz.dav.daf.communication.lowLevel.telegrams.DataTelegram
getLength, getPriority, getSize, getTelegram, getType, toShortDebugParamString, toShortDebugString, toString
-
Constructor Details
-
SrpAnswer
public SrpAnswer()Erstellt eine neue nicht-initialisierte Instanz (zur Initialisierung überread(DataInputStream)
). -
SrpAnswer
Erstellt eine neue Instanz mit vordefinierten Werten- Parameters:
b
- Der öffentliche Server-Wert Bs
- Der Salt-Wert am Benutzernamen des ClientscryptoParameter
- Crypto-Parameter, die der Server dem Client vorgibt
-
SrpAnswer
Erstellt eine negative SRP-Antwort- Parameters:
errorMessage
- Fehlermeldung
-
-
Method Details
-
getB
Gibt den öffentlichen Serverwert B zurück- Returns:
- B
-
getS
Gibt das dem Client zugeordnete Salt s zurück- Returns:
- s
-
getCryptoParams
Gibt die Crypto-Parameter zurück, die der Client (u.a.) zur Erzeugung des Verifiers benutzen soll- Returns:
- SrpCryptoParameter oder null falls SRP nicht benutzt werden kann
-
isValid
public boolean isValid()Gibt zurück, ob SRP benutzt werden kann.- Returns:
- true falls SRp benutzt werden kann, somst false
-
read
Description copied from class:DataTelegram
Liest ein Telegramm vom übergegebenen DataInputStream.- Specified by:
read
in classDataTelegram
- Parameters:
in
- Der DataInputStream.- Throws:
IOException
- Falls der Datensatz nicht aus dem Stream gelesen werden kann.
-
write
Description copied from class:DataTelegram
Schreibt ein Telegramm in den übergegebenen DataOutputStream.- Specified by:
write
in classDataTelegram
- Parameters:
out
- Der DataOutputStream.- Throws:
IOException
- Falls der Datensatz nicht in den Stream geschrieben werden kann.
-
getErrorMessage
-
parseToString
Description copied from class:DataTelegram
Gibt eine String-Repräsentation dieses Datensatzes zurück.- Specified by:
parseToString
in classDataTelegram
- Returns:
- Eine String-Repräsentation dieses Datensatzes.
-