SSL - Secure Socket Layer
Para que serve o SSL?
É um sistema que permite a troca de informações entre dois computadores, de modo seguro. SSL fornece 3 coisas:
Privacidade: Impossível espionar as informações trocadas.
Integridade: Impossível falsificar as informações trocadas.
Autenticação: Ele garante a identidade do programa, da pessoa ou empresa com a qual nos comunicamos.
SSL é um complemento ao TCP / IP e pode (potencialmente) proteger qualquer protocolo ou programa usando TCP/IP.
O SSL foi criado e desenvolvido pela empresa Netscape e RSA Segurança.
Agora há versões de código aberto (Open Source), assim como um protocolo livre semelhante: TLS (ver mais abaixo).
Por que usar o SSL em vez de outro sistema?
Por que usar o OpenSSL?
SSL é padronizado.
Existe uma versão livre do SSL: OpenSSL que você pode usar nos seus programas, sem pagar direitos autorais.
OpenSSL é Open Source: todo mundo pode controlar e verificar o código-fonte (O segredo fica nas chaves de criptografia, não no algoritmo em si).
SSL foi criptoanalizado: este sistema foi mais analisado do que todos os seus concorrentes. O SSL foi revisado por inúmeros especialistas em criptografia. Portanto, pode ser considerado seguro.
Ele é muito conhecido: é fácil criar programas que interagirão com outros programas usando o SSL.
Muito cuidadocom os sistemas proprietários: ao contrário do que se poderia pensar, a segurança de um sistema de criptografia não se baseia no segredo do algoritmo de criptografia, mas no segredo da chave. Devemos confiar apenas em sistemas que foram publicados e analisados.
Como funciona o SSL?
SSL é composto de dois protocolos:
SSL Handshake protocol: antes de comunicar, os dois programas SSL negociam chaves e protocolos de criptografia em comum.
SSL Record protocol: Uma vez negociados, eles criptografam todas as informações trocadas e realizam vários testes.
O aperto de mão SSL ("handshake")
No início da comunicação o cliente e o servidor trocam:
A versão SSL com a qual eles querem trabalhar,
A lista de métodos de criptografia (simétrico e assimétrico) e de assinatura que todo mundo conhece (com comprimentos de chaves),
Métodos de compressão que todo mundo conhece
Números aleatórios,
Certificados.
Cliente e servidor tentam usar o melhor protocolo de criptografia e diminuem até encontrar um protocolo comum para ambos. Depois de feito isso, eles podem começar a troca de dados.
A comunicação SSL ("record")
Com o SSL, o remetente de dados:
Corta os dados em pacotes,
Comprime os dados,
assina criptograficamente os dados,
Criptografa os dados,
Envia os dados.
Aquele que recebe os dados:
Desencriptografa os dados,
Verifica a assinatura dos dados,
Descompacta os dados,
Remonta os pacotes de dados.
Como o SSL protege as comunicações?
O SSL usa:
um sistema de criptografia assimétrico (como o RSA ou o Diffie-Hellman). Saiba mais aqui: ele é utilizado para criar a "master key" (chave principal), que criará chaves de sessão.
um sistema de criptografia simétrico (DES, 3DES, IDEA, RC4...) usando as chaves de sessão para criptografar os dados.
um sistema de assinatura criptográfico das mensagens (HMAC, utilizando o MD5, SHA...) para ter certeza de que as mensagens não estão corrompidas.
É durante o "handshake" SSL que o cliente e o servidor escolhem os sistemas comuns (criptografia assimétrica, simétrica, assinatura e comprimento de chave).
No seu navegador, você pode ver a lista dos sistemas utilizados, colocando o cursor sobre o cadeadinho, quando você está em uma página HTTPS.
Para que servem os certificados?
Durante uma negociação (handshake) SSL, verifique a identidade da pessoa com quem você está se comunicando. Como ter certeza de que o servidor com quem você está falando é quem ele diz ser?
É aí que entram os certificados. Na hora de se conectar a um servidor web seguro, este enviará um certificado com o nome da empresa, endereço, etc. É uma espécie de carteira de identidade.
Como verificar a autenticidade desta carteira de identidade?
São as PKI (Public Key Infrastructure), das empresas externas (às quais você faz, implicitamente, confiança), que vão verificar a autenticidade do certificado.
(A lista destas PKI está incluída no seu navegador. Geralmente tem a VeriSign, a Thawte, etc.)
Estas PKI assinam criptograficamente os certificados das empresas (e elas são pagas por isso).
O uso do SSL: HTTPS, SSH, FTPS, POPS...
O SSL pode ser usado para proteger praticamente qualquer protocolo usando TCP / IP.
Alguns protocolos foram especialmente modificados para suportar o SSL:
HTTPS: é HTTP+SSL. Este protocolo está incluído em praticamente todos os navegadores, e permite que você (por exemplo) consulte suas contas bancárias na web de forma segura.
FTPS é uma extensão do FTP (File Transfer Protocol) usando SSL.
SSH (Secure Shell) é uma espécie de telnet (ou rlogin) seguro. Isso permite que você se conecte a um computador remoto com segurança e ter uma linha de comando. O SSH tem extensões para proteger outros protocolos (FTP, POP3, ou mesmo X Windows).
É possível tornar seguros os protocolos, criando túneis SSL. Depois de criar o túnel, você pode fazer passar qualquer protocolo por ele (SMTP, POP3, HTTP, NNTP, etc). Todos os dados trocados são criptografados automaticamente.
Isto pode ser feito com ferramentas como o STunnel ou o SSH .
Veja este exemplo com o protocolo POP3:
Com o protocolo POP3 que, normalmente, você usa para ler os seus e-mails, as senhas e as mensagens transitam claramente na Internet. Suas senhas e mensagens podem ser roubadas.
Com o túnel SSL, e sem alterar os softwares cliente e servidor , você pode garantir a recuperação de seus e-mails: ninguém pode roubar suas senhas ou e-mails, pois tudo que passa pelo túnel SSL é criptografado.
Mas isso requer a instalação do STunnel no cliente e no servidor.
Alguns provedores de acesso oferecem este serviço, mas ainda é muito raro. Pergunte ao seu provedor de acesso se ele tem este tipo serviço instalado.
O STunnel permite assim a proteção da maioria dos protocolos baseados no TCP/IP, sem alterar os softwares . Ele é muito fácil de instalar.
Quais são as diferentes versões do SSL?
O SSL versão 3.0 é muito semelhante ao SSL versão 2.0 , mas o SSL v2.0 tem menos algoritmos de criptografia que o SSL V3.0.
TLS v1.0 é um protocolo semelhante com base no SSL. As aplicações usando o TLS v1.0 pode se comunicar facilmente com as aplicações utilizando o SSL v3.0.
É um sistema que permite a troca de informações entre dois computadores, de modo seguro. SSL fornece 3 coisas:
Privacidade: Impossível espionar as informações trocadas.
Integridade: Impossível falsificar as informações trocadas.
Autenticação: Ele garante a identidade do programa, da pessoa ou empresa com a qual nos comunicamos.
SSL é um complemento ao TCP / IP e pode (potencialmente) proteger qualquer protocolo ou programa usando TCP/IP.
O SSL foi criado e desenvolvido pela empresa Netscape e RSA Segurança.
Agora há versões de código aberto (Open Source), assim como um protocolo livre semelhante: TLS (ver mais abaixo).
Por que usar o SSL em vez de outro sistema?
Por que usar o OpenSSL?
SSL é padronizado.
Existe uma versão livre do SSL: OpenSSL que você pode usar nos seus programas, sem pagar direitos autorais.
OpenSSL é Open Source: todo mundo pode controlar e verificar o código-fonte (O segredo fica nas chaves de criptografia, não no algoritmo em si).
SSL foi criptoanalizado: este sistema foi mais analisado do que todos os seus concorrentes. O SSL foi revisado por inúmeros especialistas em criptografia. Portanto, pode ser considerado seguro.
Ele é muito conhecido: é fácil criar programas que interagirão com outros programas usando o SSL.
Muito cuidadocom os sistemas proprietários: ao contrário do que se poderia pensar, a segurança de um sistema de criptografia não se baseia no segredo do algoritmo de criptografia, mas no segredo da chave. Devemos confiar apenas em sistemas que foram publicados e analisados.
Como funciona o SSL?
SSL é composto de dois protocolos:
SSL Handshake protocol: antes de comunicar, os dois programas SSL negociam chaves e protocolos de criptografia em comum.
SSL Record protocol: Uma vez negociados, eles criptografam todas as informações trocadas e realizam vários testes.
O aperto de mão SSL ("handshake")
No início da comunicação o cliente e o servidor trocam:
A versão SSL com a qual eles querem trabalhar,
A lista de métodos de criptografia (simétrico e assimétrico) e de assinatura que todo mundo conhece (com comprimentos de chaves),
Métodos de compressão que todo mundo conhece
Números aleatórios,
Certificados.
Cliente e servidor tentam usar o melhor protocolo de criptografia e diminuem até encontrar um protocolo comum para ambos. Depois de feito isso, eles podem começar a troca de dados.
A comunicação SSL ("record")
Com o SSL, o remetente de dados:
Corta os dados em pacotes,
Comprime os dados,
assina criptograficamente os dados,
Criptografa os dados,
Envia os dados.
Aquele que recebe os dados:
Desencriptografa os dados,
Verifica a assinatura dos dados,
Descompacta os dados,
Remonta os pacotes de dados.
Como o SSL protege as comunicações?
O SSL usa:
um sistema de criptografia assimétrico (como o RSA ou o Diffie-Hellman). Saiba mais aqui: ele é utilizado para criar a "master key" (chave principal), que criará chaves de sessão.
um sistema de criptografia simétrico (DES, 3DES, IDEA, RC4...) usando as chaves de sessão para criptografar os dados.
um sistema de assinatura criptográfico das mensagens (HMAC, utilizando o MD5, SHA...) para ter certeza de que as mensagens não estão corrompidas.
É durante o "handshake" SSL que o cliente e o servidor escolhem os sistemas comuns (criptografia assimétrica, simétrica, assinatura e comprimento de chave).
No seu navegador, você pode ver a lista dos sistemas utilizados, colocando o cursor sobre o cadeadinho, quando você está em uma página HTTPS.
Para que servem os certificados?
Durante uma negociação (handshake) SSL, verifique a identidade da pessoa com quem você está se comunicando. Como ter certeza de que o servidor com quem você está falando é quem ele diz ser?
É aí que entram os certificados. Na hora de se conectar a um servidor web seguro, este enviará um certificado com o nome da empresa, endereço, etc. É uma espécie de carteira de identidade.
Como verificar a autenticidade desta carteira de identidade?
São as PKI (Public Key Infrastructure), das empresas externas (às quais você faz, implicitamente, confiança), que vão verificar a autenticidade do certificado.
(A lista destas PKI está incluída no seu navegador. Geralmente tem a VeriSign, a Thawte, etc.)
Estas PKI assinam criptograficamente os certificados das empresas (e elas são pagas por isso).
O uso do SSL: HTTPS, SSH, FTPS, POPS...
O SSL pode ser usado para proteger praticamente qualquer protocolo usando TCP / IP.
Alguns protocolos foram especialmente modificados para suportar o SSL:
HTTPS: é HTTP+SSL. Este protocolo está incluído em praticamente todos os navegadores, e permite que você (por exemplo) consulte suas contas bancárias na web de forma segura.
FTPS é uma extensão do FTP (File Transfer Protocol) usando SSL.
SSH (Secure Shell) é uma espécie de telnet (ou rlogin) seguro. Isso permite que você se conecte a um computador remoto com segurança e ter uma linha de comando. O SSH tem extensões para proteger outros protocolos (FTP, POP3, ou mesmo X Windows).
É possível tornar seguros os protocolos, criando túneis SSL. Depois de criar o túnel, você pode fazer passar qualquer protocolo por ele (SMTP, POP3, HTTP, NNTP, etc). Todos os dados trocados são criptografados automaticamente.
Isto pode ser feito com ferramentas como o STunnel ou o SSH .
Veja este exemplo com o protocolo POP3:
Com o protocolo POP3 que, normalmente, você usa para ler os seus e-mails, as senhas e as mensagens transitam claramente na Internet. Suas senhas e mensagens podem ser roubadas.
Com o túnel SSL, e sem alterar os softwares cliente e servidor , você pode garantir a recuperação de seus e-mails: ninguém pode roubar suas senhas ou e-mails, pois tudo que passa pelo túnel SSL é criptografado.
Mas isso requer a instalação do STunnel no cliente e no servidor.
Alguns provedores de acesso oferecem este serviço, mas ainda é muito raro. Pergunte ao seu provedor de acesso se ele tem este tipo serviço instalado.
O STunnel permite assim a proteção da maioria dos protocolos baseados no TCP/IP, sem alterar os softwares . Ele é muito fácil de instalar.
Quais são as diferentes versões do SSL?
O SSL versão 3.0 é muito semelhante ao SSL versão 2.0 , mas o SSL v2.0 tem menos algoritmos de criptografia que o SSL V3.0.
TLS v1.0 é um protocolo semelhante com base no SSL. As aplicações usando o TLS v1.0 pode se comunicar facilmente com as aplicações utilizando o SSL v3.0.
Então, quando vejo o cadeado, estou protegido?
O cadeado te indica se as comunicações entre o seu browser e o site são seguras: ninguém pode espiá-los, e ninguém pode mexer nas comunicações. Mas ele não garante nada mais
Para tirar uma foto:
HTTPS (o cadeado), é como um carro blindado: ele garante a segurança do transporte.
Mas realmente só transporte.
O carro blindado não garante que o banco usa bons cofres e que eles fecham bem.
O carro blindado também não garante que o banco não desfalque ninguém.
O carro blindado realmente só garante o transporte.
É a mesma coisa para o HTTPS (o cadeadinho do browser).
Da mesma forma que criminosos podem contratar um carro blindado, piratas e bandidos podem muito bem criar um site seguro (com o cadeadinho).
Tenha cuidado e não confie em qualquer informação em qualquer site, com ou sem cadeado.
Artigo original publicado por sebsauvage
Tradução feita por Lucia Maurity y Nouira
O cadeado te indica se as comunicações entre o seu browser e o site são seguras: ninguém pode espiá-los, e ninguém pode mexer nas comunicações. Mas ele não garante nada mais
Para tirar uma foto:
HTTPS (o cadeado), é como um carro blindado: ele garante a segurança do transporte.
Mas realmente só transporte.
O carro blindado não garante que o banco usa bons cofres e que eles fecham bem.
O carro blindado também não garante que o banco não desfalque ninguém.
O carro blindado realmente só garante o transporte.
É a mesma coisa para o HTTPS (o cadeadinho do browser).
Da mesma forma que criminosos podem contratar um carro blindado, piratas e bandidos podem muito bem criar um site seguro (com o cadeadinho).
Tenha cuidado e não confie em qualquer informação em qualquer site, com ou sem cadeado.
Artigo original publicado por sebsauvage
Tradução feita por Lucia Maurity y Nouira
Nenhum comentário:
Postar um comentário
Agradecemos sua participação.