O que é Criptografia de Chave Pública?

31.01.2019

O que é Criptografia de Chave Pública?

A criptografia de chave pública (PKC), também conhecida como criptografia assimétrica, é uma estrutura que usa chaves públicas e privadas, ao contrário das chaves únicas usadas no sistema de criptografia simétrica. O uso de pares de chaves fornece à PKC um conjunto exclusivo de características e recursos que podem ser utilizados para resolver desafios inerentes a outras técnicas criptográficas. Essa forma de criptografia tornou-se um elemento importante da segurança moderna dos computadores, bem como um componente crítico do crescente ecossistema das criptomoedas.


Como a Criptografia de Chave Pública Funciona?

Em um sistema PKC, a chave pública é usada por um remetente para encriptar informações, enquanto a chave privada é usada pelo destinatário para descriptografar essas informações. Como as duas chaves são diferentes umas das outras, a chave pública pode ser compartilhada livremente sem comprometer a segurança da chave privada. Cada par de chaves assimétricas é único, garantindo que uma mensagem criptografada usando uma chave pública possa ser lida apenas pela pessoa que possui a chave privada correspondente.

Como os algoritmos de criptografia assimétrica geram pares de chaves que são vinculados matematicamente, o comprimento dessas chaves é muito maior do que o encontrado nas de criptografia simétrica. Esse comprimento mais longo - normalmente entre 1.024 e 2.048 bits - torna extremamente difícil calcular uma chave privada usando a pública como base. Um dos algoritmos mais comuns para criptografia assimétrica em uso atualmente é conhecido como RSA. No esquema RSA, as chaves são geradas usando um módulo que é obtido pela multiplicação de dois números (geralmente dois grandes números primos). Em termos básicos, o módulo gera duas chaves (uma pública que pode ser compartilhada e uma privada que deve ser mantida em segredo). O algoritmo RSA foi descrito pela primeira vez em 1977 por Rivest, Shamir e Adleman (portanto, RSA) e continua sendo um componente importante dos sistemas de criptografia de chave pública.


PKC como Ferramenta de Criptografia

A criptografia de chave pública resolve um dos problemas de longa data dos algoritmos simétricos, que é a comunicação da chave usada tanto para criptografia quanto descriptografia ao mesmo tempo. Enviar essa chave por uma conexão insegura pode expô-la a terceiros, que conseguem ler qualquer mensagem criptografada com a chave compartilhada. Embora as técnicas criptográficas (como o protocolo de troca de chaves Diffie-Hellman-Merkle) existam para resolver este problema, elas ainda estão vulneráveis a ataques. Na criptografia de chave pública, por outro lado, a chave usada para criptografia pode ser compartilhada com segurança em qualquer conexão. Como resultado, os algoritmos assimétricos oferecem um nível de proteção mais alto quando comparados aos simétricos.


Uso na Geração de Assinaturas Digitais

Outra aplicação de algoritmos de criptografia assimétrica é a autenticação de dados através do uso de assinaturas digitais. Basicamente falando, assinatura digital é um hash criado usando os dados de uma mensagem. Quando essa mensagem é enviada, a assinatura pode ser verificada pelo destinatário usando a chave pública do remetente para autenticar a origem da mensagem e garantir que ela não tenha sido adulterada. Em alguns casos, assinaturas digitais e criptografia são aplicadas juntas, pois o próprio hash pode ser criptografado como parte da mensagem. Deve-se notar, no entanto, que nem todos os esquemas de assinatura digital usam técnicas de criptografia.


Limitações

Embora possa ser usado para melhorar a segurança de computadores e fornecer verificação da integridade de mensagens, o PKC tem algumas limitações. Devido às complexas operações matemáticas envolvidas na criptografia e descriptografia, os algoritmos assimétricos podem ser bastante lentos quando forçados a lidar com grandes quantidades de dados. Esse tipo de criptografia também depende muito da suposição de que a chave privada permanecerá secreta. Se uma chave privada for compartilhada ou exposta acidentalmente, a segurança de todas as mensagens criptografadas com sua chave pública correspondente será comprometida. Também é possível que os usuários percam acidentalmente suas chaves privadas e, nesse caso, torna-se impossível acessar os dados criptografados.


Aplicações da Criptografia de Chave Pública

Esse tipo de criptografia é usado por muitos sistemas de computadores modernos para fornecer segurança a informações confidenciais. E-mails, por exemplo, podem ser criptografados usando técnicas de criptografia de chave pública para manter seu conteúdo confidencial. O protocolo SSL (Secure Sockets Layer), que possibilita conexões seguras a sites da Web, também emprega criptografia assimétrica. Os sistemas de PKC foram até explorados como forma de proporcionar um ambiente seguro para votação eletrônica que potencialmente permitiria que os eleitores participassem das eleições a partir de seus computadores domésticos.

O PKC também se destaca no mundo das Blockchains e criptomoedas. Quando uma nova carteira de criptomoeda é configurada, um par de chaves é gerado (pública e privada). O endereço público é criado usando a chave pública e pode ser compartilhado com segurança para outras pessoas. A chave privada, por outro lado, é usada para criar assinaturas digitais e verificar transações, portanto, deve ser mantida em segredo. Depois que uma transação é verificada confirmando o hash contido na assinatura digital, essa transação pode ser adicionada ao ledger (livro-razão) da Blockchain. Esse sistema de verificação de assinaturas digitais garante que apenas a pessoa que possui a chave privada associada à carteira de criptomoedas correspondente possa liberar recursos dela. Deve-se notar que as cifras assimétricas usadas nas aplicações de criptomoedas são diferentes daquelas usadas para fins de segurança de computadores. O Bitcoin e o Ethereum, por exemplo, usam uma codificação especializada, conhecida como o Algoritmo de Assinatura Digital de Curva Elíptica (ECDSA), para verificar as transações.

Desde a segurança de computadores até a verificação de transações de criptomoedas, a criptografia de chave pública desempenha um papel importante na proteção de sistemas digitais modernos. Usando chaves públicas e privadas emparelhadas, os algoritmos de criptografia assimétrica resolvem os problemas fundamentais de segurança apresentados por cifras simétricas. Embora o PKC exista há muitos anos, novos usos e aplicações estão sendo desenvolvidos regularmente para ele, particularmente no espaço das Blockchains e criptomoedas.

Loading