Transcript
Page 1: Anonimato em Redes  P2P

Anonimato em Redes P2P

Pedro SavareseGuilherme Nóbrega

Felipe Carregosa

Page 2: Anonimato em Redes  P2P

• Software criado em 2000 por Ian Clarke;

• Plataforma Java;

• Somente P2P até v0.5, F2F após v0.7;

• Sensação de internet livre – anonimato e sem censura;

• Servidor proxy (dificulta rastreamento) e um disco rígido descentralizado (dificulta ataques);

• Inexistência de uma broadcast search;

Page 3: Anonimato em Redes  P2P

Como funciona?• As mensagens são encriptadas e repassadas por outros nós,

dificultando o rastreamento de quem e o quê está pedindo;• Cada usuário contribui com sua banda e um pedaço do disco

(data store);• Small World – um nó só tem consciência dos seus vizinhos e

não da rede como um todo;• Aumenta segurança e anonimato, desde que os seus vizinhos

sejam confiáveis;• Idéia originada de Jon Kleinberg.

Page 4: Anonimato em Redes  P2P

Como funciona?

• Hops-to-live limit (definido pelo usuário);

• Identificador aleatório “único”; A falha ou sucesso de uma request é reportada de volta pela corrente ao nó que a enviou;

• Não há privilégio de um nó em relação a outro;

Page 5: Anonimato em Redes  P2P

Modos de Operação

• Opennet (P2P): O usuário se conecta com nós aleatórios. Os vizinhos podem conseguir informações como que tipo de dados o usuário possui e busca.

• Darknet (F2F): Apenas conexões com nós conhecidos a priori são possíveis. Oferece altos níveis de segurança e anonimato, desde que os nós sejam confiáveis.

Page 6: Anonimato em Redes  P2P

Armazenamento• Armazenamento de arquivos dividido em duas partições.

• Short-Term Storage Cache: armazena todos os arquivos que passam pelo nó.

• Belonging Storage Cache: armazena dados que estejam de acordo com a identidade do nó. Usa uma política chamada sinkstore para centralizar os dados em nós similares.

• Ambos são liberados aleatoriamente.

Page 7: Anonimato em Redes  P2P

Chaves• CHK (Content Hash Keys): usadas para arquivos fixos.

CHK@filehash,decrypkey,cryptosettings (32kB)

• SSK (Signed Subspace Keys): usadas para arquivos com conteúdo alterável (freesites).

SSK@pubkeyhash,decrypkey,cryptosettings (1kB)

• KSK (Keyword Signed Keys): usadas para sites e arquivos com nomes. Não são seguras e são vulneráveis a spam e a colisões.

[email protected]

Page 8: Anonimato em Redes  P2P

Busca e Inserção• Parâmetros de busca são encriptados por uma função hash;

• O hash é enviado para o nó do próprio usuario, determinando a chave e o HTL;

• Request é repassada pela “routing table”;

• Nós inteligentes;

Page 9: Anonimato em Redes  P2P

Busca e Inserção

Key + HTL

Requester

Data Holder

Page 10: Anonimato em Redes  P2P

Busca e Inserção• Usuário encripta o dado e manda para si mesmo,

determinando a chave e o HTL;

• Request de inserção busca o menor caminho com um hash o mais similar possível até expirar o HTL;

• Melhor caso x Pior caso;

• Na medida em que os nós “aprendem” sobre seus vizinhos, o melhor caso torna-se mais frequente;

Page 11: Anonimato em Redes  P2P

Busca e Inserção

Key + HTL

Inserter Most Similar Data HolderNão colisão -> “All-clear signal”

Envio do dado para D

Page 12: Anonimato em Redes  P2P

Swapping• Nós trocam de lugar quando as suas novas posições se

enquadram mais com o seu identificador. Possibilita que o roteamento ocorra em O(log n) no caso de uma small-world network.

Page 13: Anonimato em Redes  P2P

Otimização

Criação da rede mundo pequeno: Modelo de Watts-Strogatz:

Page 14: Anonimato em Redes  P2P

Otimização Modelo de Kleinberg:

Solução Descentralizada: Metropolis-Hastings

Page 15: Anonimato em Redes  P2P

Ataques

• Eavesdropping na comunicação entre 2 usuários;

• Nós conspiradores;

• Pitch-Black Attack (swapping forçado);

Page 16: Anonimato em Redes  P2P

Performance

• Convergência

Page 17: Anonimato em Redes  P2P

Performance

• Escalabilidade

Page 18: Anonimato em Redes  P2P

Performance

• Tolerância a falhas

Page 19: Anonimato em Redes  P2P
Page 20: Anonimato em Redes  P2P
Page 21: Anonimato em Redes  P2P
Page 22: Anonimato em Redes  P2P

Perguntas

1) Diferencie a Opennet da Darknet.

Page 23: Anonimato em Redes  P2P

Perguntas

Enquanto no modo Opennet um nó inserido na rede já é iniciado com vizinhos aleatórios, no modo Darknet um nó só cria conexões com vizinhos que ele conheça e confie.

Page 24: Anonimato em Redes  P2P

Perguntas

2) O que caracteriza uma rede Small World?

Page 25: Anonimato em Redes  P2P

Perguntas

Uma rede Small-World é caracterizada por poucas conexões entre nós, mas ao mesmo tempo mantendo uma baixa distância média entre quaisquer dois nós.

Page 26: Anonimato em Redes  P2P

Perguntas

3) Cite as 3 principais chaves de encriptação.

Page 27: Anonimato em Redes  P2P

Perguntas

• CHK (Content Hash Keys), KSK (Keyword Signed Keys) e SSK (Signed Subspace Keys).

• A CHK é composta por um hash e uma chave simétrica e é utilizada para arquivos fixos.

• A KSK é composta por um hash de uma chave pública assimétrica e uma chave simétrica. É utilizada para freesites.

• A SSK é composta por uma string e possui uso geral.

Page 28: Anonimato em Redes  P2P

Perguntas

4) Explique por que o Short Term Storage Cache faz com que os arquivos na Freenet permaneçam de acordo com a sua popularidade.

Page 29: Anonimato em Redes  P2P

Perguntas

Pois toda vez que um arquivo é requisitado por um nó, ele é armazenado no Short Term Storage Cache de todos os nós que repassam o dado do nó que o possui até o requisitador. Quando um dado passa muito tempo sem ser requisitado, ele será substituído por outros dados mais populares e deixará de existir na rede.

Page 30: Anonimato em Redes  P2P

Perguntas

5) Explique em que situação é usada a mensagem Reply.Restart entre nós.

Page 31: Anonimato em Redes  P2P

Perguntas

Quando o nó que recebe o último salto do pedido sabe que um vizinho direto possui o arquivo requisitado. Ele então envia o Reply.Restart para o nó requisitador, pedindo que ele aumente o número de saltos.


Top Related