Criptografia de chave pública
sistema criptográfico que usa pares de chaves: chaves públicas / De Wikipedia, a enciclopédia encyclopedia
Criptografia de chave pública, também conhecida como criptografia assimétrica, é qualquer sistema criptográfico que usa pares de chaves: chaves públicas, que podem ser amplamente disseminadas, e chaves privadas que são conhecidas apenas pelo proprietário. Isto realiza duas funções: autenticação, onde a chave pública verifica que um portador da chave privada parelhada enviou a mensagem, e encriptação, onde apenas o portador da chave privada parelhada pode decriptar a mensagem encriptada com a chave pública.
O termo assimétrica vem deste uso de diferentes chaves para realizar essas funções opostas, cada uma a inversa da outra – como contrapartida da criptografia ("simétrica") convencional, a qual depende da mesma chave para realizar ambos.
Em um sistema de criptografia de chave pública, qualquer pessoa pode criptografar uma mensagem usando a chave pública do destinatário. Essa mensagem criptografada só pode ser descriptografada com a chave privada do destinatário. Para ser prática, a geração de uma chave pública e privada deve ser computacionalmente econômica. A força de um sistema de criptografia de chave pública depende do esforço computacional (fator de trabalho em criptografia) necessário para encontrar a chave privada de sua chave pública emparelhada. Segurança efetiva requer apenas manter a chave privada. A chave pública pode ser distribuída abertamente sem comprometer a segurança.[1]
Algoritmos de chave pública são baseados em problemas matemáticos que atualmente não admitem solução eficiente e são inerentes em determinados relacionamentos de fatoração inteira, logaritmo discreto, e curva elíptica. É computacionalmente fácil para um usuário gerar um par de chaves, uma pública e uma privada, e usá-lo para encriptação e decriptação. A força está na "impossibilidade" (computacionalmente impraticável) para uma chave privada gerada apropriadamente ser determinada pela sua chave pública correspondente. Assim, a chave pública pode ser publicada sem comprometer a segurança. Segurança depende apenas de manter secreta a chave privada, isto é, a chave privada nunca deve ser descoberta. Algoritmos de chave pública, diferente de algoritmos de chave simétrica, não exigem um canal seguro para a troca inicial de uma (ou mais) chave secreta entre as partes.
Por causa da complexidade computacional da encriptação assimétrica, ela é tipicamente usada apenas para transferir uma chave de encriptação simétrica pela qual a mensagem (e normalmente a conversa inteira) é encriptada. A encriptação/decriptação simétrica é baseada em algoritmos mais simples e muito mais rápidos.
Autenticação de mensagens envolve aplicar hash à mensagem para produzir um "resumo", e encriptar o resumo com a chave privada para produzir uma assinatura digital. Dessa forma qualquer um pode verificar essa assinatura (1) computando o hash da mensagem, (2) decriptando a assinatura com a chave pública do signatário, e (3) comparando o resumo computado com o resumo decriptado. A igualdade entre os resumos confirma que a mensagem não foi modificada já que ela foi assinada, e que o assinante, e ninguém mais, intencionalmente realizou a operação de assinatura — presumindo que a chave privada do assinante se manteve secreta para o assinante.
A descrição acima depende de um algoritmo de hash de tamanha qualidade tal que ele seja computacionalmente impossível de alterar ou encontrar uma mensagem substituta que produza o mesmo resumo. Porém estudos mostram que até com os algoritmos MD5 e SHA-1, produzir uma mensagem alterada ou substituta não é impossível.[2] O padrão atual de hash para encriptação é SHA-2. A própria mensagem pode ser usada no lugar do resumo.
Algoritmos de chave pública são ingredientes de segurança fundamentais em criptosistemas, aplicações e protocolos. Eles dão sustentação a vários padrões da Internet, tais quais Segurança da Camada de Transporte (SCT), S/MIME, PBB, e GPG. Alguns algoritmos de chave pública fornecem distribuição de chave e sigilo (e.g., Troca de chaves de Diffie–Hellman), outros fornecem assinaturas digitais (e.g., Algoritmo de Assinatura Digital), e alguns fornecem ambos (e.g., RSA).
Criptografia de chave pública encontra aplicações na disciplina de segurança de TI segurança da informação, entre outras. Segurança da informação (SI) lida com todos os aspectos de proteção da informação eletrônica ativa contra ameaças de segurança.[3] Criptografia de chave pública é usada como um método de garantir a confidencialidade, autenticidade e o não-repúdio de comunicações eletrônicas e de armazenamento de dados.