Algoritmo de chave simétrica

O algoritmo de criptografia simétrica utiliza a mesma chave para encriptar e desincriptar dados enviados através da internet.

Categoria de Tecnologia

Postado em 29 maio 2022

Atualizado em 29 maio 2022

Palavras-chave: security,segurança,chave,criptografia,criptografação,encriptar,encriptação,desincriptar

Visualizações: 1873



Antes mesmo da internet existir, a criptografia de informação já era realizada. Quando o remetente queria manter o segredo da informação enviada ao seu destinatário por carta ou algum outro meio, este mesmo utilizava técnicas de criptografia.

A grande vantagem da criptografia é a proteção de informações preciosas. É muito difícil desencriptar uma informação para quem não tem conhecimento da técnica utilizada. Portanto, mesmo quando alguma mensagem era interceptada no caminho, não havia muita preocupação em relação à essa exposição.

Após o aparecimento da internet, tornou-se necessário criptografar dados que navegam de um computador para o outro. Em 1977, a criptografia simétrica era padronizada pelo governo dos Estados Unidos.

O que é a criptografia simétrica?

A criptografia simétrica é a utilização de um algoritmo para criptografar dados usando uma chave gerada aleatoriamente. Esse algoritmo utiliza a mesma chave para encriptar e desincriptar mensagens, trazendo vantangens como velocidade nesses processos.

criptografia simetrica

No envio de dados, o emissor irá enviar a chave e os pacotes de dados encriptados. O destinatário irá utilizar a chave enviada pelo remetente para a desincriptação desses dados.

Dados e chave
PC1
PC2

Algoritmos simétricos bastante conhecidos são o DES e o AES.

DES

DES é a abreviação de “Data Encryption Standart”. Em português, padrão de criptografia de dados.

Essa técnica de encriptação foi padronizada pelo governo do Estados Unidos em 1977.

DES utiliza uma chave de 64 bits, onde 8 bits são utilizados para a verificação de paridade, portanto sobrando apenas 56 bits para a encriptação.

O texto é divido em blocos de 64 bits. Portanto podemos afirmar que cada bloco processa 8 bytes de informação.

DES não possuia uma reputação muito boa, pois possuia boatos de que poderia vulnerável à ataques. Esses boatos só existiam na teoria pois não haviam computadores suficientemente eficientes na época para comprovar.

Até uma pequena empresa conseguir provar na prática em 1998, utilizando força bruta para descobrir a chave utilizada em uma cifragem. Essa empresa tinha como objetivo mostrar que uma chave que possui apenas 56 bits é muito curta, podendo ser vulnerável à ataques de força bruta.

São 72.057.594.037.927.936 variações que 56 bits podem gerar. Em 1998, foram necessárias 58 horas para ter sucesso nesse ataque bruto.

Com a vulnerabilidade exposta, a DES precisava ser substituída. Em 2001 a AES é publicada, sendo padronizada em 2022.

AES

AES é a abreviação de “Advanced Encryption Standard”. Em português, padrão de criptografia avançado.

Esse novo algoritmo corrige a vulnerabilidade de seu antecessor, sendo muito mais resistente à ataque brutos. O tamanho da chave pode variar entre 128, 192 e 256 bits.

Pode não parecer muito, mas o número de variações que podem ser feitas com uma chave de 256 bits pode ser assustadoramente grande.

Se tentarmos fazer as contas de quanto tempo pode demorar para realizar força bruta para encontrar uma chave de 255 bits, chegaremos no resultado de 27,337,893,038,406,611,​194,430,009,​974,922,940,​323,611,067,​429,756,962,​487,493,203 anos.

Caso a chave tenha apenas 128 bits, ainda demoraria 1 bilhão de anos para ter sucesso em um ataque de força bruta. Para termos uma idéia dessa grandeza, o universo tem apenas 14 bilhões de anos.

Ainda nos dias de hoje o AES é utilizado como técnica padrão de criptografia simétrica.

Conclusão

A criptografia simétrica utiliza a mesma chave para encriptar e desincriptar dados enviados através da internet. Por utilizar a mesma chave, a criptografia simétrica é bastante veloz nos seus processos.

Projetos práticos

Criando um jogo de pacman usando javascript e pixi.js (parte 1)

Desenvolvimento dos conceitos mais básicos do clássico pacman, como: mapa, animação, deslocamento e detector de colisões.

Usando dados fornecidos pelo TSE para simular o gráfico das eleições presidenciais de 2022

Simulação dos gráficos do segundo turno das eleições presidenciais, utilizando python e ferramentas de análise de dados, pandas e jupyter.

Criando um sistema de integração contínua (CI/CD)

Fazendo a integração contínua de Jenkins, Sonatype Nexus, Sonatype, JUnit e Gradle para automatizar processos repetitivos. Prática bastante usada em tecnologias de DevOps.

Tutorial de programação do jogo da serpente em javascript

Programando o clássico jogo da serpente usando o framework p5.js. Tutorial indicado para iniciantes da programação que querem aprender os conceitos básico da área criando jogos.

Desenvolvendo o campo de visão de um personagem em um plano 2D

Detectando objetos que entram dentro do campo de visão do personagem. Útil para servir de "gatilho" para eventos em um jogo.

Veja também

Uma das vantagens de ter um robô trabalhando para você é o aumento da produtividade

Hoje em dia não é mais necessário gastar o nosso tempo com tarefas que podem se automatizadas. Os robôs estão aqui para nos ajudar...

Estar antenado pode te salvar de cair em algum golpe

A engenharia social é a forma mais fácil de roubar os dados da vítima, principalmente aqueles que não estão antenados..

Blockchain Parte1

Blockchain pode ser interpretado como uma caderneta bancária, nela é registrado o histórico de todas as transações realizadas na nossa conta bancária.

Firewall

O firewall atua como barreira entre as redes interna e externa, bloqueando tráfego de pacotes de dados considerados suspeitos ou inseguros.

DMZ Zona desmilitarizada

A zona desmilitarizada é uma área isolada que fica situada entre a rede pública e interna com o objetivo de sofrer ataques para proteger a rede interna.

Assinatura Digital

A assinatura digital é utilizada para provar a legitimidade dos dados enviados, usando técnicas de hash e algoritmo de chave assimétrica.