O Advanced Encryption Standard (anteriormente conhecido como Rijndael) é uma das formas de criptografar informações. É tão seguro que nem mesmo a força bruta poderia quebrá-lo. Este padrão de criptografia avançado é usado pela Agência de Segurança Nacional (NSA) juntamente com vários setores, incluindo serviços bancários on-line. Então, o que é criptografia AES e como funciona? Vamos descobrir!
Breve resumo: O que é criptografia AES-256? A criptografia AES-256 é uma forma de manter mensagens secretas ou informações protegidas de pessoas que não deveriam poder vê-las. A criptografia AES-256 é como ter uma trava super forte em sua caixa que só pode ser aberta por uma chave muito específica. A fechadura é tão forte que seria muito difícil alguém quebrá-la e abrir a caixa sem a chave certa.
O que é criptografia AES?
AES é o padrão de criptografia de dados de hoje. É incomparável na quantidade de segurança e proteção que oferece.
Vamos detalhar o que é. AES é um
- Criptografia de chave simétrica
- Cifra de bloco
Encriptação simétrica vs. assimétrica
AES é um simétrico tipo de criptografia.
“Simétrico” significa que usa o mesma chave para criptografar e descriptografar informações Além disso, ambos da remetente e receptor dos dados precisam de uma cópia para descriptografar a cifra.
Por outro lado, assimétrico os principais sistemas usam um chave diferente para cada dos dois processos: criptografia e descriptografia.
Oavantagem de sistemas simétricos como AES é que eles são muito mais rápido do que assimétrico uns. Isso ocorre porque os algoritmos de chave simétrica exigem menos poder de computação.
É por isso que as chaves assimétricas são mais utilizadas para transferências de arquivos externos. Chaves simétricas são melhores para criptografia interna.
O que são cifras de bloco?
Em seguida, AES é também o que o mundo da tecnologia chama de “Cifra de bloco.”
Chama-se “bloco” porque este tipo de cifra divide as informações a serem criptografadas (conhecido como texto simples) em seções chamadas de blocos.
Para ser mais específico, o AES usa um Tamanho do bloco de 128 bits.
Isso significa que os dados são divididos em um matriz quatro por quatro contendo 16 bytes. Cada byte contém oito bits.
Portanto, 16 bytes multiplicados por 8 bits resulta em um total de 128 bits em cada bloco.
Independentemente desta divisão, o o tamanho dos dados criptografados permanece o mesmo. Em outras palavras, 128 bits de texto simples geram 128 bits de texto cifrado.
O segredo do algoritmo AES
Agora segure seus chapéus porque aqui é onde fica interessante.
Joan Daemen e Vincent Rijmen tomaram a brilhante decisão de usar o Rede de permutação de substituição (SPN) algoritmo.
SPN funciona aplicando várias rodadas de expansão de chave para criptografar dados.
A chave inicial é usada para criar um série de novas chaves chamadas de “teclas redondas”.
Veremos mais sobre como essas chaves redondas são geradas posteriormente. Basta dizer que várias rodadas de modificação geram uma nova chave de rodada toda vez.
A cada rodada que passa, os dados se tornam mais e mais seguros e fica mais difícil quebrar a criptografia.
Por quê?
Porque essas rodadas de criptografia tornam o AES impenetrável! Há apenas muitas rodadas que os hackers precisam quebrar para descriptografá-lo.
Põe desta forma: Um supercomputador levaria mais anos do que a idade presumida do universo para decifrar um código AES.
Até hoje, o AES está praticamente livre de ameaças.
Os diferentes comprimentos de chave
Tem três comprimentos de chaves de criptografia AES.
Cada comprimento de chave tem um número diferente de combinações de chave possíveis:
- Comprimento da chave de 128 bits: 3.4 x 1038
- Comprimento da chave de 192 bits: 6.2 x 1057
- Comprimento da chave de 256 bits: 1.1 x 1077
Embora o comprimento da chave deste método de criptografia varie, seu tamanho de bloco - 128 bits (ou 16 bytes) - continua o mesmo.
Por que a diferença no tamanho da chave? É tudo uma questão de praticidade.
Vamos pegar um aplicativo, por exemplo. Se usar AES de 256 bits em vez de AES 128, requer mais poder de computação.
O efeito prático é requer mais energia bruta da bateria, para que seu telefone morra mais rápido.
Portanto, ao usar a criptografia AES de 256 bits é o padrão-ouro, não é viável para o uso diário.
Onde o Advanced Encryption Standard (AES) é usado?
O AES é um dos sistemas mais confiáveis do mundo. Tem sido amplamente adotado em vários setores que precisam de níveis extremamente altos de segurança.
Hoje, as bibliotecas AES foram criadas para várias linguagens de programação, incluindo C, C ++, Java, Javascript e Python.
O padrão de criptografia AES também é usado por diferentes programas de compressão de arquivos incluindo 7 Zip, WinZip e RAR, e sistemas de criptografia de disco como BitLocker e FileVault; e sistemas de arquivos como NTFS.
Você pode já ter usado no seu dia-a-dia sem perceber!
AES é uma ferramenta vital em criptografia de banco de dados e a VPN sistemas.
Se você confia nos gerenciadores de senhas para lembrar suas credenciais de login para suas várias contas, provavelmente já encontrou o AES!
Esses aplicativos de mensagens que você usa, como WhatsApp e Facebook Messenger? Sim, eles usam isso também.
Mesmo jogos de vídeo como Grand Theft Auto IV use AES para se proteger contra hackers.
Um conjunto de instruções AES é integrado em todos os processadores Intel e AMD, para que seu PC ou laptop já o tenha integrado sem que você precise fazer nada.
E, claro, não vamos esquecer os aplicativos que você banco criado para permitir que você gerencie suas finanças online.
Depois de descobrir como funciona a criptografia AES, você respire muito mais fácil sabendo que suas informações estão em boas mãos!
História da criptografia AES
AES começou como uma resposta do governo dos EUA necessidades.
Em 1977, as agências federais dependiam do DPadrão de criptografia de ata (DES) como seu algoritmo de criptografia principal.
No entanto, na década de 1990, o DES não era mais seguro o suficiente porque só podia ser quebrado 22 horas.
Então, o governo anunciou um competição pública para encontrar um novo sistema que durou mais de 5 anos.
O benefício deste processo aberto era que cada um dos algoritmos de criptografia enviados poderia ser submetido à segurança pública. Isso significava que o governo poderia ser 100% certo que seu sistema de vitória não tinha backdoor.
Além disso, porque várias mentes e olhos estavam envolvidos, o governo maximizou suas chances de identificação e correção de falhas.
Finalmente, o A cifra de Rijndael (também conhecida como Padrão Avançado de Criptografia de hoje) foi coroada a campeã.
Rijndael foi nomeado após os dois criptógrafos belgas que o criaram, Vincent Rijmen e Joan Daemen.
No 2002, foi renomeado Padrão de Criptografia Avançada e publicado pelo Instituto Nacional de Padrões e Tecnologia dos Estados Unidos (NIST).
A NSA aprovou o algoritmo AES por sua capacidade e segurança para lidar com informações ultrassecretas. ISTO colocou o AES no mapa.
Desde então, AES se tornou o iPadrão da indústria para criptografia.
Sua natureza aberta significa que o software AES pode ser usado para uso público e privado, comercial e não comercial aplicações.
Como funciona o AES 256?
Criptografia e descriptografia são os blocos de construção fundamentais da segurança de dados moderna.
A criptografia envolve a transformação de texto simples em texto cifrado, enquanto a descriptografia é o processo inverso de transformar o texto cifrado de volta em texto simples.
Para conseguir isso, os algoritmos de criptografia usam uma combinação de etapas de processamento, incluindo operações de substituição e permutação, que operam em uma matriz de estado.
A matriz de estado é modificada por uma série de versões redondas, com o número de rodadas determinado pelo tamanho da chave de criptografia e pelo tamanho do bloco de bits do algoritmo.
A chave de criptografia e a chave de descriptografia são necessárias para transformar os dados, com a chave de criptografia usada para gerar o texto cifrado e a chave de descriptografia usada para gerar o texto simples original.
O padrão de criptografia avançada (AES) usa um processo de expansão para gerar uma programação de chaves e uma estrutura de rede que inclui operações de substituição e permutação de bytes para obter proteção de dados.
Até agora, sabemos que esses algoritmos de criptografia embaralham as informações que estão protegendo e as transformam em uma bagunça aleatória.
Quero dizer, o princípio básico de toda criptografia is cada unidade de dados será substituída por uma diferente, dependendo da chave de segurança.
Mas o que exatamente torna a criptografia AES segura o suficiente para ser considerada o padrão da indústria?
Uma visão geral do processo
Na era digital de hoje, a segurança da Internet e a segurança dos dados tornaram-se uma prioridade para indivíduos e organizações.
Os governos de todo o mundo também colocam uma forte ênfase na proteção de suas informações confidenciais e usam várias medidas de segurança para fazer isso.
Uma dessas medidas é o uso de técnicas avançadas de criptografia para proteger os dados do usuário.
A criptografia ajuda a proteger os dados em repouso e em trânsito, convertendo-os em texto cifrado ilegível que só pode ser descriptografado com uma chave.
Ao usar criptografia para proteger dados, governos e outras organizações podem garantir que informações confidenciais permaneçam seguras e confidenciais, mesmo que caiam em mãos erradas.
A força da criptografia depende de vários fatores, como o comprimento da chave de cifra, o número de rodadas e a segurança da cifra.
Sejam dados de byte ou dados de bit, a criptografia desempenha um papel crucial na manutenção da segurança e confidencialidade dos dados.
O algoritmo de criptografia AES passa por rodadas múltiplas de criptografia. Ele pode até passar por 9, 11 ou 13 rodadas disso.
Cada rodada envolve as mesmas etapas abaixo.
- Divida os dados em blocos.
- Expansão de chave.
- Adicione a chave redonda.
- Substituir / substituir os bytes.
- Mude as linhas.
- Misture as colunas.
- Adicione uma chave redonda novamente.
- Faça tudo de novo.
Após a última rodada, o algoritmo passará por uma rodada adicional. Neste conjunto, o algoritmo fará as etapas 1 a 7 exceto passo 6.
Ele altera o 6º passo porque não faria muito neste ponto. Lembre-se que já passou por esse processo várias vezes.
Então, uma repetição da etapa 6 seria redundante. A quantidade de poder de processamento necessária para misturar as colunas novamente não vale a pena, pois não alteram mais significativamente os dados.
Nesse ponto, os dados já terão passado pelas seguintes rodadas:
- Chave de 128 bits: 10 rodadas
- Chave de 192 bits: 12 rodadas
- Chave de 256 bits: 14 rodadas
A saída?
para random conjunto de personagens confusos isso não fará sentido para quem não possui a chave AES.
Um olhar aprofundado
Agora você tem uma ideia de como essa cifra de bloco simétrico é feita. Vamos entrar em mais detalhes.
Primeiro, esses algoritmos de criptografia adicionam a chave inicial ao bloco usando um Cifra XOR (“exclusiva ou”).
Esta cifra é um operação embutida em hardware do processador.
Então, cada byte de dados é substituído com outro.
Esta CRUCIAL passo seguirá uma tabela predeterminada chamada Agenda chave de Rijndael para determinar como cada substituição é feita.
Agora, você tem um conjunto de novas chaves redondas de 128 bits que já são uma confusão de letras confusas.
Em terceiro lugar, é hora de passar pelo primeira rodada de criptografia AES. O algoritmo adicionará a chave inicial às novas chaves redondas.
Agora você tem o seu segundo cifra aleatória.
Quarto, o algoritmo substitui cada byte com um código de acordo com a Rijndael S-box.
Agora é hora de mudar as linhas da matriz 4 × 4.
- A primeira linha permanece onde está.
- A segunda linha é movida um espaço para a esquerda.
- A terceira linha é deslocada em dois espaços.
- Finalmente, o quarto é movido três espaços.
Sexto, cada coluna será multiplicada por uma matriz predefinida, que novamente lhe dará um novo bloco de código.
Não entraremos em detalhes porque este é um processo extremamente complicado que requer muita matemática avançada.
Apenas saiba que as colunas da cifra são misturadas e combinadas para gerar outro bloco.
Finalmente, ele adicionará a chave redonda ao bloco (muito parecido com a chave inicial na terceira etapa).
Em seguida, enxágue e repita com base no número de voltas que você precisa fazer.
O processo continua várias vezes, fornecendo a você um texto cifrado que é radicalmente diferente do texto simples.
Para decifrar, faça tudo ao contrário!
Cada estágio do algoritmo de criptografia AES tem uma função importante.
Por que todas as etapas?
O uso de uma chave diferente para cada rodada fornece um resultado muito mais complexo, mantendo seus dados protegidos contra qualquer ataque de força bruta, independentemente do tamanho da chave que você está usando.
O processo de substituição de bytes modifica os dados de forma não linear. Isso esconde a relação entre o original e criptografado conteúdo.
Mudar as linhas e misturar as colunas irá difundir os dados. O deslocamento difunde os dados horizontalmente, enquanto a mixagem o faz verticalmente.
Ao transpor bytes, você obterá uma criptografia muito mais complicada.
O resultado é um forma incrivelmente sofisticada de criptografia que não pode ser hackeado a menos que você tenha a chave secreta.
A criptografia AES é segura?
Se nossa descrição do processo não for suficiente para fazer você acreditar no poder da chave AES, vamos nos aprofundar em como o AES é seguro.
Como dissemos no início, o Instituto Nacional de Padrões e Tecnologia (NIST) selecionou três tipos de AES: Chaves AES de 128 bits, 192 bits e 256 bits.
Cada tipo ainda usa os mesmos blocos de 128 bits, mas eles diferem em 2 coisas.
Comprimento da Chave
O primeira diferença reside no comprimento de cada uma das chaves de bits.
Como o mais longo, AES A criptografia de 256 bits fornece o mais forte nível de criptografia.
Isso ocorre porque uma criptografia AES de 256 bits exigiria que um hacker tentasse 2256 combinações diferentes para garantir que o correto seja incluído.
Precisamos enfatizar que este número é astronomicamente grande. É um total de 78 dígitos!
Se você ainda não entende o quão grande é, vamos colocar desta forma. É tão grande que é exponencialmente maior do que o número de átomos no universo observável.
Obviamente, no interesse de proteger a segurança nacional e outros dados, o governo dos EUA requer um processo de criptografia de 128 ou 256 bits para dados sensíveis.
AES-256, que tem um comprimento de chave de 256 bits, suporta o maior tamanho de bit e é praticamente inquebrável por força bruta com base nos padrões de poder de computação atuais, tornando-o, até hoje, o padrão de criptografia mais forte que existe.
Tamanho da chave | Possíveis combinações |
Pouco 1 | 2 |
2 pedaços | 4 |
4 pedaços | 16 |
8 pedaços | 256 |
16 pedaços | 65536 |
32 pedaços | 4.2 x 109 |
56 bits (DES) | 7.2 x 1016 |
64 pedaços | 1.8 x 1019 |
128 bits (AES) | 3.4 x 1038 |
192 bits (AES) | 6.2 x 1057 |
256 bits (AES) | 1.1 x 1077 |
Rodadas de criptografia
O segunda diferença entre essas três variedades de AES está no número de rodadas de criptografia pelas quais passa.
A criptografia AES de 128 bits usa Rodadas 10, AES 192 usa Rodadas 12, e AES 256 usa Rodadas 14.
Como você provavelmente já adivinhou, quanto mais rodadas você usa, mais complexa a criptografia se torna. Isso é principalmente o que torna o AES 256 a implementação AES mais segura.
The Catch
Uma chave mais longa e mais rodadas exigirão maior desempenho e mais recursos / potência.
AES 256 usa 40% mais recursos do sistema do que AES 192.
É por isso que o padrão de criptografia avançada de 256 bits é melhor para ambientes de alta sensibilidade, como o governo quando lida com dados confidenciais.
Estes são os casos em que a segurança é mais importante do que velocidade ou potência.
Os hackers podem quebrar o AES 256?
O velho A chave DES de 56 bits pode ser quebrada em menos de um dia. Mas para AES? Levaria bilhões de anos para quebrar usando a tecnologia de computação que temos hoje.
Os hackers seriam tolos até mesmo se tentassem esse tipo de ataque.
Dito isso, temos que admitir nenhum sistema de criptografia é totalmente seguro.
Os pesquisadores que investigaram o AES descobriram algumas maneiras possíveis de entrar nele.
Ameaça nº 1: Ataques de chave relacionada
Em 2009, eles descobriram um possível ataque de chave relacionada. Em vez de força bruta, esses ataques irão direcionar a própria chave de criptografia.
Esse tipo de criptoanálise tentará decifrar uma cifra observando como ela opera usando chaves diferentes.
Felizmente, o ataque de chave relacionada é apenas uma ameaça para sistemas AES. A única maneira de funcionar é se o hacker souber (ou suspeitar) da relação entre dois conjuntos de chaves.
Fique tranquilo, os criptógrafos foram rápidos em melhorar a complexidade da programação da chave AES após esses ataques para evitá-los.
Ameaça nº 2: ataque distintivo de chave conhecida
Ao contrário da força bruta, este ataque usou um chave conhecida para decifrar a estrutura da criptografia.
No entanto, o hack tinha como alvo apenas uma versão de oito rodadas do AES 128, não a versão padrão de 10 rodadas. No entanto, esta não é uma grande ameaça.
Ameaça nº 3: ataques de canal lateral
Este é o principal risco que a AES enfrenta. Funciona tentando pegue qualquer informação o sistema está vazando.
Hackers podem ouvir sons, sinais eletromagnéticos, informações de tempo ou consumo de energia para tentar descobrir como funcionam os algoritmos de segurança.
A melhor maneira de evitar ataques de canal lateral é por remover vazamentos de informações ou mascarar os dados vazados (gerando sinais ou sons eletromagnéticos extras).
Ameaça nº 4: revelando a chave
Isso é fácil de provar fazendo o seguinte:
- Senhas fortes
- Autenticação multifatorial
- firewalls
- Software antivírus
Além disso, educar seus funcionários contra engenharia social e ataques de phishing.
As vantagens da criptografia AES
Quando se trata de criptografia, o gerenciamento de chaves é crucial. O AES, por exemplo, usa tamanhos de chave diferentes, sendo os mais usados 128, 192 e 256 bits.
O processo de seleção de chave envolve a geração de uma chave segura com base em um conjunto de regras, como aleatoriedade e imprevisibilidade.
Além disso, as chaves de criptografia, também conhecidas como chaves de cifra, são usadas para criptografar e descriptografar dados. O processo de criptografia avançada também inclui uma chave redonda, que é gerada a partir da chave original durante o processo de criptografia.
No entanto, um ataque de recuperação de chave ou um ataque de canal lateral pode comprometer a segurança do sistema de criptografia.
É por isso que os sistemas de segurança costumam usar criptografia de nível militar e autenticação multifator para garantir o mais alto nível de proteção.
O processo de criptografia do AES é relativamente fácil de entender. Isso permite implementação fácil, bem como realmente tempos rápidos de criptografia e descriptografia.
Além disso, AES requer menos memória do que outros tipos de criptografia (como DES).
Finalmente, sempre que você precisar de uma camada extra de segurança, você pode ecombinar facilmente AES com vários protocolos de segurança como WPA2 ou até mesmo outros tipos de criptografia como SSL.
AES x ChaCha20
O AES tem algumas limitações que outros tipos de criptografia tentaram preencher.
Embora o AES seja fantástico para a maioria dos computadores modernos, é não embutido em nossos telefones ou tablets.
É por isso que o AES é normalmente implementado por meio de software (em vez de hardware) em dispositivos móveis.
No entanto, a implementação do software AES ocupa muita bateria.
ChaCha20 também usa chaves de 256 bits. Foi desenvolvido por vários engenheiros de Google para preencher essa lacuna.
Vantagens do ChaCha20:
- Mais amigável para CPU
- Mais fácil de implementar
- Requer menos energia
- Mais seguro contra ataques de temporização de cache
- Também é uma chave de 256 bits
AES x Twofish
Twofish foi um dos finalistas no concurso que o governo realizou para substituir DEs.
Em vez dos blocos, Twofish usa uma rede Feistel. Isso significa que é uma versão semelhante, mas mais complexa, de padrões mais antigos, como o DES.
Até hoje, Twofish permanece ininterrupto. É por isso que muitos dizem que é mais seguro que o AES, considerando as ameaças potenciais que mencionamos anteriormente.
A principal diferença é que o AES varia o número de rodadas de criptografia dependendo do comprimento da chave, enquanto o Twofish o mantém em um constante de 16 rodadas.
No entanto, Twofish requer mais memória e poder em comparação com o AES, que é sua maior queda quando se trata de usar dispositivos de computação móveis ou de baixo custo.
Perguntas frequentes
Conclusão
Se a criptografia AES de 256 bits for boa o suficiente para a Agência de Segurança Nacional, estamos mais do que dispostos a confiar em sua segurança.
Apesar das muitas tecnologias disponíveis hoje, o AES permanece no topo do pacote. É bom o suficiente para qualquer empresa usar para suas informações ultrassecretas.
Referências
- https://www.atpinc.com/blog/what-is-aes-256-encryption
- https://www.samiam.org/key-schedule.html
- https://www.youtube.com/watch?v=vFXgbEL7DhI
- https://digitalguardian.com/blog/social-engineering-attacks-common-techniques-how-prevent-attack
- https://www.consumer.ftc.gov/articles/how-recognize-and-avoid-phishing-scams