Como funciona a criptografia AES / Rijndael em geral?
Esta página tem um divertido Um Guia Stick Figure para o Advanced Encryption Standard ( AES) que parece fácil de entender, embora pareça ser mais de 50 imagens, por exemplo, estas duas:
e
É demais duplicar tudo aqui, mas se você tiver uma imagem all-in-one, é essa:
Ou há uma explicação mais compacta no link
O método de criptografia Rijndael baseia-se na substituição, alteração e executando operações xor em bytes. O método é assim:
- A partir da chave de 128 bits, o Rijndael gera 10 chaves de 128 bits cada.
- Essas chaves são colocadas em matrizes 4x4.
- O texto simples também é dividido em matrizes 4x4 (128 bits cada).
- Cada um dos itens de texto simples de 128 bits é processado em 10 rodadas (10 rodadas para chaves de 128 bits, 12 para 192, 14 para 256).
- Após a 10ª rodada, o código é gerado.
- Cada byte único é substituído em uma caixa S e substituído pelo recíproco em GF (2 8).
- Em seguida, uma matriz de módulo-2 bit-wise é aplicada, seguida por uma operação XOR com 63.
- As linhas das matrizes são classificadas ciclicamente.
- As colunas da multiplicação da matriz são trocadas em GF (2 8).
- As subchaves de cada rodada são submetidas a uma operação XOR.
O nível de segurança deste método de criptografia aumenta se o Rijndael for realizada várias vezes com subchaves diferentes.
Como funciona a criptografia completa de disco do Ubuntu?
Eu acredito que ele funciona criptografando uma partição com LUKS (configurações padrão com AES) e, em seguida, coloca alguns volumes nela com LVM (como /
, swap) e os descriptografa e monta na inicialização depois de inserir uma frase secreta. E há uma partição de inicialização regular (não criptografada) que é inicializada o suficiente para solicitar a frase secreta.
the_simple_computer Guide to Full Disk Encryption com Ubuntu (Atualizado em 28 de junho de 2015) diz que é sobre como a criptografia do instalador padrão funciona e menciona que a inicialização dupla não funcionaria (pelo menos não pronta para uso), a unidade deve usar o MBR para que " se o computador tiver UEFI, a distro será instalada no modo BIOS legado, então você não pode usar Boot Seguro "e" também oferece um tamanho de swap igual ao da RAM do seu sistema (geralmente desnecessário) e você não tem escolha sobre o tipo de criptografia usado. "
Qual a velocidade da criptografia?
Se você executar cryptsetup benchmark
, ele executará os testes e informará a rapidez com que a criptografia é executada, observe as linhas aes-xts padrão (atualmente):
# Algorithm | Key | Encryption | Decryption
aes-xts 256b 150.0 MiB/s 145.0 MiB/s
Uma velocidade média de leitura do disco rígido pode ser de 80-160 MB / s, então você não será muito mais do que uma leitura normal, e é possível que os setores recém-lidos já tenham sido descriptografados enquanto você ainda estiver esperando o disco rígido para ler mais.
Um SSD poderia ser mais rápido, talvez 200-550MB / s, então você pode perceber isso. Mas, leituras aleatórias podem ser mais lentas, e eu li que as velocidades SSD podem diminuir após o uso (talvez quando a unidade enche completamente e tem que começar a "apagar" os setores?)
Como o computador pode criptografar / descriptografar completamente todo o disco em apenas alguns segundos (não demora mais para inicializar ou desligar)?
Não precisa descriptografar tudo primeiro. A criptografia (LUKS) funciona em blocos de dados , pode descriptografar aleatoriamente qualquer bloco e age como uma camada entre os dados criptografados da unidade e o que o sistema de arquivos vê.
Quando o sistema de arquivos deseja ver qualquer bloco de dados, o LUKS descriptografa esse bloco primeiro e depois fornece os dados descriptografados para o sistema de arquivos. Você primeiro espera que a unidade leia o bloco de dados (assim como sem usar criptografia), e só tem um atraso extra para a descriptografia desse bloco único (ou alguns blocos) de dados - e se a decodificação é mais rápida do que o drive pode ler, a descriptografia poderia ser concluída antes que o drive leia o próximo bloco de dados.
Então, assim como um sistema de arquivos regular não precisa ler a unidade inteira para ler um arquivo, quando a criptografia é adicionada, ele não precisa ler a unidade inteira também, e isso não torna as coisas muito muito mais lento.
Os dados no disco rígido são sempre criptografados , então não há nada para fazer no desligamento, a não ser esquecer a chave.
- Há mais detalhes sobre a Teoria da criptografia de disco na Wikipedia