public class SrpAnswer extends DataTelegram
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
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 and Description |
---|
SrpAnswer()
Erstellt eine neue nicht-initialisierte Instanz (zur Initialisierung über
read(DataInputStream) ). |
SrpAnswer(java.math.BigInteger b,
java.math.BigInteger s,
SrpCryptoParameter cryptoParameter)
Erstellt eine neue Instanz mit vordefinierten Werten
|
SrpAnswer(java.lang.String errorMessage)
Erstellt eine negative SRP-Antwort
|
Modifier and Type | Method and Description |
---|---|
java.math.BigInteger |
getB()
Gibt den öffentlichen Serverwert B zurück
|
SrpCryptoParameter |
getCryptoParams()
Gibt die Crypto-Parameter zurück, die der Client (u.a.) zur Erzeugung des Verifiers benutzen soll
|
java.lang.String |
getErrorMessage() |
java.math.BigInteger |
getS()
Gibt das dem Client zugeordnete Salt s zurück
|
boolean |
isValid()
Gibt zurück, ob SRP benutzt werden kann.
|
java.lang.String |
parseToString()
Gibt eine String-Repräsentation dieses Datensatzes zurück.
|
void |
read(java.io.DataInputStream in)
Liest ein Telegramm vom übergegebenen DataInputStream.
|
void |
write(java.io.DataOutputStream out)
Schreibt ein Telegramm in den übergegebenen DataOutputStream.
|
getLength, getPriority, getSize, getTelegram, getType, toShortDebugParamString, toShortDebugString, toString
public SrpAnswer()
read(DataInputStream)
).public SrpAnswer(java.math.BigInteger b, java.math.BigInteger s, SrpCryptoParameter cryptoParameter)
b
- Der öffentliche Server-Wert Bs
- Der Salt-Wert am Benutzernamen des ClientscryptoParameter
- Crypto-Parameter, die der Server dem Client vorgibtpublic SrpAnswer(java.lang.String errorMessage)
errorMessage
- Fehlermeldungpublic java.math.BigInteger getB()
public java.math.BigInteger getS()
public SrpCryptoParameter getCryptoParams()
public boolean isValid()
public void read(java.io.DataInputStream in) throws java.io.IOException
DataTelegram
read
in class DataTelegram
in
- Der DataInputStream.java.io.IOException
- Falls der Datensatz nicht aus dem Stream gelesen werden kann.public void write(java.io.DataOutputStream out) throws java.io.IOException
DataTelegram
write
in class DataTelegram
out
- Der DataOutputStream.java.io.IOException
- Falls der Datensatz nicht in den Stream geschrieben werden kann.public java.lang.String getErrorMessage()
public java.lang.String parseToString()
DataTelegram
parseToString
in class DataTelegram