Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

31
Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa

Transcript of Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Page 1: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Anonimato em Redes P2P

Pedro SavareseGuilherme Nóbrega

Felipe Carregosa

Page 2: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

• 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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Busca e Inserção

Key + HTL

Requester

Data Holder

Page 10: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Busca e Inserção

Key + HTL

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

Envio do dado para D

Page 12: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Otimização

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

Page 14: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Otimização Modelo de Kleinberg:

Solução Descentralizada: Metropolis-Hastings

Page 15: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Ataques

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

• Nós conspiradores;

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

Page 16: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Performance

• Convergência

Page 17: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Performance

• Escalabilidade

Page 18: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Performance

• Tolerância a falhas

Page 19: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.
Page 20: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.
Page 21: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.
Page 22: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Perguntas

1) Diferencie a Opennet da Darknet.

Page 23: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Perguntas

2) O que caracteriza uma rede Small World?

Page 25: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Perguntas

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

Page 27: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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 Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

Perguntas

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

Page 31: Anonimato em Redes P2P Pedro Savarese Guilherme Nóbrega Felipe Carregosa.

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.