A criptografia de chave pública (PKC, também conhecida como criptografia assimétrica) é uma framework 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 (criada no final dos anos 70) tornou-se um elemento importante da segurança moderna dos computadores, bem como um componente crítico do crescente ecossistema das criptomoedas.
Neste artigo adaptado da Binance Academy, vamos explicar como funciona a Criptografia de Chave Pública e como ela é importante para as criptomoedas.
Num sistema PKC, a chave pública é usada por um remetente para encriptar informações, enquanto a chave privada é usada pelo destinatário para desencriptar essas mesmas informações. Como as duas chaves são diferentes uma da outra, a chave pública pode ser partilhada 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 1024 e 2048 bits – torna extremamente difícil calcular uma chave privada usando a pública como base.
Um dos algoritmos mais comuns para criptografia assimétrica é conhecido como RSA. No esquema RSA, as chaves são geradas pela multiplicação de dois (geralmente muito grandes) números primos. Em termos básicos são geradas duas chaves: uma pública, que pode ser partilhada; e uma privada, que deve ser mantida secreta. O algoritmo RSA foi descrito pela primeira vez em 1977 por Rivest, Shamir e Adleman (ou seja, RSA) e continua hoje a ser um componente importante dos sistemas de criptografia de chave pública.
Casos de uso da PKC
A criptografia de chave pública resolve um dos problemas de longa data dos algoritmos simétricos, que é a comunicação de uma chave usada tanto para encriptar como para desencriptar. Enviar essa chave por uma conexão insegura pode expô-la a terceiros, que conseguem ler qualquer mensagem criptografada com a chave partilhada.
Embora existam técnicas criptográficas (como o protocolo de troca de chaves Diffie-Hellman-Merkle) para resolver este problema, elas são ainda assim vulneráveis a ataques. Já na criptografia de chave pública, a chave de encriptação pode ser partilhada com segurança através de qualquer canal. Em resultado disso, os algoritmos assimétricos oferecem um nível de proteção mais alto quando comparados aos simétricos.
Outra aplicação de algoritmos de criptografia assimétrica é a autenticação de dados através do uso de assinaturas digitais. Em termos simplistas, a assinatura digital é um hash criado usando os dados de uma mensagem. Quando a 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 foi adulterada.
Em alguns casos, assinaturas digitais e criptografia são aplicadas em conjunto, 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 encriptação.
Limitações do framework PKC
Embora possa ser usado para melhorar a segurança informática e fornecer verificação da integridade de mensagens, o framework PKC tem algumas limitações. Devido às complexas operações matemáticas envolvidas na encriptação e desencriptação, os algoritmos assimétricos podem ser bastante lentos quando forçados a lidar com grandes quantidades de dados.
Este tipo de criptografia também depende muito, obviamente, do princípio de que a chave privada permanecerá secreta! Se uma chave privada for partilhada ou exposta acidentalmente, a segurança de todas as mensagens encriptadas com a sua chave pública correspondente será comprometida. Também é possível que os utilizadores percam acidentalmente as suas chaves privadas e, nesse caso, torna-se impossível aceder aos dados encriptados.
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. Os e-mails, por exemplo, podem ser encriptados usando técnicas de criptografia de chave pública para manter o conteúdo confidencial. O protocolo SSL (Secure Sockets Layer), que possibilita conexões seguras a websites, também emprega criptografia assimétrica.
Os sistemas de PKC têm sido explorados como forma de proporcionar um ambiente seguro para votação eletrónica que, potencialmente, permitiria aos eleitores participar em eleições a partir dos seus computadores domésticos.
O PKC também se destaca no mundo das blockchains e criptomoedas. Quando uma nova carteira de criptomoeda é configurada, é gerado um par de chaves (chave pública e chave privada): o endereço público é criado usando a chave pública e pode ser partilhado com segurança com outras pessoas; a chave privada, por outro lado, é usada para criar assinaturas digitais e verificar transações, devendo por isso ser mantida em segredo.
Depois de uma transação ser verificada confirmando o hash contido na assinatura digital, essa transação pode ser adicionada ao ledger 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 dela libertar recursos.
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.
Concluindo…
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 desde há muitos anos, estão a ser desenvolvidos regularmente novos usos e aplicações, particularmente no espaço das Blockchains e criptomoedas.
Siga toda a atualidade tecnológica no TecheNet através do Google News. Todas as novidades em tempo real e sem atrasos!
[mc4wp_form id=”104690″]
Outros artigos interessantes: