2008 01 Obliczenia pasożytnicze

background image

www.hakin9.org

hakin9 Nr 01/2008

36

Atak

P

rzesyłanie informacji za pośrednic-
twem Internetu jest złożonym proce-
sem regulowanym przez zestaw pro-

tokołów. Protokoły te implementowane są
obecnie zgodnie z globalnym standardem
– określającym warstwy funkcjonalne wymaga-
ne do obsługi połączeń – o nazwie OSI (Open
System Interconnection
). Kiedy użytkownik
wpisuje do swojej przeglądarki internetowej ad-
res URL w celu obejrzenia strony WWW, prze-
glądarka nawiązuje połączenie przy wykorzy-
staniu protokołu TCP (Transmission Control
Protocol
). W następnej kolejności, przy wy-
korzystaniu istniejącego połączenia TCP, wy-
syłane jest żądanie za pośrednictwem pro-
tokołu HTTP (Hyper Text Transfer Protocol).
Pakiet TCP jest przesyłany przez sieć za po-
średnictwem protokołu IP (Internet Protocol).
Przesyłany komunikat może zostać podzielo-
ny na mniejsze pakiety, które przesłane zosta-
ną niezależnie przez szereg routerów znajdu-
jących się między źródłem a miejscem docelo-
wym. Kiedy żądanie HTTP dotrze do miejsca
przeznaczenia, odpowiedź odsyłana jest tym
samym połączeniem TCP, jakie zostało nawią-
zane przez przeglądarkę użytkownika.

Mechanizmy zaimplementowane w proto-

kołach TCP/IP rekonstruują oryginalny komu-

nikat ze zbioru pakietów, jakie zostały przesła-
ne przez sieć. Komunikat ten jest ostatecznie
przetwarzany w warstwie aplikacji przez proto-
kół HTTP. Po zinterpretowaniu żądania przez
serwer WWW zostaje wygenerowana odpo-
wiedź (może to być właściwa strona, komuni-
kat o błędzie itd.).

Jak widać, prosty z pozoru proces wymaga

dosyć znacznej liczby obliczeń – zarówno po
stronie wysyłającej, jak i odbierającej żądanie.
Niezawodność komunikacji, jaką zapewnia do-

Obliczenia pasożytnicze

Michał Styś

stopień trudności

Niezawodne przesyłanie danych w Internecie gwarantowane

jest przez zestaw protokołów sieciowych implementowanych

w systemach komputerowych. Artykuł ten pokaże, w jaki sposób

protokoły te mogą zostać wykorzystane w celu zmuszenia

zdalnych systemów do nieświadomego wykonania użytecznych

z punktu widzenia napastnika obliczeń.

Z artykułu dowiesz się

• w jaki sposób wykorzystać protokoły sieciowe,

aby wykonywać obliczenia na komputerach
podłączonych do Sieci,

• jakie znaczenie dla bezpieczeństwa kompu-

terowego ma trudność rozwiązywania proble-
mów klasy NP.

Co powinieneś wiedzieć

• powinieneś mieć podstawową wiedzę o modelu

OSI,

• powinieneś rozumieć, jak działają protokoły

sieciowe.

background image

Techniki obliczeń pasożytniczych

hakin9 Nr 01/2008

www.hakin9.org

37

datkowo protokół TCP, wprowadza
takie elementy jak trójfazowe uzgad-
nianie połączenia, potwierdzanie
otrzymania pakietu, sumy kontrolne
oraz numery sekwencyjne. Elementy
zapewniające niezawodność komu-
nikacji można jednak wykorzystać
w zupełnie innym celu niż ten, do
którego zostały zaprojektowane.

Pasożytniczy komputer

