Os dados são sempre criptografados nas comunicações IPv6?

27

Não consigo dar uma resposta direta a essa pergunta. A Wikipedia diz que "o IPsec é parte integrante do conjunto de protocolos de base no IPv6", mas isso significa que TODAS as comunicações são sempre criptografadas ou significa que a criptografia é opcional, mas os dispositivos devem ser capazes de compreendê-la (deve ser usada )?

Se a criptografia é opcional, é o sistema operacional que decide usar criptografia ou é o aplicativo? Os sistemas operacionais e softwares populares geralmente permitem a criptografia?

Eu mesmo investigaria isso, mas falta conectividade IPv6.

Atualização: Ok, então é opcional. Minha pergunta de acompanhamento: normalmente, é o aplicativo que define se deve usar criptografia ou é o sistema operacional?

Um exemplo específico: imagine que eu tenha uma versão recente do Windows com suporte a ipv6 nativo e pesquise algo em ipv6.google.com usando o Mozilla Firefox. Seria criptografado?

    
por alan 18.04.2011 / 18:29

4 respostas

29

Não.

O IPv6 tem IPsec integrado como parte do protocolo, e não é um parafuso como é com o IPv4. No entanto, isso não significa que está ativado por padrão, apenas significa que é uma sobrecarga (teoricamente) menor na pilha de rede.

Geralmente, o uso de IPsec é determinado no nível IP da pilha de rede e, portanto, determinado pelas próprias políticas do sistema. por exemplo. O sistema A pode ter uma política que requer que o AH e o ESP tenham qualquer comunicação com a sub-rede 4.0.0.0/8.

Atualização: para ficar claro, o aplicativo não se importa - apenas sabe que tem que abrir uma conexão de rede em algum lugar e enviar / receber dados por ela. O sistema então precisa descobrir se deseja negociar o IPsec para a conexão solicitada fornecida. O IPsec é muito projetado para ser um mecanismo de autenticação / criptografia de baixo nível e é construído intencionalmente para que protocolos e aplicativos de alto nível não precisem se preocupar com isso.

Dito isso, é apenas mais um controle de segurança em nível de rede e não deve necessariamente ser usado isoladamente ou confiável para garantir "segurança" - se você está tentando resolver um problema de autenticação, é totalmente possível que você Deseja que o aplicativo imponha algum tipo de autenticação no nível do usuário, deixando a autenticação no nível da máquina até IPsec.

    
por 18.04.2011 / 18:32
18

Resposta curta: Não.

Resposta longa: o IPsec foi considerado ao projetar o IPv6, no sentido de que, diferentemente do IPv4, o IPsec (quando usado) faz parte do cabeçalho do IPv6.

Mais explicações: no IPv4, o IPsec é executado em cima do próprio IP. Na verdade, é um protocolo da Camada 4 que se "disfarça" como um protocolo da Camada 3 (para que os protocolos L4 usuais do TCP e do UDP ainda possam funcionar). O ESP (Encapsulating Security Payload) não pode se estender entre os pacotes IP. Como resultado, os pacotes IPsec normalmente reduzirão drasticamente a capacidade de carga se a fragmentação for evitada. Além disso, como está no topo do IP, o cabeçalho do IP não está protegido.

No IPv6, o IPsec faz parte do próprio IP. Ele pode abranger pacotes, já que o cabeçalho ESP é agora parte do cabeçalho do IP. E como é integrado ao IP, mais partes do cabeçalho IP podem ser protegidas.

Espero que minha explicação 'em poucas palavras' seja clara o suficiente.

    
por 18.04.2011 / 19:46
2

Para você pergunta de acompanhamento:

O sistema operacional define quando usar a criptografia. Essas opções de "política" estão dentro dos painéis de controle / políticas de configuração. Você diz coisas como "se você quiser se conectar a qualquer endereço na sub-rede ab12 :: você deve ter segredo Blah1234". Existem opções para usar o PKI.

No momento, um aplicativo não pode adicionar a essa política ou exigir que essa política seja configurada. Há uma menção na seção ipv6 do soquete linux "Falta o suporte a IPSec para cabeçalhos EH e AH". Então, as pessoas pensaram nisso, mas atualmente não há implementações de trabalho conhecidas.

    
por 04.05.2011 / 21:00
1

Para sua pergunta de acompanhamento, sim e não.

Os aplicativos podem especificar criptografia, mas a criptografia é feita no nível do aplicativo. Há uma grande variedade de pares de protocolos não criptografados / criptografados usando portas diferentes, como HTTP / HTTPS, LDAP / LDAPS, IMAP / IMAPS e SMTP / SSMTP. Todos usam criptografia SSL ou TLS. Alguns serviços oferecem uma opção startTLS que permite que uma conexão criptografada seja iniciada na porta normalmente não criptografada. O SSH é um aplicativo que sempre usa uma conexão criptografada. A criptografia é de ponta a ponta para esses casos. (Existe um algoritmo de criptografia NULL que pode ser usado e o conteúdo criptografado será transportado sem criptografia.)

O IPSEC é configurado pelo administrador e o aplicativo não saberá se a conexão está ou não criptografada. Eu vi principalmente IPSEC usado para ligar o tráfego entre as redes locais através de conexões não seguras (conexões VPN). Acredito que o IPSEC pode ser aplicado a apenas parte da rota, portanto, em alguns segmentos de rede, os dados são transmitidos de forma clara (sem criptografia).

Dada a escolha, usarei a criptografia de aplicativos, pois a criptografia de rede não é muito usada.

    
por 18.04.2011 / 22:00