por que o motivo-chave-do-código-chave-inserido-embrulhado-em-ecryptfs leva mais tempo

1

Eu tenho tentado criptografar um diretório vazio. O que envolve três etapas.

Etapa 1.Leia a chave do usuário e envolva a frase secreta usando

time printf  "%s\n%s" <user key> <wrap phrase> | ecryptfs-wrap-passphrase <tmp wrap file> -

Etapa 2.Insira a chave no anel de chave do kernel usando

time echo -n <wrap phrase> |  ecryptfs-insert-wrapped-passphrase-into-keyring <tmp wrap file>

Etapa 3. Execute o comando mount

time mount -i -t ecryptfs /tmp/folder /tmp/folder  -o with necessary options

Passo 1 - está tomando 4secs

Passo 2 - está tomando 12secs

Passo 3 - está tomando 141ms

Alguém pode explicar por que o step1 e o step2 estão demorando mais? Existe alguma maneira de otimizar isso?

Obrigado antecipadamente Murali Marimekala

    
por Murali 06.10.2016 / 16:07

1 resposta

1

Todos estes comandos fazem coisas muito diferentes e não se espera que executem em quantidades de tempo semelhantes.

A etapa 3 está ignorando completamente o espaço de usuário do eCryptfs, já que você está usando a opção -i de montagem.

As etapas 1 e 2 estão realizando operações intensivas da CPU para garantir que as chaves baseadas em frase secreta não sejam facilmente obrigatórias. Alongamento chave ou fortalecimento de chaves são termos comuns que descrevem o processo.

O passo 1 realiza o alongamento da chave em uma frase secreta.

O passo 2 realiza o alongamento das 3 senhas. Esse é o resultado de um erro infeliz introduzido quando o suporte inicial criptografado foi implementado originalmente. O alongamento de chaves é realmente necessário apenas no que você chama de "frase secreta", mas também está acontecendo no fekek (chave de criptografia de chave de criptografia de arquivo) e fnek (chave de criptografia de nome de arquivo). Esse comportamento foi preservado para compatibilidade com versões anteriores e, embora possa ser corrigido no futuro, não há planos para corrigi-lo no momento. Nós certamente entretemos alguém contribuindo com patches para o projeto upstream para consertá-lo de uma maneira que não prejudique a compatibilidade com versões anteriores.

    
por tyhicks 10.10.2016 / 23:49