Termin pasożytniczy komputer odno-
si się do realizacji abstrakcyjnej ma-
szyny składającej się z rozproszo-
nych w sieci komputerów. Podobnie
jak w przypadku standardowych pro-
jektów realizujących obliczenia roz-
proszone, maszyna ta zbudowana
jest w oparciu o protokoły sieciowe.
W odróżnieniu jednak od nich, układ
pasożytniczy wykonuje obliczenia
bez wiedzy i pozwolenia właścicie-
la komputera ofiary, wykorzystywa-
nego jako węzeł obliczeniowy. Infor-
matyka pasożytnicza nie musi zakła-
dać również konieczności ingerencji
w oprogramowanie działające na
komputerze ofiary. Nie dochodzi tu-
taj do włamania do zdalnego systemu
ani też instalowania na nim jakiego-
kolwiek złośliwego oprogramowania.

Realizacja

pasożytniczego

komputera

Protokół TCP dobrze nadaje się do
zrealizowania idei pasożytniczego
komputera w praktyce. Do tego ce-
lu posłużyć może mechanizm sumy
kontrolnej
.

Pakiet przesyłany przez Inter-

net może w którymś momencie ulec

uszkodzeniu. Przykładowo, seria sy-
gnałów elektrycznych reprezentu-
jących bity może zostać zmieniona
w czasie przepływu przez kabel kon-
centryczny wskutek tłumienia lub in-
terferencji wywołanych przez źródła
pól elektromagnetycznych znajdują-
cych się w pobliżu medium transmi-
syjnego. Aby zapewnić niezawod-
ność w tego typu sytuacjach, proto-
kół TCP wprowadza mechanizm su-
my kontrolnej. Komputer wysyłający
pakiet oblicza jego sumę kontrolną
i dołącza ją do pakietu. Następnie
operację obliczenia sumy kontrolnej
odbiorca wykonuje na otrzymanym
pakiecie. Jeśli suma kontrolna zapi-
sana w pakiecie zgadza się z sumą
obliczoną dla tego pakietu, oznacza
to, że dane są poprawne i mogą być
przekazane do wyższych warstw
protokołów modelu OSI. Jeśli wy-
stąpiła niezgodność, pakiet uznawa-
ny jest za uszkodzony, a warstwa TCP
usuwa go i nie wysyła do odbiorcy
potwierdzenia otrzymania danych.

Interesującą nas właściwością

tego mechanizmu jest fakt, że suma
kontrolna TCP wyliczana jest przy
wykorzystaniu operacji wystarcza-
jących do wykonania każdej ope-
racji mieszczącej się w zakresie al-
gebry Boole'a. Istnieje zatem możli-
wość wykorzystania go jako bram-
ki logicznej. To z kolei otwiera drzwi
do wykonywania operacji arytme-
tycznych.

Implementacja układu obliczeń

pasożytniczych wykorzystujących
protokół TCP polega na zbudowa-
niu pakietu ze specjalnie sprepa-
rowaną sumą kontrolną. Kompu-

ter ofiary w procesie przetwarza-
nia żądania i generowania odpowie-
dzi automatycznie wykona zlecone
obliczenie – podczas wykonywania
algorytmu sprawdzania sumy kon-
trolnej. Zakres działania omawia-
nych mechanizmów wystarcza do
zbudowania pasożytniczego układu
obliczeniowego.

Informatyka

pasożytnicza

W obliczu omówionego potencjału
związanego z możliwością korzy-
stania z zasobów obliczeniowych
komputerów w Internecie pojawia
się pytanie: do czego można taki
mechanizm zastosować?

W roku 2001 czterech naukow-

ców – Albert Laszlo Barabasi, Vin-
cent W. Freeh, Hawoong Jeong
oraz Jay B. Brockman – zapropo-
nowało mechanizm rozwiązywa-
nia problemu klasy NP (non-poly-
nomial
) przy wykorzystaniu obli-
czeń pasożytniczych. Ich publika-
cja wzbudziła spore zainteresowa-
nie, jako że na trudności rozwiązy-
wania problemów tej klasy opiera
się całe bezpieczeństwo współcze-
snych mechanizmów kryptograficz-
nych. Gdyby znaleziony został spo-
sób na rozwiązywanie problemów
NP w rozsądnym czasie, większość
znanych technik kryptograficznych
stałaby się bezużyteczna.

