História da Criptografia

A criptografia pode ser definida como o método pelo qual a informação é convertida em um código secreto que tem como objetivo ocultar o verdadeiro significado da informação. Sua origem remonta a cerca de 100 a.C. e, atualmente o uso da criptografia é essencial para garantir a proteção das comunicações, informações e de diversas outras tecnologias, sistemas, serviços e recursos utilizados na rede mundial de computadores – Internet, para garantir a segurança da informação e a segurança cibernética.

Na tecnologia da informação os dados não criptografados são conhecidos como texto simples e os dados criptografados são denominados de texto cifrado. As fórmulas utilizadas para codificar e decodificar um dado ou informação são conhecidas como algoritmos de criptografia ou cifras.

Na história, a “Cifra de César” é um dos primeiros registros documentados sobre a utilização da criptografia para codificar e proteger mensagens. No qual o imperador romano Júlio César utilizava a criptografia para enviar mensagens secretas aos seus generais que estavam em campo, expandindo o império romano, dando uma grande vantagem estratégica.

O método utilizado na Cifra de César, consiste no deslocamento de cada letra da mensagem em três letras para a direita, transformando o texto simples em texto cifrado. Assim, caso a mensagem fosse interceptada pelo inimigo, ele por sua vez, não conseguiria compreender a mensagem. Para entender melhor o método de cifragem, por exemplo: cada letra “A” contida no texto original enviado por Júlio César, é substituída por três letras a direta, no caso a letra “A” passa a ser a letra “D”, a letra “B” passa a ser a letra “E”, a letra “C” se transforma na letra “F” e, assim por diante. Esse tipo de cifra, também, pode ser denominado de “cifra de deslocamento”.

Observa-se que o algoritmo utilizado por Júlio César para cifrar as mensagens era o “3” (três). Atualmente o uso moderno da “Cifra de César” é um código denominado de “ROT13” que se trata da abreviação de “rotate by 13 places” ou “deslocamento para 13 espaços”, sendo utilizado em diversos fóruns online para codificar informações como spoiler de filmes, jogos ou qualquer outro tipo de mensagem.

Outro exemplo histórico do uso da criptografia deu-se no século XVI, a “Cifra de Vigenère”, que utilizava uma chave secreta para codificar a mensagem. Neste modelo, o criador do código escolhe de forma aleatória qualquer palavra ou combinação de letras para ser utilizado como “chave” de criptografia.

Ambos os métodos de criptografia “Cifra de César” e “Cifra de Vigenère” são exemplos pioneiros da utilização da criptografia como método para “ocultar” o verdadeiro significado de uma informação ou mensagem e, foram considerados os primeiros métodos de proteger dados e informações durante o processo de comunicação, tornando assim a comunicação entre 2 ou mais partes confidenciais.

Durante a II Guerra Mundial a criptografia exerceu um papel estratégico. Um dos fatos mais relevantes e famosos do uso da criptografia como arma de guerra, foi a máquina Enigma desenvolvida por Arthur Scherbius em 1918.

A Enigma usava um conjunto de mecanismos rotores que embaralhavam o alfabeto para transformar de maneira rápida e fácil qualquer texto simples em um texto cifrado e/ou vice-versa, tornando-se uma tecnologia essencial para o comando central do exército alemão nazista, realizasse a troca de mensagens codificadas entre seus generais e tropas no front durante toda a II Guerra Mundial.

Além da máquina Enigma, houve outros fatos que marcaram a história, tais como: a criação do DES – Data Encryption Standard, um algoritmo de criptografia criado pelo governo americano que utilizava uma “chave simétrica” para realizar a codificação e decodificação de dados, informações e mensagens e, o desenvolvimento da criptografia assimétrica.

Até o início da década de 70 o uso das tecnologias de criptografia era exclusivo e restrito ao meio militar. Porém, em 1971 surgiram publicações no meio científico sobre o uso dos primeiros algoritmos de criptografia voltados para o setor privado. Tais publicações despertaram o interesse de empresas que desejam manter sua propriedade intelectual e suas informações protegidas e seguras.

Entre as primeiras publicações voltadas para o setor privado, um conjunto de algoritmos de criptografia desenvolvido pela IBM, batizado de “Lúcifer” ganhou destaque, tornando-se um padrão de criptografia de dados utilizado em várias empresas norte-americanas após algumas modificações realizadas pela Agência de Segurança Nacional – NSA do governo norte-americano que posteriormente ficou conhecido como o padrão de criptografia “DES”.

É importante ressaltar que até o início do século XX todos os modelos de criptografia conhecidos utilizavam algoritmos de criptografia simétricos. Neste modelo, o emissor e o receptor da mensagem usavam uma única “chave privada” e “idêntica” para codificar e decodificar a informação. Isto significa que ambas as partes precisavam ter em “mãos” essa chave para criptografar e descriptografar os dados ou informações contidas na mensagem.

Neste contexto a empresa ou usuário que utilizasse o modelo de criptografia simétrico, era obrigado a realizar uma configuração de um canal seguro para transmitir a chave de criptografia antes mesmo de realizar a própria criptografia da mensagem, o que tornava o uso da criptografia alto, em termos de investimentos, custos operacionais com comunicação e recursos, o que fez surgir um novo formato a criptografia assimétrica.

Criptografia Simétrica e Assimétrica

Como comentado anteriormente, a criptografia simétrica é um método de codificação e decodificação de dados e informações que tem como base central a utilização de um algoritmo de chaves privadas. Ou seja, a utilização de uma única “chave secreta” por ambas as partes para codificar ou decodificar o dado ou a informação. Basicamente, a chave secreta é usada para transformar um texto simples para um texto cifrado.

A criptografia simétrica é uma das técnicas de cifragem mais utilizadas, sendo empregada na proteção de dados e informações confidenciais. Seu funcionamento consiste em uma cifra de fluxo ou cifra de blocos para criptografar e descriptografar dados. Na cifra de fluxo, cada um dos bytes é cifrado de forma individual, ou seja, um a um. Já na cifra de blocos, há a conversão de uma unidade inteira de bytes ou blocos de bytes de texto simples para texto cifrado, usando um comprimento de chave predeterminado que pode estar entre 128, 192 ou 256 bits.

É importante lembrar que tanto o remetente quanto o destinatário precisam conhecer a “chave secreta” para codificar e decodificar os dados e informações na criptografia simétrica. Caso contrário não conseguirão! Por esse motivo deve-se haver um cuidado maior com a proteção dessa chave.

Um exemplo simplificado do uso da criptografia simétrica pode ser entendido dessa forma: João é o remetente de um documento em PDF confidencial e, deseja enviar a Maria que é a destinatária desse documento confidencial. Neste caso, João utilizaria a chave secreta que possui para criptografar o arquivo PDF e enviá-lo para Maria. Para a Maria conseguir ler esse documento, precisará ter em mãos a mesma chave secreta que o João possui e utilizou para cifrar o documento, caso contrário não conseguirá! Neste contexto, João deverá compartilhar a mesma chave secreta com Maria. Este processo de criptografia pode ser realizado manualmente ou automaticamente entre ambas as partes (João e Maria).