Como saber quais partes de um arquivo binário estão mudando

1

Existe uma ferramenta que posso ver para ver quais partes do arquivo estão sendo modificadas? Eu vi ferramentas que mostram quais segmentos do meu disco rígido estão sendo acessados, mas eu quero algo semelhante para um único arquivo, se algo assim existir.

Estou criptografando um arquivo e quero ver se, quando uma parte é gravada no disco, essa parte é alterada novamente. Por exemplo, uma vez que o primeiro MB do arquivo é criptografado e salvo em disco e o programa é movido, qualquer coisa nesse primeiro MB é atualizada assim que a criptografia é feita.

Como em algum contexto detalhado, eu tenho um processo onde eu uso o gpg4win para criptografar um arquivo muito grande (36GB), e então eu tenho que fazer o FTP para um servidor remoto. Ambas as etapas desse processo levam muitas horas, mas o FTP demora um pouco mais. Se a criptografia continuar estendendo o arquivo, mas o início permanecer inalterado, posso iniciar o processo de FTP assim que o arquivo estiver um pouco. Se o cabeçalho do arquivo criptografado for atualizado no final, para esperar até que as etapas sejam concluídas antes de iniciar o upload.

    
por SqlRyan 01.07.2014 / 17:02

1 resposta

2

Geralmente, isso é uma variante do algoritmo rsync como :

* split a file into blocks of x bytes
* build a hash over these x bytes
* compare the hash for each block between both files
* transfer the changed blocks

Isso obviamente funciona somente se o arquivo não alterar todos os blocos quando estiver escrito. Assim, este parágrafo citado é algo a ter em conta:

Disk encryption often uses special purpose modes specifically designed for the application. Tweakable narrow-block encryption modes (LRW, XEX, and XTS) and wide-block encryption modes (CMC and EME) are designed to securely encrypt sectors of a disk. (See disk encryption theory)

O OpenGPG é um sistema de criptografia misto (ele mistura cifras assimétricas e simétricas para atingir seu objetivo), e atualmente não encontro nada sobre as cifras usadas E sua aplicação para deltas de nível de bloco. Você pode escolher uma solução de criptografia diferente (por exemplo, openssl), com base nessas observações: link

Isso disse:

são ferramentas para calcular um diff binário e mesclar as partes mais tarde.

Relacionados: backup incremental (delta) de dados criptografados

    
por 01.07.2014 / 17:19