Aby rozwiązywać problemy

matematyczne przy wykorzystaniu
sumy kontrolnej TCP, konieczna je-
stodpowiednia reprezentacja proble-
mu. Dla problemów NP stosowna
w tym przypadku jest reprezen-

Listing 1.

Program dla pasożytniczej maszyny wirtualnej napisany w mikroassemblerze 4IA (plik sub.4ia)

ARCH

8

10

;

Definicja

architektury

.

Rejestry

o

d

ł

ugo

ś

ci

8

bit

ó

w

,

liczba

rejestr

ó

w

10

00

:

SET

r3

,

0xFF

;

Do

rejestru

r3

ł

adujemy

warto

ść

-

1

01

:

SET

r2

,

5

;

Do

rejestru

r2

ł

adujemy

5

.

B

ę

dzie

to

ilo

ść

iteracji

w

p

ę

tli

02

:

SET

r9

,

100

;

Rejestr

r9

przechowa

warto

ść,

od

kt

ó

rej

b

ę

dziemy

odejmowa

ć

03

:

SET

r0

,

4

;

Do

rejestru

instrukcji

ł

adujemy

numer

,

od

kt

ó

rego

zacznie

si

ę

p

ę

tla

04

:

ADD

r9

,

r3

;

Wykonujemy

operacj

ę

odejmowania

na

rejestrze

r9

(

100

+

(

-

1

))

05

:

SET

r1

,

0

;

Reset

flagi

przepe

ł

nienia

06

:

ADD

r2

,

r3

;

Zmniejszamy

licznik

p

ę

tli

o

1

07

:

ADD

r0

,

r1

;

Je

ś

li

flaga

przepe

ł

nienia

==

1

,

skaczemy

do

instrukcji

09

08

:

SET

r0

,

9

;

Koniec

p

ę

tli

,

skok

do

linii

10

09

:

SET

r0

,

3

;

P

ę

tla

trwa

,

skok

do

linii

04

10

:

HLT

;

Koniec

dzia

ł

ania

programu

background image

hakin9 Nr 01/2008

www.hakin9.org

Atak

38

tacja problemu jako Boole'owskie
równanie spełnialności. Równania
takie określa się jako SAT. Równa-
nia spełnialności SAT pozwalają
na zapis problemu przy wykorzy-
staniu operatorów logiki Boole'a.
Jako przykład równania SAT może
posłużyć następująca konstrukcja:

P=(x1 XOR x2) AND (~x2 AND x3)

P

oznacza tu problem, natomiast

x1

,

x2

oraz

x3

są parametrami. W pre-

zentowanym przykładzie istnieje 23
potencjalnych rozwiązań, ale rów-
nanie będzie spełnione tylko dla jed-
nego z nich – w tym przypadku

x1=1

,

x2=0

,

x3=1

. Rozwiązywanie proble-

mów SAT polega na odnalezieniu
takiej wartości wszystkich parame-
trów, aby całe równanie mogło być
spełnione. Zaprezentowany przy-
kład równania SAT jest trywialny
i może być rozwiązany bardzo łatwo.
W przypadku bardziej złożonych rów-
nań zawierających więcej parame-
trów problem staje się NP-zupełny.

Z uwagi na swoją specyfikę, rów-

nanie SAT może zostać zapisane
jako sekwencja bitów, która zosta-
je następnie uformowana w pakiet
TCP i wysłana do ofiary jako ele-
ment problemu do policzenia.

Scenariusz pasożytniczego kom-

