pad.sarava.org/p/ZBuT1kuHbl

% Segurança, Tor e Tails
% Ciclo de oficinas Diabolô 2012
% 10 de Novembro de 2012
- Pandoc – convertor de arquivos
- Próxima oficina: 24.novembro – 15h – GTNM

O que é o Tor

Quem usa Tor

Por que precisamos do Tor

Rede anônima distribuída

A rede Tor depende de 2 tipos de nós:

Retransmissores (relays)

Nós de saída (exit nodes)

Hidden services

Além de navegação anônima, é possível oferecer serviços dentro da rede Tor:

Rede anônima distribuída

!Como Tor Funciona - 1(./img/htw1.jpg)

Rede anônima distribuída

!Como Tor Funciona - 2(./img/htw2.jpg)

Rede anônima distribuída

!Como Tor Funciona - 3(./img/htw3.jpg)

Rede anônima distribuída

!Camadas de criptografia(./img/layers.jpg)

Criptografia de chave pública

Um sistema criptográfico é uma quíntupla $(M, C, K, E, D)$, na qual:

Criptografia de chave pública

Restrições sobre os conjuntos e funções do sistema:

Criptografia de chave pública

A rede mantém uma lista de nós com suas chaves públicas:
-—————————-+
| Nó | Chave Pública |
-——————————
| A | EFEB007F |
| B | 49594E83 |
| C | 054C4E4A |
| | |
. … . … .
| | |
| X | F6C1FC60 |
| Y | 77F6D1F8 |
| Z | AF069E80 |
-—————————-+

Descrição formal do protocolo

Cenário: $A$ quer enviar a mensagem $m$ para $B$ e possui sua chave pública
$k_B$.

Descrição formal do protocolo

Suponha que $A$ tenha escolhido os nós $X$, $Y$ e $Z$ como retransmissores,
nessa ordem. Ela possui as chaves públicas $k_X$, $k_Y$ e $k_Z$.
Cada nó no meio do caminho não precisa saber:

Descrição formal do protocolo

A mensagem fará o caminho $A \rightarrow X \rightarrow Y \rightarrow Z
\rightarrow B$.
Então, $A$ faz o seguinte:
1. $m_B \leftarrow E(m,k_B)$.
1. $m_Z \leftarrow E((m_B,B),k_Z)$.
1. $m_Y \leftarrow E((m_Z,Z),k_Y)$.
1. $m_X \leftarrow E((m_Y,Y),k_X)$.
1. Envia $m_X$ para $X$.

Descrição formal do protocolo

A mensagem que $A$ envia para a rede é, na verdade:

Descrição formal do protocolo

A mensagem faz o caminho $A \rightarrow X \rightarrow Y \rightarrow Z
\rightarrow B$:
1. $A$ envia $m_X$ para $X$.
1. $X$ recebe $m_X$, abre com $k_X$, vê $(m_Y,Y)$ e envia $m_Y$ para $Y$.
1. $Y$ recebe $m_Y$, abre com $k_Y$, vê $(m_Z,Z)$ e envia $m_Z$ para $Z$.
1. $Z$ recebe $m_Z$, abre com $k_Z$, vê $(m_B,B)$ e envia $m_B$ para $B$.
1. $B$ recebe $m_B$, abre e vê $m$.

Descrição formal do protocolo

As mensagens que transitam na rede, são:

Dificuldades para o anonimato

Repetidores “ponte” (bridge relays)

- É um nó normal, não publicado na lista geral – se a lista for censura, os bridges se mantém
Se a obtenção da lista de relays é difícil, pode-se utilizar um “bridge”
relay:

Como usar o Tor

Usuários finais:

Vidalia

!Tela principal do Vidalia(./img/vidalia.jpg)

Tor Browser Bundle

