Problema com o algoritmo de criptografia 'aes256'

0

Estou seguindo o este método para criptografar o disco rígido externo, mas há um problema com o alias do algoritmo aes

sudo modprobe dm-crypt
sudo modprobe sha256
sudo modprobe aes

Recebo erro após o comando aes

modprobe: ERROR: could not insert 'padlock_aes': No such device

Eu tentei a solução alternativa mencionada no link, mas não há aliases no meu diretório /etc/modprobe.d/

user@user:/home/$ cd /etc/modprobe.d/

user@user:/etc/modprobe.d$ ls | grep aliases

user@user:/etc/modprobe.d$ [no output]

Eu não sei como lidar com isso, mas depois, quando tentei criptografar o disco, ele foi criptografado com sucesso seguindo o comando

sudo cryptsetup --verify-passphrase luksFormat /dev/sdb1 -c aes -s 256 -h sha256

Eu não sei como ele encontrou o algoritmo aes256, ou simplesmente ignorei aes256 ou fiz algumas coisas mágicas.

Então, eu quero uma resposta para as seguintes perguntas

  1. Como o crypt-setup conseguiu criptografar minha unidade com sucesso?
  2. Como confirmar que o aes256 também é implementado na criptografia executada pelo crypt-setup?

  3. Por que não tenho um arquivo /etc/modprobe.d/alaises ? É devido a uma versão mais recente? desde que a solução foi testada pela última vez na versão 10.04.

por Chinmaya B 01.10.2015 / 11:59

1 resposta

1

Aviso geral antecipado: não altere manualmente os parâmetros cryptsetup com opções como -c ( --cipher ), -s ( --key-size ) e -h ( --hash ). Os padrões são geralmente saudáveis e, a menos que você saiba o que está fazendo, você pode realmente selecionar os parâmetros piores .

Esses padrões são mostrados com cryptsetup --help . Para referência, no Ubuntu 16.04 com cryptsetup 1.7.2, os padrões são:

% bl0ck_qu0te%

No Arch Linux com cryptsetup 1.7.2, os padrões são:

% bl0ck_qu0te%

As instruções que você vinculou foram escritas para uma versão do Ubuntu lançada em 2010. Hoje em dia (e talvez até na época), você não precisa carregar manualmente os módulos do kernel para configurar a criptografia completa do disco. Estes são carregados automaticamente quando cryptsetup é invocado.

No contexto dos módulos do kernel Linux, o aes name é um nome de módulo e um alias para várias implementações possíveis. Existe um módulo genérico aes que é construído na imagem do kernel. Depois, há uma implementação alternativa mais rápida, que depende de alguns recursos de hardware ou CPU (como padlock-aes e aesni-intel ).

Mesmo que esses módulos acelerados por hardware não possam ser carregados, ainda há uma alternativa para a implementação genérica do AES, e é por isso que cryptsetup ainda pode usá-lo.

Para confirmar que a criptografia AES256 está realmente em uso, você pode usar o comando cryptsetup luksDump /dev/sdb1 , que mostra algo como:

...                                        
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha256
Payload offset: 4096
MK bits:        256

Aqui você pode ver que a cifra AES foi usada usando a função hash SHA256 para derivação de senha. O tamanho da chave é de 256 bits (portanto, você está usando o AES256).

Para sua última pergunta (por que você não tem um arquivo /etc/modprobe/aliases ), este arquivo não existe nas versões recentes do Ubuntu.

    
por Lekensteyn 19.09.2016 / 22:39