putera zilustrowany został na Ry-
sunkach 1 oraz 2. W pierwszym
kroku komputer-pasożyt, nadzo-
rujący proces wykonywania obli-
czeń, przygotowuje 2n specjalnie
skonstruowanych pakietów zawie-
rających wszystkie możliwe kom-
binacje parametrów równania SAT.
Następnie wysyła spreparowane
pakiety TCP do pewnej liczby ma-
szyn-ofiar. Maszyny te wyposażo-
ne są w jednostki arytmetyczno-
logiczne, umożliwiające wykony-
wanie obliczeń oraz w interfejsy
sieciowe umożliwiające zdalne po-
łączenia (warunki te spełnia każ-
dy komputer podłączony do Inter-
netu). Pakiety zawierające błęd-
ne rozwiązania nie posiadają
prawidłowej sumy kontrolnej i zosta-
ją odrzucone (ilustruje to strzałka
z opisująca błędne rozwiązanie).
W przypadku, gdy rozwiązanie
problemu jest poprawne, oblicze-
nie sumy kontrolnej zakończy się
sukcesem, a pakiet trafi w górę
stosu protokołów.

Ponieważ protokół HTTP za-

kłada generowanie odpowiedzi na
wszystkie, nawet niepoprawne, żą-
dania, zostanie ona wysłana, gdy
tylko pakiet dotrze do warstwy apli-

kacji. Dzięki temu można rozpo-
znać, który zestaw parametrów
jest poprawnym rozwiązaniem pro-
blemu SAT.

Po wysłaniu wszystkich pakie-

tów do milionów komputerów w In-
ternecie odpowiedziałyby tylko te,
które otrzymały pakiety zawiera-
jące parametry równania SAT bę-
dące prawidłowym rozwiązaniem.
Reszta pakietów zostałaby po pro-
stu odrzucona. Możliwe jest zatem
odnalezienie rozwiązania bez wy-
konywania obliczeń na lokalnym
komputerze.

Barabasi, Freeh, Jeong oraz

Brockman przeprowadzili udaną pró-
bę rozwiązania równania SAT przy
wykorzystaniu omawianej techni-
ki. Udowodnili tym samym tezę, że
możliwe jest zmuszanie kompute-
rów w Internecie do wykonywania
konkretnych obliczeń bez koniecz-
ności naruszania ich infrastruktury
i instalowania na nich dodatkowego
oprogramowania. Dodatkowo spo-
re problemy stwarza zabezpiecze-
nie się przed tego typu technikami.
Ponieważ wykorzystywane są stan-
dardowe mechanizmy zapewniające
funkcjonowanie komputera w sieci,
uniemożliwienie takich obliczeń jest
praktycznie nierealne.

Obliczenia pasożytnicze

w praktyce

Czy opisane techniki wystarcza-
ją do praktycznego zastosowania
obliczeń pasożytniczych w posta-
ci skonstruowania gigantycznego
superkomputera i zagrożenia tech-
nikom kryptograficznym? Okazuje się,
że nie do końca. Omawiane podej-
ście prezentuje jak najbardziej god-
ny uwagi, wręcz rewolucyjny sposób
spojrzenia na możliwości prowadze-
nia obliczeń rozproszonych, ale spra-
wa komplikuje się po rozważeniu kilku
dodatkowych czynników.

Listing 3.

Polecenie sh do wylistowania hosta

sh
Hostname Address Packets Timeouts Enabled Falsepos.
-------------------- --------------- ------- -------- ------- -----------
192.168.0.2 192.168.0.2 0 0 yes untested
192.168.0.3 192.168.0.3 0 0 yes untested

Listing 2.

Stan rejestrów pasożytniczej maszyny wirtualnej po

zakończeniu wykonywania zadania obliczeniowego

Register Decimal Hex Comment
-------- ------- ------- ---------------------------
r0000000 10 0x000a Instruction pointer (ip)
r0000001 0 0x0000 Flag register (fl)
r0000002 255 0x00ff XIA error register
r0000003 255 0x00ff XIA carry register
r0000004 0 0x0000
r0000005 0 0x0000
r0000006 0 0x0000
r0000007 0 0x0000
r0000008 0 0x0000
r0000009 95 0x005f
r0000010 0 0x0000

background image

Techniki obliczeń pasożytniczych

hakin9 Nr 01/2008

www.hakin9.org

39

Pierwszy problem rodzi mecha-

