Pagina inicial » como » O que é criptografia e como ela funciona?

    O que é criptografia e como ela funciona?

    A criptografia tem uma longa história que remonta a quando os antigos gregos e romanos enviavam mensagens secretas substituindo letras apenas decifráveis ​​por uma chave secreta. Junte-se a nós para uma rápida aula de história e saiba mais sobre como funciona a criptografia.

    Na edição de hoje da HTG Explains, vamos dar um breve histórico de criptografia, como funciona e alguns exemplos de diferentes tipos de criptografia - verifique também a edição anterior, onde explicamos por que tantos geeks detestam a Internet Explorador.

    Imagem por xkcd, obviamente.

    Os primeiros dias da criptografia

    Os antigos gregos usavam uma ferramenta chamada Scytale para ajudar a criptografar suas mensagens mais rapidamente usando uma cifra de transposição - eles simplesmente enrolavam a tira de pergaminho em volta do cilindro, escreviam a mensagem e depois, quando desenrolavam, não fazia sentido..

    Esse método de criptografia pode ser facilmente quebrado, é claro, mas é um dos primeiros exemplos de criptografia sendo usada no mundo real.

    Júlio César usou um método um tanto parecido durante seu tempo, deslocando cada letra do alfabeto para a direita ou para a esquerda por várias posições - uma técnica de criptografia conhecida como cifra de César. Por exemplo, usando o exemplo abaixo, você escreveria “GEEK” como “JHHN”.

    Simples: ABCDEFGHIJKLMNOPQRSTUVWXYZ
    Cifra: DEFGHIJKLMNOPQRSTUVWXYZABC

    Como somente o destinatário da mensagem sabia a cifra, seria difícil para a próxima pessoa decodificar a mensagem, que pareceria algo sem sentido, mas a pessoa que tinha a cifra poderia facilmente decodificá-la e lê-la..

    Outras cifras de criptografia simples, como o quadrado de Políbio, usavam uma cifra polifabética que listava cada letra com as posições numéricas correspondentes na parte superior e na lateral para informar onde a posição da carta era.

    Usando uma tabela como a acima, você escreveria a letra “G” como “23” ou “GEEK” como “23 31 31 43”..

    Máquina Enigma

    Durante a Segunda Guerra Mundial, os alemães usaram a máquina Enigma para transmitir transmissões criptografadas, que levaram anos antes que os poloneses conseguissem decifrar as mensagens, e fornecer a solução às forças aliadas, o que foi fundamental para sua vitória..

    A história da criptografia moderna

    Vamos enfrentá-lo: técnicas modernas de criptografia podem ser um assunto extremamente entediante, então ao invés de apenas explicá-las com palavras, montamos uma história em quadrinhos que fala sobre a história da criptografia, inspirada pelo guia de figuras de Jeff Moser para AES..  Nota: claramente não podemos transmitir tudo sobre a história da criptografia em uma história em quadrinhos.

    Naqueles dias, as pessoas não têm um bom método de criptografia para proteger suas comunicações eletrônicas.

    Lúcifer foi o nome dado a várias das primeiras cifras de bloco civis, desenvolvidas por Horst Feistel e seus colegas na IBM..

    O Data Encryption Standard (DES) é uma cifra de bloco (uma forma de criptografia secreta compartilhada) que foi selecionada pelo National Bureau of Standards como um FIPS (Federal Information Processing Standard) oficial para os Estados Unidos em 1976 e que subseqüentemente desfrutou de ampla difusão. usar internacionalmente.

    Preocupações com a segurança e a operação relativamente lenta do DES no software motivaram os pesquisadores a propor uma variedade de projetos alternativos de cifra de bloco, que começaram a aparecer no final dos anos 80 e início dos anos 90: exemplos como RC5, Blowfish, IDEA, NewDES, SAFER, CAST5 e FEAL

    O algoritmo de criptografia Rijndael foi adotado pelo governo dos EUA como criptografia padrão de chave simétrica ou Advanced Encryption Standard (AES). AES foi anunciada pelo Instituto Nacional de Padrões e Tecnologia (NIST) como US FIPS PUB 197 (FIPS 197) em 26 de novembro de 2001 após um processo de padronização de 5 anos em que quinze projetos concorrentes foram apresentados e avaliados antes de Rijndael ser selecionado como o mais algoritmo de criptografia adequado.

    Desempenho do Algoritmo de Criptografia

    Existem muitos algoritmos de criptografia, e eles são adequados a diferentes propósitos - as duas principais características que identificam e diferenciam um algoritmo de criptografia de outro são sua capacidade de proteger os dados protegidos contra ataques e sua velocidade e eficiência em fazê-lo..

    Como um bom exemplo da diferença de velocidade entre diferentes tipos de criptografia, você pode usar o utilitário de benchmarking embutido no assistente de criação de volume do TrueCrypt - como você pode ver, o AES é de longe o tipo mais rápido de criptografia forte.

    Existem métodos de criptografia mais lentos e mais rápidos, e todos são adequados para diferentes propósitos. Se você está simplesmente tentando descriptografar um pequeno pedaço de dados de vez em quando, pode usar a criptografia mais forte possível, ou até criptografá-la duas vezes com diferentes tipos de criptografia. Se você precisar de velocidade, provavelmente você gostaria de ir com AES.

    Para obter mais informações sobre o benchmarking de diferentes tipos de criptografia, confira um relatório da Universidade de Washington de St. Louis, onde eles fizeram uma tonelada de testes em rotinas diferentes e explicaram tudo em um artigo muito nerd..

    Tipos de criptografia moderna

    Todos os algoritmos de criptografia sofisticados de que falamos anteriormente são usados ​​principalmente para dois tipos diferentes de criptografia:

    • Algoritmos de chave simétrica usar chaves de criptografia relacionadas ou idênticas para criptografia e descriptografia.
    • Algoritmos de chave assimétrica usar chaves diferentes para criptografia e descriptografia - isso geralmente é chamado de Criptografia de chave pública.

    Criptografia de chave simétrica

    Para explicar este conceito, usaremos a metáfora do serviço postal descrita na Wikipedia para entender como os algoritmos de chave simétrica funcionam.

    Alice coloca sua mensagem secreta em uma caixa e bloqueia a caixa usando um cadeado para o qual ela tem uma chave. Ela então envia a caixa para Bob pelo correio normal. Quando Bob recebe a caixa, ele usa uma cópia idêntica da chave de Alice (que de alguma forma obteve anteriormente, talvez por uma reunião cara a cara) para abrir a caixa e ler a mensagem. Bob pode então usar o mesmo cadeado para enviar sua resposta secreta.

    Algoritmos de chave simétrica podem ser divididos em cifras de fluxo e cifras de fluxo de cifras de bloco criptografam os bits da mensagem um de cada vez, e cifras de bloco tomam um número de bits, geralmente em blocos de 64 bits por vez, e os criptografam como uma única unidade. Há muitos algoritmos diferentes que você pode escolher: os algoritmos simétricos mais populares e bem respeitados incluem Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, TDES e IDEA.

    Criptografia Assimétrica

    Em um sistema de chave assimétrica, Bob e Alice têm cadeados separados, em vez do cadeado único com várias chaves do exemplo simétrico. Nota: este é, obviamente, um exemplo extremamente simplista de como ele realmente funciona, o que é muito mais complicado, mas você terá a idéia geral.

    Primeiro, Alice pede que Bob envie seu cadeado aberto para ela por correspondência normal, mantendo a chave para si mesmo. Quando Alice a recebe, ela a usa para bloquear uma caixa contendo sua mensagem e envia a caixa bloqueada para Bob. Bob pode então desbloquear a caixa com sua chave e ler a mensagem de Alice. Para responder, Bob deve, da mesma forma, pegar o cadeado aberto de Alice para trancar a caixa antes de enviá-la de volta para ela..

    A vantagem crítica em um sistema de chaves assimétricas é que Bob e Alice nunca precisam enviar uma cópia de suas chaves entre si. Isso impede que um terceiro (talvez, no exemplo, um funcionário postal corrupto) copie uma chave enquanto ela estiver em trânsito, permitindo que o terceiro espie todas as futuras mensagens enviadas entre Alice e Bob. Além disso, se Bob fosse descuidado e permitisse que outra pessoa copiasse dele chave, as mensagens de Alice para Bob seriam comprometidas, mas as mensagens de Alice para outras pessoas permaneceriam em segredo, já que as outras pessoas estariam fornecendo cadeados diferentes para Alice usar.

    A criptografia assimétrica usa chaves diferentes para criptografia e descriptografia. O destinatário da mensagem cria uma chave privada e uma chave pública. A chave pública é distribuída entre os remetentes de mensagens e eles usam a chave pública para criptografar a mensagem. O destinatário usa a chave privada de qualquer mensagem criptografada que tenha sido criptografada usando a chave pública do destinatário.

    Há um grande benefício em fazer a criptografia dessa maneira, em comparação com a criptografia simétrica. Nunca precisamos enviar nada em segredo (como nossa chave de criptografia ou senha) em um canal inseguro. Sua chave pública vai para o mundo - não é segredo e não precisa ser. Sua chave privada pode ficar confortável e confortável em seu computador pessoal, onde você gerou isso - ele nunca precisa ser enviado por e-mail em qualquer lugar ou lido por invasores.

    Como a criptografia protege a comunicação na Web

    Por muitos anos, o protocolo SSL (Secure Sockets Layer) tem protegido as transações na web usando criptografia entre o seu navegador da web e um servidor web, protegendo você de qualquer pessoa que possa estar bisbilhotando na rede no meio..

    O próprio SSL é conceitualmente bem simples. Começa quando o navegador solicita uma página segura (geralmente https: //)

    O servidor da web envia sua chave pública com seu certificado.

    O navegador verifica se o certificado foi emitido por uma parte confiável (geralmente uma autoridade de certificação raiz confiável), se o certificado ainda é válido e se o certificado está relacionado ao site contatado..

    O navegador, em seguida, usa a chave pública para criptografar uma chave de criptografia simétrica aleatória e a envia para o servidor com a URL criptografada necessária, bem como outros dados HTTP criptografados..

    O servidor da web descriptografa a chave de criptografia simétrica usando sua chave privada e usa a chave simétrica do navegador para descriptografar sua URL e dados http.

    O servidor web envia de volta o documento html solicitado e os dados http criptografados com a chave simétrica do navegador. O navegador descriptografa os dados http e o documento html usando a chave simétrica e exibe as informações.

    E agora você pode comprar com segurança aquele item do eBay que realmente não precisava.

    Você aprendeu alguma coisa??

    Se você chegou até aqui, estamos no final de nossa longa jornada para compreender a criptografia e um pouco de como funciona - a partir dos primeiros dias de criptografia com os gregos e romanos, a ascensão de Lúcifer e, finalmente, como SSL usa criptografia assimétrica e simétrica para ajudá-lo a comprar aquele coelho rosa fofo no eBay.


    Somos grandes fãs de criptografia aqui no How-To Geek, e cobrimos muitas maneiras diferentes de fazer coisas como:

    • Introdução ao TrueCrypt (para proteger seus dados)
    • Adicionar criptografia automática de sites ao Firefox
    • O BitLocker To Go criptografa unidades flash portáteis no Windows 7
    • Como proteger seu PC Linux criptografando seu disco rígido
    • Adicionar opções de criptografia / descriptografia ao menu do botão direito do Windows 7 / Vista
    • Primeiros passos com o TrueCrypt Drive Encryption no Mac OS X

    É claro que a criptografia é um tópico complicado demais para realmente explicar tudo. Nós sentimos falta de algo importante? Sinta-se à vontade para colocar algum conhecimento sobre seus colegas leitores nos comentários.