Algoritmos de criptografia de disco rígido podem ser complexos, mas a criptografia real em nível de bloco é principalmente um algoritmo simétrico muito simples. DES, 3-DES e seus seguidores são algoritmos muito, muito simples, principalmente eles estão permutando a localização dos bits e, em seguida, seus valores.
O que torna tudo isso tão complexo é o manuseio da chave de criptografia / descriptografia. Este é o local onde o RSA, os números primos de mais de 100 caracteres estão funcionando.
Ele precisa ser assim: como um disco criptografado não deve ser muito lento, o algoritmo real e crítico de velocidade precisa ser rápido.
E segundo: os setores (blocos) de um disco rígido criptografado precisam ser criptografados / descriptografados um do outro independentemente. Foi uma grande piada se precisássemos descriptografar um disco inteiro para descobrir o que está em seu último bloco. : -)
Este último, o que torna a sua vida tão simples. A única coisa que você precisa salvar é a chave de codificação / decodificação. Se um bloco ruim chegar, essa chave será suficiente para decodificar todo o disco rígido.
Claro, não os blocos ruins, mas a falha deles não causará a inacessibilidade dos outros blocos.
No manuseio da chave, é melhor usar alguma solução de código aberto: é claro que também não pode ser permitido, que você não conseguirá decodificar seus dados apenas porque a empresa do desenvolvedor simplesmente não oferece suporte a mecanismos de resgate .
Resumindo: se você clonar um disco rígido com blocos defeituosos com uma ferramenta de resgate de dados no nível de setor (por exemplo: gddrescue
é uma boa ideia no mundo opensource), o clone será decodificável (e, em seguida, corrigível ) quase sempre sem maiores problemas.
É claro que muito mais poderia ser escrito a partir das coisas reais para fazer no caso de um disco danificado, mas tudo depende da tecnologia usada.