Zadanie 3 - SNIFFING
====================

Historyjka
----------
Uruchom program client dostarczony jako materiały do tego zadania
(musisz być połaczony z Internetem). Program łączy się z pewnym
portem pewnego zdalnego hosta gdzie działa serwer i komunikuje
się z nim. Komunikacja przebiega następująco:

1) client wysyła do serwera liczbę naturalną n

2) serwer odpowiada clientowi jakąś inną liczbą f(n), obliczoną
(deterministycznie) na podstawie otrzymanej liczby n

3) rozłączenie

W kroku 1) być może obowiązuje jakiś skomplikowany protokół,
tzn. liczba nie jest przekazywana wprost, ale jakoś zakodowana.

W programie client można wpisać z klawiatury liczbę n która ma zostać
wysłana, natomiast nie można poznać odpowiedzi f(n) ani treści
całej komunikacji.


Zadanie
-------
Prześlij na adres aszek@mimuw.edu.pl liczbę
    f( Twój_numer_indeksu )
najpóźniej 3 dni przed egzaminem. Technika dojścia do rozwiązania dowolna.

Ewentualnie możesz nadesłać częściowe rozwiązanie, tzn. odpowiedzi na
jak najwięcej z następujących pytań:
- nazwa komputera z którym łączy się client
- i numer portu tamże
- co to za protokół? co to za serwer?
- jak jest szyfrowana przesyłana liczba n w kroku 1?
- jaką odpowiedź uzyskałaś/eś po przesłaniu clientem swojego numeru indeksu?


Uwagi
-----
Z oczywistych względów nie mogę udostępnić źródła programu client, a z
plikami binarnymi (skompilowanymi) bywa tak, że nie u wszystkich muszą działać.
Program client był skompilowany na maszynie students. 

W razie problemów pobierz ze strony plik asemblerowy client.s i skompiluj samemu:

as -c client.s -o client.o
gcc client.o -o client

W razie dalszych problemów proszę o kontakt.

Jeżeli masz problem z dostępem do Linuxa/konta roota etc. możesz wypożyczyć w
akwarium klucz do laboratorium 3060. Tam można wszystko.