Baixe o app para aproveitar ainda mais
Prévia do material em texto
Algoritmos de Criptografia SST dos Santos, Renato Guedes; Gracioso, Ana Carolina Algoritmos de Criptografia / Renato Guedes dos Santos; Ana Carolina Gracioso Ano: 2020 nº de p.: 11 Copyright © 2020. Delinea Tecnologia Educacional. Todos os direitos reservados. Algoritmos de Criptografia 3 Apresentação Em nosso estudo, compreenderemos os algoritmos de criptografia, iniciando com divisão da criptologia (estudo da criptografia) e com a criptografia clássica, que se refere às cifras pré-computacionais utilizadas nas técnicas de transposição, técnica do retângulo e cifragem por substituição. Na sequência, estudaremos a criptografia simétrica (ou criptografia de chave privada) e a criptografia assimétrica (ou criptografia de chave pública). A ciência da criptologia está organizada conforme a figura a seguir: Divisões da criptologia. Fonte: Elaborada pelo autor (2019). Pelo diagrama, podemos ver que a criptologia abrange a criptografia, que compreende os conceitos e técnicas empregadas para codificar mensagens, e a criptoanálise, que representa as técnicas que procuram decifrar mensagens criptografadas, sem que sejam conhecidas a chave ou mesmo a lógica utilizada para codificar a mensagem. Criptologia = Criptografia + Criptoanálise 4 Criptografia clássica A criptografia clássica se refere às cifras pré-computacionais. As técnicas mais utilizadas nesse grupo compreendem a transposição e a substituição de caracteres, assim como o uso de rotores eletromecânicos, como os utilizados pelos alemães e britânicos na Segunda Guerra Mundial. Na técnica de transposição, mais conhecida como cifra de transposição, a mensagem é reordenada, gerando um anagrama. As letras são embaralhadas, trocadas de lugar, segundo uma lógica (algoritmo) previamente estabelecido. Um exemplo de cifra de transposição é a técnica denominada cerca de ferrovia (rail fence), em que o texto em claro (texto original antes da cifragem) é escrito em diagonais e recuperado como sendo uma sequência de linhas. Por exemplo, vamos ver como ficaria a codificação da mensagem “nossa privacidade está sendo atacada” com a técnica da cerca de ferrovia em profundidade 2: Transposição cerca de ferrovia. Fonte: Elaborada pelo autor (2020) A técnica do retângulo é outra técnica de transposição muito conhecida. Vamos ver um exemplo usando o mesmo texto, “nossa privacidade está sendo atacada” Transposição em retângulo. Fonte: Elaborada pelo autor (2020) 5 Nessa técnica, a mensagem é escrita na horizontal, mas usando apenas uma quantidade predefinida de colunas. A chave é usada para determinar a ordem em que as colunas serão extraídas para compor o texto cifrado. No caso, a chave 316542 determina que o primeiro bloco de texto será “OIAAAA”. O segundo bloco será “PISDAd”. Ao final, teremos a seguinte mensagem cifrada: OIAAAAPISDAdNRDTODACENCcSAEEAbSVDSTa Conhecendo a chave, sabemos a quantidade de colunas e como restaurar a mensagem cifrada ao formato texto em claro original. Nas técnicas de cifragem por substituição, cada caractere da mensagem é substituído por outro. Por exemplo, usando o modelo idealizado por César e aplicando o deslocamento de três posições, a palavra “ENIGMA” resultaria em “HQLJPD”, como demonstrado na figura a seguir: Cifra de César. Fonte: Elaborada pelo autor (2020) Na verdade, essa nada mais é do que uma cifra produzida pelo algoritmo proposto por Júlio César, com chave = 3. Ou seja, as letras exibidas na mensagem estão adiantadas em três posições no alfabeto. Para decodificá-la, precisamos fazer o sentido inverso, voltando três posições. Dessa forma, T=Q, X=U, H=E, P=M e assim por diante. Continue decodificando a frase inteira. Os espaços entre as palavras não estão contemplados na frase. É fácil, não? 6 Comparando as técnicas de transposição e substituição, temos que, na transposição, as letras mantêm sua identidade, mas mudam de posição, enquanto na substituição as letras mudam de identidade, mas mantêm a sua posição Os rotores eletromecânicos são máquinas eletromecânicas que aplicam múltiplos estágios de cifragem às mensagens, dificultando a decriptação. Foram largamente utilizados na Segunda Guerra Mundial pela Alemanha (Enigma) e Japão (Purple). A Hebern Rotor Machine é um dos primeiros exemplares dessa categoria de equipamentos concebidos nas primeiras décadas dos anos 1900. Ela é formada pela combinação de partes de uma máquina de escrever manual e outra elétrica, conectando as duas por um misturador. Logicamente, não existiam computadores ou painéis digitais à época e, portanto, as mensagens precisavam ser impressas. Criptografia simétrica (ou criptografia de chave privada) Na criptografia simétrica, o algoritmo criptográfico utiliza uma mesma chave para os processos de cifragem e decifragem, representando uma evolução dos métodos clássicos de criptografia. Veja quais são suas principais características: 1. Rapidez na execução. 2. Emissor e receptor precisam conhecer a chave secreta (esse é o maior pro- blema das cifras simétricas), e a distribuição da chave secreta para os usuá- rios deve ser feita de modo seguro. 3. Utiliza-se um mesmo algoritmo para vários receptores, visto que apenas a chave é trocada. 4. Gerenciamento complexo das chaves, haja vista que há necessidade de mui- tas chaves diferentes. Por exemplo, Maria necessitaria ter três chaves dife- rentes para se comunicar com Ana, José e Helena. 5. A quantidade máxima de chaves possíveis é definida com 2 elevado ao nú- mero de bits da chave. Por exemplo, se a chave for formada por 4 bits, tería- mos um máximo de 16 chaves, correspondente a 2 elevado a 4. 7 As principais vantagens são: • Hardware de baixo custo. • Facilidade de uso e implementação. • Rapidez e uso geral. E as principais desvantagens são: • Distribuição e armazenamento das chaves. • Problema da troca inicial de chave. • Não garante autenticidade ou não repúdio (não permite a utilização de assi- natura ou certificação digital). Cifras simétricas de bloco A mensagem é separada em blocos de tamanho definido (tipicamente 64 ou 128 bits) e o algoritmo é aplicado em cada bloco, resultando em um bloco de saída de igual tamanho. São seus principais exemplos os padrões: • Data Encryption Standard (DES) e suas variações. • Advanced Encryption Standard (AES). As cifras simétricas de bloco são amplamente adotadas na indústria e no setor bancário até hoje. Cifras simétricas de fluxo O algoritmo é aplicado bit a bit (ou byte a byte). Usam-se geradores de números pseudoaleatórios e precisam ser rápidas e simples. É uma técnica utilizada quando não se sabe quantos bits serão transmitidos, como nos casos das redes wi-fi. Criptogra ia assimétrica (ou criptografia de chave pública) Na criptografia assimétrica, são usadas chaves distintas para os processos de cifragem e decifragem, sendo uma chave pública (que deve ser divulgada) e a outra privada (que deve ser mantida em sigilo). Fundamentada na Teoria dos Números, 8 representa uma mudança radical (e revolucionária) em relação às cifras clássicas e simétricas. Dessa forma, dados cifrados com a chave pública somente podem ser decifrados utilizando a chave correspondente. Na outra mão, dados cifrados com a chave privada precisam da chave pública correspondente para serem decifrados. Não há necessidade de troca de chaves entre as partes antes de iniciar uma comunicação. A figura a seguir representa o funcionamento conceitual do algoritmo inventado em 1976 por Whitfield Diffie e Martin Hellman, com contribuições de Ralph Merkle, que se tornou referência para a criptografia assimétrica. Utilizando uma analogia com cores, os autores demonstraram ser possível estabelecer uma chave secreta que apenas os participantes legítimos da comunicação (Alice e Bob) conheçam, para viabilizar a troca de informações secretas dentro de um canal público, sem que os participantes tenham conhecimento prévio de qualquer chave secreta. As chaves privadasestão indicadas pelas cores individuais secretas (2 e 5) e a chave pública resultante (6) é a chave comum que viabilizará a comunicação. Troca de chaves Diffie-Hellman-Merkle. Fonte: Elaborada pelo autor (2019) 1. Uma cor em comum qualquer é compartilhada entre Alice e Bob, sem neces- sidade de sigilo. 2. Alice e Bob definem uma cor secreta individual que não será compartilhada nem mesmo entre eles. 9 3. Alice e Bob misturam sua cor secreta com a cor comum negociada por eles no passo 1. 4. Agora, Alice e Bob trocam suas misturas. 5. Agora, Alice e Bob adicionam suas cores secretas às misturas primárias que receberam do outro. 6. Finalmente, Alice e Bob possuem misturas secundárias idênticas. Ela servirá de chave comum para encriptar e decriptar suas mensagens de maneira se- gura. Repare que na figura utilizou-se cores para representar as chaves, visando facilitar a compreensão do modelo. Na prática, as chaves são sequências de bits que se misturam à informação para torná- la ininteligível. Atenção Apesar de resolver o problema da distribuição de chaves e de prover confidencialidade e autenticidade (assinatura digital), a criptografia assimétrica não foi capaz de substituir completamente a criptografia simétrica, pois os algoritmos necessários para a utilização da criptografia assimétrica são cerca de 60 a 70 vezes mais lentos do que os para criptografia simétrica, incorrendo em problemas com desempenho e consumo de processamento. Nakamura e Geus (2007, p. 304) dizem que “[...] isso faz com que os dois tipos de algoritmos (simétrico e assimétrico) sejam normalmente utilizados em conjunto, aproveitando-se as melhores características de cada um”. Ainda segundo Nakamura e Geus (2007, p. 304), é comum a utilização dos “[...] algoritmos de chave pública para autenticação, certificação e estabelecimento da comunicação segura”. Já a partir desse ponto, continuam eles, [...] uma vez que o canal seguro esteja estabelecido, uma chave secreta pode ser gerada e trocada para a utilização da criptografia de chave simétrica, que é mais rápida e usada para o sigilo das mensagens. Esse modelo misto minimiza os pontos fracos de cada abordagem de criptografia e viabiliza a comunicação segura. Nakamura e Geus (2007, p. 305) relatam que “[...] o SSL funciona exatamente dessa maneira, com algoritmos como o RSA formando o canal seguro e o RC4 sendo usado para o sigilo das informações”. 10 Fechamento Chegamos ao final do estudo sobre categorias de algoritmos de criptografia. Pudemos compreender a divisão da criptologia, e dessa divisão vimos que a criptografia clássica trata de técnicas de cifras computacionais, que se utilizam das técnicas de transposição, do retângulo e da cifragem por substituição. Em um segundo momento, vimos os tipos de algoritmos criptográficos, como a criptografia simétrica e a assimétrica, seu funcionamento, suas vantagens e desvantagens. 11 Referências ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS (ABNT). NBR ISO/IEC 17799: Tecnologia da informação – Técnicas de segurança – Código de prática para a gestão da segurança da informação. Rio de Janeiro, 2005. CHESWICK, W. R.; BELLOVIN, S. M.; RUBIN, A. D. Firewalls and Internet Security. 2. ed. Boston: Pearson Education Inc., 2003 INSTITUTO NACIONAL DE TECNOLOGIA DA INFORMAÇÃO. Confira os números de Fevereiro da ICP-Brasil. Instituto Nacional de Tecnologia da Informação, Brasília, 26 abr. 2018. Disponível em: https://www.iti.gov.br/noticias/indice-de-noticias/2315- confira-os-numeros-de-fevereiro-da-icp-brasil. Acesso em: 29 maio 2019. KARGER, P. A.; SCHELL, R. R. Thirty years later: Lessons from the Multics security evaluation. Annual Computer Security Applications Conference, 2002. NAKAMURA, E. T.; GEUS, P. L. de. Segurança de redes em ambientes cooperativos. São Paulo: Novatec, 2007. SCAMBRAY, J.; McCLURE, S.; KURTZ, G. Hackers Expostos: Segredos e Soluções para a Segurança de Redes. 4. ed. Rio de Janeiro: Campus, 2003.
Compartilhar