Class | Tree | Deprecated | Index | Help
PREV | NEXT SHOW LISTS | HIDE LISTS

Class Network

java.lang.Object
    |
    +----Authenti
            |
            +----Network

public class Network
extends Authenti

Netzwerk-Klasse, die einerseits dazu dient, an den Ports Authenti.AUTHENTI_SOCKET   und Authenti.AGGRESSOR_SOCKET auf Clients zu warten und andererseits einen   Netzwerk-Knoten in einem unsicheren Netzwerk repräsentiert - d.h. es wird einem Angreifer gestattet, die Kommunikation zwischen einem Client und einem Server abzuhören.

Mit startup() wird das Netzwerk gestartet und die beiden Dienste auf den Ports Authenti.AUTHENTI_SOCKET und Authenti.AGGRESSOR_SOCKET zur Verfügung gestellt. Meldet sich ein Client auf Authenti.AUTHENTI_SOCKET, so wird ein neues AuthentiServer-Objekt kreiert und die Kommunikation mit diesem kann beginnen. Hat sich vorher ein Aggressor auf dem Port Authenti.AGGRESSOR_SOCKET angemeldet, wird die Kommunikation vom Aggressor abgehört und modifiziert. Die Kommunikation wird abgebrochen, sobald einer der Teilnehmer die Kommunikation beendet.

Ein Aggressor kommuniziert mit Client und Server nur über jeweils einen Eingabe- und Ausgabestream. Dabei wird jeder Zeile der Präfix Authenti.CLI2SRV vorangestellt, falls der Text vom Client stammt bzw. an den Server geschickt werden soll; der Präfix Authenti.SRV2CLI wird vorangestellt, falls der Text vom Server stammt bzw. an den Client geschickt werden soll.

Version:
1.0
Author:
Thomas Wolf

Fields inherited from class Authenti
 AGGRESSOR_SOCKET, AUTHENTI_SOCKET, AUTHENTICATE_P1, AUTHENTICATE_P2, BYE, CLI2SRV, GET_KEY, SEPARATOR, SRV2CLI
 

Constructor Summary
 Network(java.net.Socket client)
Konstruktor für einen Netzwerkknoten ohne Aggressor.
 Network(java.net.Socket client, java.net.Socket aggressor)
Konstruktor für einen Netzwerkknoten mit Aggressor.
 

Method Summary
java.io.Reader  getServerReader()
Liefert einen InputStream, um von diesem Netzwerkknoten zu lesen.
java.io.Writer  getServerWriter()
Liefert einen OutputStream, um auf diesen Netzwerkknoten zu schreiben.
void  start()
Startet den Netzwerkknoten.
static void  startup()
Startet das Netzwerk.
 
Methods inherited from class java.lang.Object
 clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Network

protected Network(java.net.Socket client) throws java.io.IOException
Konstruktor für einen Netzwerkknoten ohne Aggressor.
Parameters:
client - Client-Socket

Network

protected Network(java.net.Socket client,
                  java.net.Socket aggressor) throws java.io.IOException
Konstruktor für einen Netzwerkknoten mit Aggressor.
Parameters:
client - Client-Socket
aggressor - Aggressor-Socket
Method Detail

startup

public static void startup()
Startet das Netzwerk.

getServerReader

public java.io.Reader getServerReader()
Liefert einen InputStream, um von diesem Netzwerkknoten zu lesen.
Parameters:
InputStream - zum Lesen vom Netzwerkknoten

getServerWriter

public java.io.Writer getServerWriter()
Liefert einen OutputStream, um auf diesen Netzwerkknoten zu schreiben.
Parameters:
OutputStream - zum Schreiben auf den Netzwerkknoten

start

protected void start()
Startet den Netzwerkknoten.

Class | Tree | Deprecated | Index | Help
PREV | NEXT SHOW LISTS | HIDE LISTS