Por que o dm-verity usa um sal?

1

Em dm-verity, há um hash de raiz que é usado para verificar um dispositivo de armazenamento de dados. É criado quando você executa veritysetup . Mas além do hash da raiz, também é dado um sal. Por quê?

    
por Melab 20.02.2016 / 02:57

2 respostas

0

Um sal é combinado com o hash ao criar o resumo que é armazenado no dispositivo. Hashes será o mesmo (para determinado conteúdo), então o sal é uma maneira de tornar o resumo diferente.

Quando dm-verity é executado, ele é comparado com listas de hashes, então você precisa que o sal combine os hashes com os resumos que foram armazenados.

Leitura adicional:

por 20.02.2016 / 03:34
0

Se não houvesse sal, qualquer bloco de dados sempre resultaria no mesmo hash de bloco. Isso significa que, se uma colisão de hash puder ser encontrada para aquele bloco, ela poderá ser usada. A probabilidade é baixa, dado que o tamanho do bloco é fixo, mas para uma partição de longa duração atualizada com atualizações diferenciais, um único bloco pode ficar intocado por anos. O sal torna mais fácil não se preocupar com isso, permitindo que todos os hashes de bloco sejam alterados em cada atualização, alterando o nível de sal em cada atualização.

Como a árvore de hash gerada para uso pelo dm-verity não é confiável e é gerada no dispositivo, tudo o que o dispositivo precisa gerar é o sal e os dados. Em seguida, o nó raiz final deve corresponder ao hash raiz fornecido.

(Fwiw, a versão original da dm-verity não tinha suporte para o sal.)

    
por 20.01.2017 / 03:13