Criptossistemas
Um criptosistema é uma implementação de técnicas criptográficas e sua infraestrutura de acompanhamento para fornecer serviços de segurança da informação. Um criptosistema também é conhecido como umcipher system.
Vamos discutir um modelo simples de um criptosistema que fornece confidencialidade às informações que estão sendo transmitidas. Este modelo básico é representado na ilustração abaixo -
A ilustração mostra um remetente que deseja transferir alguns dados confidenciais para um receptor de forma que qualquer parte que intercepte ou escute o canal de comunicação não possa extrair os dados.
O objetivo desse criptosistema simples é que, ao final do processo, apenas o remetente e o destinatário saibam o texto simples.
Componentes de um Criptossistema
Os vários componentes de um criptosistema básico são os seguintes -
Plaintext. São os dados a serem protegidos durante a transmissão.
Encryption Algorithm.É um processo matemático que produz um texto cifrado para qualquer texto simples e chave de criptografia. É um algoritmo criptográfico que recebe texto simples e uma chave de criptografia como entrada e produz um texto cifrado.
Ciphertext.É a versão embaralhada do texto simples produzido pelo algoritmo de criptografia usando uma chave de criptografia específica. O texto cifrado não é protegido. Ele flui em canal público. Ele pode ser interceptado ou comprometido por qualquer pessoa que tenha acesso ao canal de comunicação.
Decryption Algorithm,É um processo matemático que produz um texto simples exclusivo para qualquer texto cifrado e chave de descriptografia. É um algoritmo criptográfico que pega um texto cifrado e uma chave de descriptografia como entrada e produz um texto simples. O algoritmo de descriptografia essencialmente reverte o algoritmo de criptografia e, portanto, está intimamente relacionado a ele.
Encryption Key.É um valor conhecido pelo remetente. O remetente insere a chave de criptografia no algoritmo de criptografia junto com o texto simples para computar o texto cifrado.
Decryption Key.É um valor conhecido pelo receptor. A chave de descriptografia está relacionada à chave de criptografia, mas nem sempre é idêntica a ela. O receptor insere a chave de descriptografia no algoritmo de descriptografia junto com o texto cifrado para computar o texto simples.
Para um determinado criptossistema, uma coleção de todas as chaves de descriptografia possíveis é chamada de key space.
A interceptor(um invasor) é uma entidade não autorizada que tenta determinar o texto simples. Ele pode ver o texto cifrado e pode conhecer o algoritmo de descriptografia. Ele, no entanto, nunca deve saber a chave de descriptografia.
Tipos de criptosistemas
Fundamentalmente, existem dois tipos de criptossistemas baseados na maneira como a criptografia-descriptografia é realizada no sistema -
- Criptografia de chave simétrica
- Criptografia de chave assimétrica
A principal diferença entre esses criptosistemas é a relação entre a criptografia e a chave de descriptografia. Logicamente, em qualquer criptosistema, ambas as chaves estão intimamente associadas. É praticamente impossível descriptografar o texto cifrado com a chave que não está relacionada à chave de criptografia.
Criptografia de chave simétrica
O processo de criptografia onde same keys are used for encrypting and decrypting as informações são conhecidas como criptografia de chave simétrica.
O estudo de criptosistemas simétricos é referido como symmetric cryptography. Os criptossistemas simétricos também são às vezes referidos comosecret key cryptosystems.
Alguns exemplos bem conhecidos de métodos de criptografia de chave simétrica são - Digital Encryption Standard (DES), Triple-DES (3DES), IDEA e BLOWFISH.
Antes de 1970, todos os criptossistemas empregavam criptografia de chave simétrica. Ainda hoje, sua relevância é muito alta e está sendo usado extensivamente em muitos criptossistemas. É muito improvável que essa criptografia desapareça, pois tem certas vantagens em relação à criptografia de chave assimétrica.
As principais características do criptossistema baseado em criptografia de chave simétrica são -
Pessoas que usam criptografia de chave simétrica devem compartilhar uma chave comum antes de trocar informações.
Recomenda-se que as chaves sejam alteradas regularmente para evitar qualquer ataque ao sistema.
Um mecanismo robusto deve existir para trocar a chave entre as partes comunicantes. Como as chaves precisam ser trocadas regularmente, esse mecanismo se torna caro e complicado.
Em um grupo de n pessoas, para permitir a comunicação de duas partes entre quaisquer duas pessoas, o número de chaves necessárias para o grupo é n × (n – 1)/2.
O comprimento da chave (número de bits) nesta criptografia é menor e, portanto, o processo de criptografia-descriptografia é mais rápido do que a criptografia de chave assimétrica.
O poder de processamento do sistema de computador necessário para executar o algoritmo simétrico é menor.
Desafio do criptosistema de chave simétrica
Existem dois desafios restritivos no emprego de criptografia de chave simétrica.
Key establishment- Antes de qualquer comunicação, o remetente e o destinatário precisam concordar sobre uma chave simétrica secreta. Requer um mecanismo seguro de estabelecimento de chaves.
Trust Issue- Como o remetente e o destinatário usam a mesma chave simétrica, há um requisito implícito de que o remetente e o destinatário "confiem" um no outro. Por exemplo, pode acontecer que o destinatário tenha perdido a chave para um invasor e o remetente não seja informado.
Esses dois desafios são altamente restritivos para a comunicação moderna. Hoje, as pessoas precisam trocar informações com partes não familiares e não confiáveis. Por exemplo, uma comunicação entre o vendedor online e o cliente. Essas limitações da criptografia de chave simétrica deram origem a esquemas de criptografia de chave assimétrica.
Criptografia de chave assimétrica
O processo de criptografia onde different keys are used for encrypting and decrypting the informationé conhecido como criptografia de chave assimétrica. Embora as chaves sejam diferentes, elas são matematicamente relacionadas e, portanto, é possível recuperar o texto simples descriptografando o texto cifrado. O processo é descrito na ilustração a seguir -
Asymmetric chave de criptografia foi inventado no 20 º século para vir a necessidade de chave secreta pré-compartilhada entre as pessoas que se comunicam. As principais características deste esquema de criptografia são as seguintes -
Cada usuário neste sistema precisa ter um par de chaves diferentes, private key e public key. Essas chaves são matematicamente relacionadas - quando uma chave é usada para criptografia, a outra pode descriptografar o texto cifrado de volta ao texto simples original.
Requer colocar a chave pública no repositório público e a chave privada como um segredo bem guardado. Portanto, este esquema de criptografia também é chamadoPublic Key Encryption.
Embora as chaves públicas e privadas do usuário estejam relacionadas, não é computacionalmente viável encontrar uma a partir da outra. Este é um ponto forte deste esquema.
Quando o Host1 precisa enviar dados para o Host2, ele obtém a chave pública do Host2 do repositório, criptografa os dados e os transmite.
Host2 usa sua chave privada para extrair o texto simples.
O comprimento das chaves (número de bits) nesta criptografia é grande e, portanto, o processo de criptografia-descriptografia é mais lento do que a criptografia de chave simétrica.
O poder de processamento do sistema de computador necessário para executar o algoritmo assimétrico é maior.
Criptossistemas simétricos são um conceito natural. Em contraste, os criptosistemas de chave pública são bastante difíceis de compreender.
Você pode pensar: como a chave de criptografia e a chave de descriptografia podem estar 'relacionadas' e, ainda assim, é impossível determinar a chave de descriptografia a partir da chave de criptografia? A resposta está nos conceitos matemáticos. É possível projetar um criptosistema cujas chaves tenham esta propriedade. O conceito de criptografia de chave pública é relativamente novo. Existem menos algoritmos de chave pública conhecidos do que algoritmos simétricos.
Desafio do criptosistema de chave pública
Os criptosistemas de chave pública têm um desafio significativo - o usuário precisa confiar que a chave pública que está usando nas comunicações com uma pessoa é realmente a chave pública dessa pessoa e não foi falsificada por um terceiro malicioso.
Isso geralmente é realizado por meio de uma infraestrutura de chave pública (PKI) que consiste em um terceiro confiável. O terceiro gerencia e atesta com segurança a autenticidade das chaves públicas. Quando o terceiro é solicitado a fornecer a chave pública para qualquer pessoa que se comunica X, eles são confiáveis para fornecer a chave pública correta.
O terceiro se satisfaz com a identidade do usuário pelo processo de atestação, reconhecimento de firma ou algum outro processo - que X é o único, ou globalmente único, X. O método mais comum de disponibilizar as chaves públicas verificadas é incorporá-las em um certificado assinado digitalmente por um terceiro confiável.
Relação entre esquemas de criptografia
Um resumo das propriedades básicas de dois tipos de criptosistemas é fornecido abaixo -
Criptossistemas simétricos | Criptossistemas de chave pública | |
---|---|---|
Relation between Keys | Mesmo | Diferente, mas matematicamente relacionado |
Chave de encriptação | Simétrico | Público |
Chave de descriptografia | Simétrico | Privado |
Devido às vantagens e desvantagens de ambos os sistemas, os sistemas criptográficos de chave simétrica e de chave pública são freqüentemente usados juntos nos sistemas práticos de segurança da informação.
Princípio de Kerckhoff para Criptossistema
Na 19 ª século, um holandês criptógrafo A. Kerckhoff forneceu os requisitos de um bom sistema de criptografia. Kerckhoff afirmou que um sistema criptográfico deve ser seguro mesmo que tudo sobre o sistema, exceto a chave, seja de conhecimento público. Os seis princípios de design definidos por Kerckhoff para criptossistema são -
O criptossistema deve ser inquebrável praticamente, se não matematicamente.
A queda do criptosistema nas mãos de um intruso não deve comprometer o sistema, evitando qualquer transtorno ao usuário.
A chave deve ser facilmente comunicável, memorável e mutável.
O texto cifrado deve ser transmissível por telégrafo, um canal não seguro.
O aparelho de criptografia e os documentos devem ser portáteis e operáveis por uma única pessoa.
Por fim, é necessário que o sistema seja fácil de usar, não exigindo esforço mental nem o conhecimento de uma longa série de regras a serem observadas.
A segunda regra é atualmente conhecida como Kerckhoff principle. É aplicado em praticamente todos os algoritmos de criptografia contemporâneos, como DES, AES, etc. Esses algoritmos públicos são considerados totalmente seguros. A segurança da mensagem criptografada depende exclusivamente da segurança da chave secreta de criptografia.
Manter os algoritmos em segredo pode atuar como uma barreira significativa para a criptoanálise. No entanto, manter os algoritmos em segredo só é possível quando eles são usados em um círculo estritamente limitado.
Na era moderna, a criptografia precisa atender aos usuários que estão conectados à Internet. Nesses casos, usar um algoritmo secreto não é viável, portanto, os princípios de Kerckhoff se tornaram diretrizes essenciais para projetar algoritmos na criptografia moderna.