nizm identyfikowania prawidłowych
rozwiązań. W przypadku niepo-
prawnego obliczenia sumy kontro-
lnej pakietu przez komputer-ofia-
rę, TCP usuwa pakiet i nie generuje
żadnej odpowiedzi. W efekcie trud-
ne jest ustalenie, czy nie otrzymali-
śmy odpowiedzi wskutek faktycznie
niepoprawnej sumy kontrolnej, czy
też na przykład w wyniku zmiany
polityki firewalla lub po prostu odłą-
czenia komputera-ofiary od sieci.

Drugim aspektem trudności wy-

korzystania informatyki pasożytni-
czej w obecnej postaci jest fakt du-
żego zapotrzebowania na pasmo
potrzebne do rozesłania wielkiej ilo-
ści pakietów SAT. Samo przygoto-
wanie takich pakietów również wy-
maga sporej mocy obliczeniowej.
Czynniki te powodują, że na dzień
dzisiejszy opisywane podejście nie
jest wystarczająco wydajne, aby
mogło służyć budowie i praktycz-
nemu wykorzystaniu gigantyczne-
go klastra zbudowanego z milionów
komputerów znajdujących się w In-
ternecie.

Przykładowa

aplikacja pasożytnicza

Dobrym przykładem aplikacji reali-
zującej obliczenia pasożytnicze przy
wykorzystaniu omawianej metodolo-

gii jest stworzona przez Jürga Reus-
sera oraz Luziana Scherrera maszy-
na wirtualna. Oprogramowanie to
jest publicznie dostępne pod adre-
sem http://szene.ch/parasit/. Oma-
wiana maszyna jest w pełni progra-
mowalna i zdolna rozwiązać dowol-
ny znany problem matematyczny.

W celu zainstalowania oprogra-

mowania pasożytniczej maszyny wir-
tualnej, należy pobrać kod źródłowy.
Dostępny jest on pod adresem http://
szene.ch/parasit/code/parasitic_
computing.tar.gz
Niniejszy artykuł za-
wiera opis wykorzystania omawianej
aplikacji w systemie Linux. Po pobra-
niu archiwum należy je rozpakować.
Można to zrobić poleceniem:

tar -zxf parasitic_computing.tar.gz

Następnie przechodzimy do instalacji:

make
make install

Aplikacja instaluje się domyślnie
w katalogu

/usr/local

, a więc wa-

riant ten wymaga uprawnień do zapi-
suw tym katalogu. Aby zmienić doce-
lowy katalog, należy zmienić wartość
zmiennej PREFIX w pliku Makefile.

Do korzystania z programu ko-

nieczne jest zrozumienie podstaw
jego działania. Maszyna wirtualna

wyposażona została w zestaw reje-
strów, które wykorzystywane są do
wykonywania zadań. Rejestry po-
siadają oznaczenia

rn

gdzie

n

okre-

śla numer rejestru. Wyróżnić można
tu trzy typy rejestrów:

• r0 – rejestr instrukcji. Przeznaczo-

ny do przechowywania numeru
aktualnie wykonywanej instrukcji.
Manipulacja jego zawartością po-
zwala na sterowanie przebiegiem
zadania,

• r1 – rejestr flagi. Pozwala na wy-

krywanie warunku zakończenia
działania pętli. Przyjmuje wartość

1

, gdy w którymś z rejestrów ogól-

nego przeznaczenia dojdzie do
przepełnienia wywołanego dzia-
łaniem instrukcji ADD (instrukcje
omówione zostały poniżej),

• r2...rn – rejestry ogólnego prze-

znaczenia. Można przechowy-
wać w nich wartości oraz wyko-
nywać operacje arytmetyczne.

Autorzy aplikacji stworzyli zestaw in-
strukcji pozwalający na definiowanie
zadań obliczeniowych realizowanych
na zdalnych maszynach. Język ten
bazuje na klasycznym assemblerze.
Określony został jako

4IA

, co ozna-

cza czteroinstrukcyjny assembler
(4 Instruktionen Assembler). Zgod-
nie z nazwą, posiada on cztery pod-
stawowe instrukcje:

• HLT – instrukcja przerywa wyko-

