Posso recriar exatamente um arquivo gzip, dado o arquivo original descompactado?

Posso recriar exatamente um arquivo gzip, dado o arquivo original descompactado?

Tenho uma série de gziparquivos que desejo armazenar com mais eficiência usando xz, sem perder a rastreabilidade a um conjunto de somas de verificação dos arquivos gzip.

Acredito que isso equivale a ser capaz de recriar os arquivos gzip a partir dos arquivos xz, embora esteja aberto a outras sugestões.

Para elaborar... Se eu tiver um arquivo gzip chamado target.txt.gze descompactá-lo target.txte descartar o arquivo compactado, quero recriar exatamente o arquivo compactado original target.txt.gz. Por exatamente, quero dizer que uma soma de verificação criptográfica do arquivo deve indicar que ele é exatamente igual ao original.

Inicialmente pensei que isso deveria ser impossível, porque um arquivo gzip contém metadados como nome do arquivo original e carimbo de data/hora, que podem não ser preservados na descompactação, e metadados como um comentário, o sistema operacional de origem e sinalizadores de compactação, que são quase certamente não preservado após a descompressão.

Mas então pensei em modificar minha pergunta: existe uma quantidade mínima de informações de cabeçalho que eu poderia extrair do arquivo gzip que, em combinação com os dados descompactados, me permitiria recriar o arquivo gzip original.

E então pensei que a resposta ainda poderia ser não devido à existência de ferramentas comoZopflie7-zip, que pode criar fluxos compatíveis com gzip que são melhores (portanto, diferentes) do programa gzip padrão. Até onde sei, o formato de arquivo gzip não registra qual desses compressores o criou.

Então, minha pergunta é: existem outras opções nas quais não pensei que possam significar que, afinal, posso alcançar meu objetivo conforme estabelecido no primeiro parágrafo?

Responder1

Isso pode ser útil:https://github.com/google/grittibanzli

Grittibanzli é uma ferramenta para compactar um fluxo deflacionado em um arquivo menor, que pode ser decodificado novamente no fluxo deflacionado original. Ou seja, ele compacta não apenas os dados dentro do fluxo deflate, mas também as informações relacionadas ao deflate, como símbolos LZ77 e árvores Huffman, para reproduzir exatamente um arquivo gzip, png, ....

informação relacionada