kerberos.packets
Interface IPacketReader

All Known Implementing Classes:
PacketReader

public interface IPacketReader

Die Nachrichten-Typen finden sich in Messages/Message.java Der Konstruktor bekommt das Paket als Byte-Array übergeben. Die Werte müssen in der gleichen Reihenfolge und Verschlüsseltung ausgelesen werden, in der sie auch gespeichert worden sind, Denn es ist keinerlei Typ oder Reihenfolgeninformation im Paket enthalten. Allerdings ist über den Messagetyp der zugehörige Paketinhalt definiert wodurch dieses in festgelegter Reihenfolge ausgelesen werden kann. Die PacketException sollte im Normalfall nie auftreten. Daher wäre eine PacketException ein Indiz für einen Programmier- oder kritischen Systemfehler

Author:
Christian Morgenstern
See Also:
IPaketBuilder, messages.Message

Method Summary
 int getMessageType()
          Liest den Message-Typ des Paketes.
 byte[] readData(byte[] schlüssel)
          Liest verschlüsselte Binärdaten
 byte[] readDataNonCrypt()
          Liest unverschlüsselte Binärdaten
 long readLong(byte[] schlüssel)
          Liest verschlüsselte Zahl
 long readLongNonCrypt()
          Liest unverschlüsselte Zahl
 long readNonce(byte[] schlüssel)
          Liest einen verschlüsselten Nonce-Wert
 long readNonceNonCrypt()
          Liest einen unverschlüsselten Nonce-Wert
 java.lang.String readString(byte[] schlüssel)
          Liest einen verschlüsselten String
 java.lang.String readStringNonCrypt()
          Liest einen unverschlüsselten String
 

Method Detail

readNonce

public long readNonce(byte[] schlüssel)
               throws PacketException,
                      PasswortFalschException
Liest einen verschlüsselten Nonce-Wert

Parameters:
schlüssel - Schlüssel im Binärformat
Returns:
Gelesener Nonce-Wert (unverschlüsselt)
Throws:
PacketException
PasswortFalschException

readNonceNonCrypt

public long readNonceNonCrypt()
                       throws PacketException
Liest einen unverschlüsselten Nonce-Wert

Returns:
Gelesener Nonce-Wert
Throws:
PacketException

readString

public java.lang.String readString(byte[] schlüssel)
                            throws PacketException,
                                   PasswortFalschException
Liest einen verschlüsselten String

Parameters:
schlüssel - Schlüssel im Binärformat
Returns:
Gelesener String (unverschlüsselt)
Throws:
PacketException
PasswortFalschException

readStringNonCrypt

public java.lang.String readStringNonCrypt()
                                    throws PacketException
Liest einen unverschlüsselten String

Returns:
Gelesener String
Throws:
PacketException

readData

public byte[] readData(byte[] schlüssel)
                throws PacketException,
                       PasswortFalschException
Liest verschlüsselte Binärdaten

Parameters:
schlüssel - Schlüssel im Binärformat
Returns:
Gelesene Binärdaten (unverschlüsselt)
Throws:
PacketException
PasswortFalschException

readDataNonCrypt

public byte[] readDataNonCrypt()
                        throws PacketException
Liest unverschlüsselte Binärdaten

Returns:
Gelesene Binärdaten
Throws:
PacketException

readLong

public long readLong(byte[] schlüssel)
              throws PacketException,
                     PasswortFalschException
Liest verschlüsselte Zahl

Parameters:
schlüssel - Schlüssel im Binärformat
Returns:
Gelesene Zahl (unverschlüsselt)
Throws:
PacketException
PasswortFalschException

readLongNonCrypt

public long readLongNonCrypt()
                      throws PacketException
Liest unverschlüsselte Zahl

Returns:
Gelesene Zahl
Throws:
PacketException

getMessageType

public int getMessageType()
Liest den Message-Typ des Paketes.

Returns:
Message-Typ dieses Paketes. Die Typen sind in messages/Message.java spezifiziert