Gnutella protokolli täiustamine "mürgitajate" vastu

Meelis Roos

Gnutella on mitmest failijagamisvõrgust koosnev süsteem. Tegemist on detsentraliseeritud süsteemiga - klientmasinad loovad omavahel ühendusi ja moodustavad niimoodi graafi. Selle võrgu piires toimub failide otsimine ja transport.

Leitud faili transporti optimeeritakse - faili erinevaid osi tõmmatakse võimalusel mitmest erinevast kohast korraga. Nii saavutatakse suurem kiirus. Võrgus leidub aga "mürgitajaid" - kasutajaid, kes jagavad faile vale nime all või jagavad valesid failitükke. Esimeste vastu pole suurt midagi teha, teiste vastu aga saab graafiteoreetilise krüptograafia meetoditega.

Iga failijupiga, mida kliendile saadetakse, tuleb kaasa panna tõestus, et tegu on õige jupiga, mis tõepoolest kuulub sellesse faili. Me saame seda teha, kui kliendil on ette teada kogu faili autentiv spetsiaalselt arvutatud kontrollsumma.

Kokku tuleb Gnutella protokolli lisada iga faili kohta spetsiaalne kontrollsumma ja iga failitükiga kaasa panna tõestus selle kontrollsumma suhtes.