nanie zadania obliczeniowego,

• SET dst, const – instrukcja

umieszcza wartość const w reje-
strze określonym na pozycji dst,

• MOV dst, src – instrukcja ta ko-

piuje wartość rejestru src do reje-
stru określonego jako dst,

• ADD dst, src – instrukcja ADD po-

zwala na dodanie wartości prze-
chowywanej w rejestrze src do
wartości rejestru dst. Wynik zapisa-

Problemy wielomianowe

Problemy wielomianowe to takie zadania, dla których na maszynie Turinga możliwe
jest wygenerowanie rozwiązania w czasie wielomianowo proporcjonalnym do długo-
ści danych wejściowych. Czas potrzebny do rozwiązania takiego problemu jest bezpo-
średnio zależny od długości danych wejściowych podniesionych do stałej potęgi. Dla
problemów klasy NP (niewielomianowych) nie ma takich rozwiązań. Dla tej klasy pro-
blemów niewielki wzrost długości danych wejściowych wywołuje znaczne wydłużenie
czasu rozwiązywania problemu (czas może rosnąć wykładniczo).

Dla problemów NP-zupełnych będących podzbiorem problemów klasy NP udo-

wodniono brak rozwiązań w czasie proporcjonalnym do wielomianowego.

W przypadku nietrywialnych danych wejściowych problemy NP są trudne w roz-

wiązywaniu.

Listing 4.

Ilość pakietów pasożytniczych

sh
Hostname Address Packets Timeouts Enabled Falsepos.
-------------------- --------------- ------- -------- ------- -----------
192.168.0.2 192.168.0.2 817 0 yes untested
192.168.0.3 192.168.0.3 809 0 yes untested

background image

hakin9 Nr 01/2008

www.hakin9.org

Atak

40

ny zostaje w rejestrze dst. Jeśli doj-
dzie do przepełnienia zakresu reje-
stru, ustawiona zostaje flaga

r1

.

Zestaw powyższych instrukcji wystar-
cza do realizacji każdej operacji aryt-
metycznej. Jako przykład zrealizowa-
na zostanie prosta operacja odejmo-
wania. Trywialny problem

100 - 5

zde-

finiować można w następujący sposób:
Tak przygotowany program gotowy jest
do uruchomienia na pasożytniczej ma-
szynie. Sama maszyna uruchamiana
jest przy wykorzystaniu polecenia:

/usr/local/bin/pshell

Najpierw należy przygotować plik
z adresami IP komputerów, które
wykorzystane zostaną jako ofia-
ry. Adresy rozdzielane są znakami
nowej linii. Po przygotowaniu pliku
i uruchomieniu

pshell

, należy go

załadować:

lh /sciezka/do/pliku/adresow_IP

Przykład:

lh /home/parasite/hosts
Hostlist loaded

Hosty wylistować można przy wyko-
rzystaniu polecenia

sh

: W celu wyko-

nania napisanego zadania posłużyć
należy się następującym poleceniem:

xp /home/parasite/sub.4ia

Jeśli wszystko zakończy się po-
wodzeniem (hosty – ofiary po-

winny być włączone), otrzymamy
komunikat:

Execution successfully terminated.

Wyniki (stan rejestrów) obejrzeć
można przy wykorzystaniu polece-
nia

sr

. Rejestr

r9

przechowuje zgod-

ną z oczekiwaniami wartość

100 – 5

= 95

. Obliczenia powiodły się.

Teraz zobaczyć można także, ile

pasożytniczych pakietów wysłanych
zostało do poszczególnych kompute-
rów. Szczegółowe statystyki obejrzeć
można po wydaniu polecenia

ss

.

Przykłady bardziej skompliko-

wanych zadań dostarczone są wraz
z maszyną wirtualną i po instalacji
znaleźć je można w katalogu

/usr/

local/share/parasit/4ia/

.

Strukturę wysyłanych pakietów