1. Baixe o TBB do site do Tor(www.torproject.org/download/download-ea....
1. Descomprima.
1. Execute.
1. Acesse:

Tails

% Criptografia, Tor e Tails II
% Grupo de estudos Diabolô
% 24/11/2012
pad.riseup.net/p/tor-tails-ii

Recapitulação

Tópicos abordados

Criptografia

Chave criptográfica

!Criptografia simétrica utiliza somente uma chave.(./img/simetrica.pdf) – ela é usada para abrir e fechar o sistema; problema: a cheve criptográfica tem que ser muiito grande;
h2. Criptografia assimétrica

!Criptografia assimétrica utiliza um par de chaves para cada usuário.(./img/assimetrica.pdf) – cada par de chaves está associada a um usuário; normalmente usada para troca de e-mails; garantir que só o detentor da chave privada vai conseguir ler a mensagem;
h2. Assinaturas criptográficas

!Pode-se utilizar a chave privada para assinar um documento.(./img/sig.pdf) – certificar que só quem tem a chave privada emitiu aquele e-mail; certificação
h2. Funções de Hash

!Funções de hash associam valores de tamanho fixo a entradas de qualquer
tamanho
(./img/hash.pdf)
h2. Utilização da criptografia de chave pública

Criptografia de chave pública provê:

Certificação e Infraestrutura de Chave Pública

Certificação

Usos de certificados digitais

Modelos de certificação

Problemas do modelo de Autoridades Certificadoras

É um sistema centralizado: a subversão de uma CA compromete todo o sistema.

efetivamente monitorasse o conteúdo da comunicação com SSL.

Autoridades Certificadoras

!Os atores de uma infraestrutura de chave pública com autoridades
certificadoras.
(./img/ca-0.pdf)
h2. Autoridades Certificadoras

!O primeiro passo do usuário é criar um par de chaves públicas.(./img/ca-1.pdf)
h2. Autoridades Certificadoras

!Usuário requisita a emissão de um certificado.(./img/ca-2.pdf)
h2. Autoridades Certificadoras

!A autoridade de registro confirma a identidade do usuário.(./img/ca-3.pdf)
h2. Autoridades Certificadoras

!A autoridade certificadora emite o certificado.(./img/ca-4.pdf)
h2. Autoridades Certificadoras

!O usuário assina um contrato com seu certificado.(./img/ca-5.pdf)
h2. Autoridades Certificadoras

!A autoridade certificadora publica os certificados emitidos.(./img/ca-6.pdf)
h2. Autoridades Certificadoras

!O contratante verifica a identidade do usuário com a autoridade verificadora.(./img/ca-7.pdf)
h2. Autoridades Certificadoras

!A autoridade verificadora confirma que o certificado é válido.(./img/ca-8.pdf)
h2. Programas para sistemas de Autoridades Certificadoras

CAcert

gpg e OpenPGP

Rede de confiança

Ideia da Rede de confiança

“Conforme o tempo for passando, você vai acumular chaves de outras pessoas que você pode querer designar como introdutores confiáveis. Cada uma das outras pessoas vai escolher seus próprios introdutores confiáveis. E todo mundo vai gradualmente acumular e distribuir junto com sua chave a coleção de assinaturas certificantes de outras pessoas, com a esperança de que qualquer um que receba estas informações vá confiar em pelo menos uma ou duas das assinaturas. Isso vai causar a emergência de uma rede descentralizada e tolerante a falhas de confiança para todas as chaves públicas." (Confirmar a tradução!)

- Phil Zimmermann, 1992.

Festas de assinatura de chave

Festas de assinatura de chave são eventos nos quais as pessoas apresentam
suas chaves públicas OpenPGP para outras que, se estiverem confiantes de que a
chave realmente pertence à pessoa que a está apresentando, assinam
digitalmente um certificado contendo aquela chave pública.

Festas de assinatura de chave

!Flyer de festa de assinatura de chaves.(./img/cryptoparty1.jpg)
h2. Festas de assinatura de chave

!Flyer de festa de assinatura de chaves.(./img/cryptoparty2.jpg)

Problemas da Rede de Confiança

Usando a rede de confiança

Secure APT

Monkeysphere

``O objetivo do projeto Monkeysphere é extender a rede de confiança do
OpenPGP a novas áreas da internet para ajudar a identificar de forma segura os
servidores aos quais conectamos, bem como uns aos outros enquanto trabalhamos
online."

Monkeysphere

Tor

Pontos fundamentais da rede Tor:

Tails

Verificando a imagem do Tails usando a rede de confiança