Bifrost Anonim kommunikációs rendszer
Bevezetés Egyre több szolgáltatás jelenik meg az interneten, melyek megkövetelik az anonimitiást, pl.: Egészségügyi konzultáció E-voting
Bevezetés Anonim kommunikációnak a következő feltételeknek kell megfelelnie: Küldő anonimitása Fogadó anonimitása Adatfolyam nyomonkövethetetlensége
Onion routing M S = IP 1 || K 1 (IP 2 || K 2 (IP 3 || K 3 (IP 4 || K 4 (V))))
Bifrost A Bifrost két réteget használ: Node Management Layer (DHT) Anonymous Routing Layer
Bifrost A Bifrost egy overlay hálózat rengeteg peer-ből, és egy public key server-ből (PKS) A PKS tárolja minden peer publikus kulcsát. Bármelyik peer szabadon lekérdezheti bármelyik másik peer publikus kulcsát
Node Management Layer Az NML a Chord-ot használja Peer-ek csatlakozása/leválása Finger table Peer-ek kezelése független marad az anonim kommunikációtól
Anonymous Routing Layer Feladatai: Útvonal felépítése/megsemmisítése Üzenetek kódolása/dekódolása Kontroll üzenetek Backup node fenntartása
ARL - áttekintés Többszörösen kódolt üzenetek, mint onion routing esetén Különbség, hogy az üzenet fogadója nem az útvonal legvégén helyezkedik el
ARL - áttekintés Hatékony egy olyan támadás esetén, amely elemzi a peer-ek közti kommunikációt A fogadó utáni üzenetek „dummie” üzenetek
ARL - áttekintés Három féle üzenetet használ az ARL: Konstrukciós üzenet Adat üzenet Kontroll üzenet
ARL – Konstrukciós üzenet Tartalmazza: Útvonalon szereplő peer-ek kulcsait Fogadó kulcsát A válasz konstrukciós üzenetét (a válasz konstrukciós üzenetét a feladó készíti el)
ARL – Konstrukciós üzenet Többszörösen kódolt üzenet Minden köztes peer dekódolja a privát kulcsával, és hozzájutnak a kapcsolat információhoz Path ID NodeID (next hop) Common key
ARL – adat üzenet Többszörösen kódolt adatot tartalmaz Köztes peer-ek dekódolják a kapcsolati információ alapján, majd továbbítják a következő peer-nek
ARL – kontroll üzenet Anonim útvonalak kontrollálása Útvonal megsemmisítése Common key frissítése Ezek a parancsok szintén kódoltak, és utalnak a kapcsolati információra, így nem befolyásolhatnak más útvonalakat
ARL - problémái A routing az NML-től függ, így a konstrukciós üzenet kommunikációs ideje hosszú Egy üzenet többszöri kódolása és visszakódolása sokáig tart
Receiver Area Egy node-csoport, melyek folytonosan követik egymást a Chord-ban Egy RA-t meghatároz egy a konstrukciós üzenetben szereplő peer, és egy olyan peer, amelyik dekódolni képes a konstrukciós üzenet header-jét
Receiver Area Az RA-ben szereplő peer-ek pusztán továbbküldik az üzenetet a successor-uknak Minden RA-ben szereplő peer megpróbálja dekódolni az üzenet body részét, de csak a fogadó képes ezt megtenni Az RA végső peer-je dekódolni képes az üzenet header-jét, így megkapja a következő RA kezdő peer-jét
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
R 2,1 R 2,2 R 1,1 A s1 A t1 A s2 A t2 Lookup ID min (A 1 )
Peer-ek kilépése Amikor egy peer kilép, akkor az NML automatikusan helyettesíti őt egy backup peer-rel, ami a successor-a a kilépő peer- nek Viszont ez a peer nem ismeri a kilépett peer privát és közös kulcsait Bifrost ezeket a kulcsokat részekre osztja és minden peer rábízza a részeket a successor-ára és a next-successor-ára
Peer-ek kilépése Amikor egy peer hirtelen kilép, a predecessora 30 mp-n belül észleli ezt A kapcsolat a Chord alapján áll helyre A backup peer elkéri a kulcsokat a successor-ától
Anonimitás igazolása Két különböző esetet vizsgálunk meg: Konspiratív támadás PKS-sel való kommunikáció elemzése
Konspiratív támadás Kettő vagy több konspiráló peer Nem konspiráló RA-beli végső peer-ek esetén a támadók nem tudják nyomon követni az RA kapcsolatokat Konspiráló RA-beli végső peer megtudhatja a következő RA kezdő peer-jét Ha az összes RA-ben lévő utolsó peer konspirál, akkor a támadó megtanulhatja az összes RA-t, de a küldő és a fogadó kilétét így sem fejtheti meg
Kommunikáció a PKS-sel A küldő elkéri a szükséges kulcsokat a PKS-től Egy támadó így megtanulhatná az anonim utat úgy, hogy megfigyeli a kommunikációt a PKS és a küldő között
Kommunikáció a PKS-sel A kommunikáció a PKS-sel SSL-en keresztül működik A küldő a szükségesnél több kulcsot is lekérdez
Implementáció A Bifrost-ot az Overlay Weaver segítségével implementálták Az Overlay Weaver egy toolkit, overlay-ek létrehozására
Teljesítmény elemzés 32 számítógép Ethernet (100 Mbps) által összekötve Sempron GB RAM Linux Útvonal generálásnál RSA Adatok átvitelénél AES Kontroll üzenet nem lett implementálva
Üzenet mérete Exp. 1: Receiver Areas: 2 (Round Trip: 4), Relay Nodes: 16 (Round Trip: 32) Message Size (KB) Time (ms)
Route Generation Time Receiver Area-k száma Relay Nodes: 16 (Round Trip: 32) Route Generation Time (ms)
Route Generation Time Relay Node (hops) Round Trip Receiver Areas: 5 Route Generation Time (ms)
Data Communication Time Receiver Area-k száma Relay Nodes: 16 (Round Trip: 32) Data Communication Time (ms)
Data Communication Time Relay Node (hops) Round Trip Receiver Areas: 5 Data Communication Time (ms)
Vége Köszönöm a figyelmet