można obejrzeć na maszynach-
ofiarach przy wykorzystaniu dowol-
nego sniffera sieciowego (najlepiej
Wireshark). Obserwować należy
pakiety ICMP przesyłane między
ofiarą i pasożytem, ponieważ pa-
sożytniczy mechanizm obliczeń zo-
stał zaimplementowany przy wyko-
rzystaniu właśnie tego protokołu.

Aspekty legalności

Mimo, że informatyka pasożytni-
cza nie narusza integralności sys-
temów wykonujących zlecone ob-
liczenia, może powodować opóź-
nienia ich działania. Duże ilości
pakietów przesyłane do interfejsów
sieciowych powodują efekty po-
dobne do ataku typu Denial of Se-
rvice
. Z tego powodu powstaje sze-
reg pytań natury etyczno-prawnej

dotyczących wykorzystywania mo-
cy obliczeniowej maszyn znajdują-
cych się w Internecie bez pozwo-
lenia ich właścicieli. Wszystko to
skłania do refleksji na temat okre-
ślenia granic własności zasobów
Internetu.

Podsumowanie

Podsumowując, da się zauważyć,
że informatyka pasożytnicza za-
ciera granice pomiędzy komunika-
cją a obliczeniami w sieci. Udowod-
niono, że możliwe jest wymusze-
nie użytecznych obliczeń na zdal-
nych komputerach przy wykorzy-
staniu samej infrastruktury obec-
nego Internetu. Mimo, iż w prakty-
ce zastosowanie obliczeń pasożyt-
niczych w ich obecnej formie jest
mocno ograniczone, otwiera drogę
do kolejnych eksperymentów i zna-
cząco wpływa na aspekty spojrze-
nia na Internet. l

Rysunek 1.

Prototyp

pasożytniczego komputera

Pasożyt

Ofiara

HTTP

HTTP

TCP

TCP

IP

IP

Sieć

Sieć

Interfejs fizyczny

Poprawne rozwiązanie

Błędne rozwiązanie – brak odpowiedzi

Pakiet odrzucony z powodu

błędnej sumy kontrolnej

Rysunek 2.

Działania mechanizmu

obliczeń pasożytniczych

Pasożyt

niepoprawna

suma kontrolna

(brak odpowiedzi)

niepoprawna

suma kontrolna

(brak odpowiedzi)

Ofiara

Ofiara

Ofiara

Poprawna

suma

kontrolna

(odpowiedź)

Znaleziono

poprawne

rozwiązanie!

O autorze

Aktualnie jest studentem drugiego roku SUM Informatyki na Akademii Górniczo-Hutni-
czej w Krakowie. Do jego głównych zainteresowań należy programowanie, administra-
cja systemów komputerowych oraz aspekty bezpieczeństwa informatycznego.
Kontakt z autorem: michal.stys@gmail.com

W Sieci

http://www.nd.edu/~parasite/ – strona twórców idei informatyki pasożytniczej wyko-

rzystującej mechanizmy protokołów internetowych,

http://szene.ch/parasit/ – strona z implementacjami oprogramowania wykorzystu-

jącego techniki obliczeń pasożytniczych.


Wyszukiwarka

Podobne podstrony:
2008 Metody obliczeniowe 08 D 2008 11 11 21 31 58
2008 01 22 20 11 mapa fizyczna europy A4
IPN 23 2008 01 04
2008 01 We Help You To Choose the Best Anti spyware [Consumer test]
2008 01 28 algebra ineq
Wykłady Maćkiewicza, 2008.01.23 Językoznawstwo ogólne - wykład 12, Językoznawstwo ogólne
2008-01-11 Reprywatyzacyjny wezel, materiały, Z PRASY
Joining Forces 2008 01
pdxp recenzja re 2008 01
2008 01 Biomechanika zabiegów manualnych(1)
2008 01 I kongres Limfologiczny
LORIEN SODEXHO VOLVO ZESTAWIENIE URZADZEN 2008 01 29
2008 01 Fizjoterapia w okresie Nieznany
łapiński 25 ind kp a dyrektywa eps 2008 01 021
2008 01 Fizjoterapia NTM

więcej podobnych podstron