Upload
internet
View
107
Download
0
Embed Size (px)
Citation preview
Mix-Net
Filipe Nunes [email protected]
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Agenda
Introdução Mix-Nets BABEL Onion Routing Web-Mixes Anonimato em redes Ad Hoc Crowds Conclusões Bibliografia
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Introdução
Anonimato
AgressoresAtaques Passivos
Eavesdropping Análise de Tráfego
Ataques Ativos
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Mix-Net:Definição
[Berthold, Federrath & Kohntopp, 2000] Primeiro sistema próximo de ser perfeito descrito na literatura.
Pfitzmann & Hansen, 2005] Mecanismo para obter anonimato de envio e relações de anonimato.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Definição – Segundo [Chaum, 81]
Uma técnica baseada na criptografia de chave pública que permite um sistema de E-mail esconder com quem um participante comunica tanto quanto o conteúdo da comunicação – apesar de um sistema de telecomunicação inseguro como base de comunicação
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Criptografia de Chave Pública
Fonte: [Wikipedia, 2007]
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Criptografia de Chave Pública
Fonte: [Wikipedia, 2007]
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Notação
K Chave PúblicaInv (K) Chave PrivadaM MensagemK (M) M criptografado com a chave pública
Problema: Se K (Y) = K (X) então X = Y Solução: K (R, M)
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
K1 (R1, Ka (R0, M), A’ ) Ka (R0, M), A’
D
C
B
A
D`
C`
B`
A`
Arquitetura – Um Mix
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Arquitetura – Mixes em Cascata
Ka (R0, M), A
D
C
B
A
D`
C`
B`
A`
…
Kn( Rn, K<n-1>( R<n-1>, ... , K1( R1, Ka( R0, M ), A )...)) K<n-1>( R<n-1>, ... , K1( R1, Ka( R0, M ), A )...)
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Funções do Mix
Esconder a correspondência entre os itens da sua interface de entrada e os itens da interface de saída.
Não processar nenhum item mais de uma vez. Armazenar mensagens até que um número
definido de mensagens tenha sido recebido. Alterar a ordem de saída das mensagens
chegadas (Mix).
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Outra perspectiva do Mix – Lotes de Mensagens
D
C
B
A
D`
C`
B`
A`
Mensagens ordenadas lexograficamente
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Como Responder?
K1 (R1, Ka (R0, M), Y) Ka (R0, M), Y
D
C
B
X
D`
C`
B`
Y
?
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
E para responder uma mensagem?
Endereço de RetornoNão pode ser rastreado.O remetente deve continuar anônimo para o
destinatárioO remetente deve enviar o endereço de
retorno não rastreável e uma chave pública para o destinatário junto à mensagem.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Endereço de Retorno – 1 Mix
Endereço de Retorno não rastreável K1(R1,Ax)
Chave pública de X Kx
Enviado juntamente com a mensagem M de X para Y
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Endereço de Retorno – 1 Mix
Ax, R1( Kx( R0, M )) K1( R1, Ax ), Kx( R0, M )
D
C
B
X
D`
C`
B`
Y
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Endereço de Retorno – Vários Mixes
Endereço de Retorno não rastreável
K1( R1, K2( R2, ..., K<n-1>( R<n-1>, Kn( Rn, Ax ))...)), Kx( R0, M )
Chave pública de X Kx
Enviado juntamente com a mensagem M de X para Y
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Arquitetura – Mixes em Cascata
Ax, Rn( R<n-1> ... R2( R1( Kx( R0, M )))...)
D
C
B
A
D`
C`
B`
A`
…
K2( R2, ..., K<n-1>( R<n-1>, Kn( Rn, Ax ))...), R1( Kx( R0, M ))
K1( R1,..., K<n-1>( R<n-1>, Kn( Rn, Ax ))...), Kx( R0, M )
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Pseudônimo Digital
Um pseudônimo Digital é uma chave pública usada para verificar assinaturas feitas pelo anônimo mantenedor da chave privada correspondente.
Os usuários do serviço registram seus pseudônimos
Lista de pseudônimos deve ser mantida.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Pseudônimo Digital – 1º Passo
Cliente registra pseudônimo (utilizando correspondência não rastreável p. ex).
K1(R1, K)
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Pseudônimo Digital – 2º Passo
Uma autoridade irá armazenar os pseudônimos.
P. ex: [G,H,I,J,K,L,]
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Pseudônimo Digital – 3º Passo
O Cliente submete a mensagem com a requisição do serviço.
K1( R1, K, Inv(K)( C, V ))
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Pseudônimo Digital – 4º Passo
A autoridade verifica se o cliente está cadastrado e não é uma falsificação.
K1( R1, K, Inv(K)( C, V ))
K está na lista [G,H,I,J,K,L,]K realmente é a chave pública de Inv(K)
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Utilizações do Pseudônimo Digital
Votação anônima
Relação com pseudônimos entre uma empresa e clientes.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Sistemas de E-mail de Propósito Geral
Exigir que cada mensagem passe por uma cascata.
Mensagens podem ser muito grandes e talvez necessitem ser quebradas.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Sistemas de E-mail de Propósito Geral
Problema: Passar por todos os mixes pode se tornar impraticável caso existam muitos.
Solução: É possível selecionar uma seqüência de mixes pelos quais a mensagem irá passar.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Sistemas de E-mail de Propósito Geral
Problema: É necessário esconder o número de mensagens enviadas e recebidas.
Solução: Todos os participantes mandam o mesmo número de mensagens por lote(Podem ser enviadas mensagens sem conteúdo útil). Todos os receptores buscam no lote de saída as mensagens pertencentes a ele.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Sistemas de E-mail de Propósito Geral
Problema: Custos podem ser tornar elevados para alguns participantes.
Solução: Permite as correspondências serem endereçadas a subconjuntos de participantes como redes locais.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Sistemas de E-mail de Propósito Geral
Mix com novas características: Permite uma seqüência de mixes ser selecionada
para cada mensagem Esconde o número e a identidade dos mixes pelo
qual a mensagem irá passar Permite descobrir um mix que não encaminhou os
itens corretamente. Não faz distinção entre correspondência normal e
aquela enviada pelo endereço de retorno não rastreável.
Cada item é composto por blocos de tamanho fixo.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Mix-Net Anonimato 100% garantido?
Se um dentre todos os mixes for seguro então o anonimato será preservado
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Remetente de Correio Eletrônico Anônimo
Remetente de E-mail anônimo Baseado nos Mixes de [Chaum, 1981] Utilização de Vários Mixes Caminho de Retorno
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Propriedades desejadas
1 – Qualquer que está apto a mandar e-mail deve estar apto a fazer isso anonimamente.
2 – Deve ser impossível (ou, no mínimo, computacionalmente difícil) determinar a origem de um e-mail anônimo.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Propriedades desejadas
3 – O receptor de um e-mail anônimo pode responder ao remetente, que permanece anônimo. Além disso, receptores podem responder com múltiplas mensagens.
4 – O anonimato das extremidades deve ser preservado mesmo se um número de entidades conspira contra.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Propriedades desejadas
5 – A estrutura de entrega de e-mails deve ser resistente a ataques passivos e ativos.
6 – O remetente de um e-mail anônimo pode obter confirmação que sua mensagem foi corretamente processada.
7 – E-mails anônimos não devem sobrecarregar a estrutura global de email.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Ataques Passivos
MIX
Eve
Alice Bob
Fonte: [Gükü & Tsudik, 1996] Ataque de codificação de mensagem Timing attack
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Ataques Ativos – Isolate & Identify
D
C
B - Agressor
A
D`
C`
B`
A`
Verificar endereço do remetente
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Ataques Ativos – Message Replay (Parte1)
D
C
B - Agressor
A
D`
C`
B`
A`
B copia a mensagem enviada por A
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Ataques Ativos – Message Replay (Parte2)
D
C
B - Agressor
A
D`
C`
B`
A`
B envia uma cópia da mensagem e descobre para onde ela foi enviada
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
BABEL – Ataques Ativos – Message Replay Solução
O Mix não deve permitir cópias No caso do Caminho de Retorno podem
haver itens repetidos Inter-Mix Detours
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Alguns Problemas desta arquitetura
Não Interessantes para aplicações de tempo-real já que o atraso pode ser elevado.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Onion Routing - Definição
Onion Routing é uma infra-estrutura para comunicação privada sobre uma rede pública. Ele permite conexões anônimas que são fortemente resistentes a análise de tráfego e observadores indesejados (eavesdropping) [Reed et. Al,].
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Onion Routing - Características
Bidirecional Pode-se utilizar uma conexão de socket
comum. Baseado em Mixes. Elimina o problema de atraso (latência).
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Onion Routing - Implementação
Conexão com a máquina destino é feita a partir da conexão com uma seqüência de outras máquinas chamadas roteadores Onion.
Os roteadores Onion estão conectados por conexões de sockets permanentes.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Onion Routing - Implementação
A conexão tem 3 fases:Estabelecimento da conexãoTroca de dadosFinalização da Conexão
É utilizada criptografia assimétrica apenas na 1ª fase. Depois é utilizada criptografia simétrica.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Onion Routing - Arquitetura
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Onion Routing – Aplicações
Virtual Private Networks Navegar na Web E-mail Remote login Chat Anônimo
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Onion Routing - Problemas
Sujeito a Timing Atack
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Web-Mixes
[Berthold,Federrath & Kopsell, 2000] Acesso à Internet em tempo-real. Três partes lógicas:
JAP (Java Anon Proxy)MixesCache-Proxy
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Web Mixes - Arquitetura
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Web Mixes: Novos Aspectos
Chop-and-Slice Sistema de autenticação baseada em
tíquetes
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Protocolo de roteamento para redes Ad Hoc [Araújo, 2005] ANSDR – Anonymous Dinamic Source
Routing Baseado no DSR (Dynamic Source
Routing) – Protocolo bastante difundido para Redes Ad Hoc.
Utilização de Mixes.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
ANSDR – Protocolo
S deseja se comunicar com T S não sabe a rota Envia um pacote do tipo mix request em difusão Os nodos mix responderão com um mix reply mix request e mix reply são criptografadas
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
ANSDR – Protocolo
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
ANSDR – Protocolo
Ao receber um mix reply S monta um pacote route request com o endereço de T.
O Mix que recebeu o route request verifica se está próximo de T. Enquanto não for vizinho envia um route request para o mix vizinho
Quando o Mix for vizinho de T ele encripta a mensagem com a chave pública de T e envia a mensagem por difusão.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
ANSDR – Protocolo
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
ANSDR – Protocolo
T monta um pacote route reply com o endereço destino que irá seguir o caminho de volta até chegar a S, estabelecendo o caminho anônimo.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
ANSDR – Protocolo
Caso haja uma quebra do enlace, o mix deve enviar um pacote route error para seu nó antecessor (nó do qual recebeu o route request)até alcançar a fonte.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Crowds
Fonte: [Reiten & Rubin, 1999]
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Conclusões
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Referências
Araújo, A. M., "ANSDR – Protocolo de Roteamento Anônimo para redes Ad Hoc", Tese como pré-requisito para a obtenção do grau de mestre em Engenharia Elétrica, COPPE/UFRJ, 2005. http://www.gta.ufrj.br/~andrea/tese.ps
Berthold,O., Federrath, H. and Kopsell, S. Web MIXes: A System for Anonymous and Unobservable Internet Access. In Proceedings of the Workshop on Design Issues in Anonymity and Unobservability, pages 101--115, Berkeley, CA, USA, July 25--26 2000. http://citeseer.ist.psu.edu/berthold01web.html
Berthold,O., Federrath, and Kohntopp, M. "Project `Anonymity and unobservability in the Internet'," in Computers Freedom and Privacy Conference 2000 (CFP 2000) Workshop on Freedom and Privacy by Design (to appear). http://citeseer.ist.psu.edu/berthold00project.html
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Referências
Chaum, D., "Untraceable Electronic Mail, Return Addresses, and Digital Pseudonyms", Communications of the ACM, 24 (2). 1981, pp. 84-88, http://world.std.com/~franl/crypto/chaum-acm-1981.html
Goldschlag, D., Reed, M., and Syverson, P. Onion routing for anonymous and private internet connections. Communications of the ACM, 42(2):39--41, 1999. http://citeseer.ist.psu.edu/goldschlag99onion.html
Gülcu, C., Tsudik, G., "Mixing E-Mail with Babel", Proceedings of the IEEE Symposium on Network and Distributed System Security, 1996.
Tópicos em Sistemas Distribuídos e Redes: Privacidade e PersonalizaçãoProf. Zorzo
Referências
Reiter , M., Rubin, A., "Anonymous Web Transactions with Crowds", Communications of the ACM, Vol.42, No.2, February 1999, pp. 32-38.
Syverson, P., Goldschlag, D., Reed, M., "Anonymous Connections and Onion Routing", Proceedings of the 1997 Symposium on Security and Privacy, Oakland, 1997, http://www.itd.nrl.navy.mil/ITD/5540/projects/onion-routing/OAKLAND_97.ps , http://www.onion-router.net/Publications.html