Como posso ver este arquivo codificado? [fechadas]

0

Eu recebo dados todos os dias de um cliente, mas não consigo lê-lo. É um arquivo codificado. Se eu abri-lo diretamente com cat , less ou vi , não consigo lê-lo.

O cliente compartilhou o arquivo de dados como file_name.ZIP.zip (120 Mb). Depois de extrair o conteúdo, recebi mais um arquivo zip, como file_name.ZIP.zip (120 Mb) e file_name.ZIP (125 mb). Mais uma vez extraindo recebo file_name (4-5 GB) com o tipo de arquivo application/octet-stream; charset=binary format .

NOTA: Eu recebo o arquivo em alguns formatos diferentes, como binário, ISO8859, etc.

Dados da amostra:

$ hexdump -C file_name | head 
00000000 40 40 40 40 60 60 40 40 40 40 40 40 40 40 40 40 |@@@@''@@@@@@@@@@|
00000010 40 40 40 40 40 00 00 00 00 00 00 00 00 00 00 00 |@@@@@...........|
00000020 00 00 00 00 00 60 60 40 40 40 40 40 40 60 60 40 |.....''@@@@@@''@|
00000030 40 40 40 40 40 40 40 40 40 40 00 00 00 00 00 00 |@@@@@@@@@@......|
00000040 00 00 00 00 00 00 00 00 00 00 60 60 40 40 40 40 |..........''@@@@|
00000050 40 40 60 60 40 40 40 40 40 40 40 40 40 40 00 00 |@@''@@@@@@@@@@..|
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60 60 |..............''|
00000070 40 40 40 40 40 40 60 60 40 40 40 40 40 40 40 40 |@@@@@@''@@@@@@@@|
00000080 40 40 40 00 00 00 00 00 00 00 00 00 00 00 00 00 |@@@.............|
00000090 00 00 00 60 60 40 40 40 40 40 40 60 60 40 40 40 |...''@@@@@@''@@@|

Verificando o formato / tipo de arquivo,

$ file -bi file_name
application/octet-stream; charset=binary

Depois, tentei alterar o formato do arquivo usando iconv -l

iconv -f ascii -t utf-8 file_name > New_file_name.txt;

ou

iconv -f ISO8859-1 -t utf-8 file_name -o New_file_name.txt;

Como posso decodificar ou visualizar esse arquivo em formato legível?

Se eu usar o hexdump,

$ hexdump -C file_name | head
00000000  40 40 40 40 60 60 40 40  40 40 40 40 40 40 40 40  |@@@@''@@@@@@@@@@|
00000010  40 40 40 40 40 00 00 00  00 00 00 00 00 00 00 00  |@@@@@...........|
00000020  00 00 00 00 00 60 60 40  40 40 40 40 40 60 60 40  |.....''@@@@@@''@|
00000030  40 40 40 40 40 40 40 40  40 40 00 00 00 00 00 00  |@@@@@@@@@@......|
00000040  00 00 00 00 00 00 00 00  00 00 60 60 40 40 40 40  |..........''@@@@|
00000050  40 40 60 60 40 40 40 40  40 40 40 40 40 40 00 00  |@@''@@@@@@@@@@..|
00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 60 60  |..............''|
00000070  40 40 40 40 40 40 60 60  40 40 40 40 40 40 40 40  |@@@@@@''@@@@@@@@|
00000080  40 40 40 00 00 00 00 00  00 00 00 00 00 00 00 00  |@@@.............|
00000090  00 00 00 60 60 40 40 40  40 40 40 60 60 40 40 40  |...''@@@@@@''@@@|
    
por Karthickkumar Nagaraj 12.08.2016 / 12:47

1 resposta

1

É inapropriado usar iconv em arquivos que não são de texto.

O que você pode fazer é usar um programa hex-dump para visualizar o conteúdo de um arquivo binário.

$ hexdump -C binary.data | head
00000000  7f 45 4c 46 02 01 01 00  00 00 00 00 00 00 00 00  |.ELF............|
00000010  02 00 3e 00 01 00 00 00  c0 0e 40 00 00 00 00 00  |..>.......@.....|
00000020  40 00 00 00 00 00 00 00  80 56 00 00 00 00 00 00  |@........V......|
00000030  00 00 00 00 40 00 38 00  08 00 40 00 1f 00 1e 00  |[email protected]...@.....|
00000040  06 00 00 00 05 00 00 00  40 00 00 00 00 00 00 00  |........@.......|
00000050  40 00 40 00 00 00 00 00  40 00 40 00 00 00 00 00  |@.@.....@.@.....|
00000060  c0 01 00 00 00 00 00 00  c0 01 00 00 00 00 00 00  |................|
00000070  08 00 00 00 00 00 00 00  03 00 00 00 04 00 00 00  |................|
00000080  00 02 00 00 00 00 00 00  00 02 40 00 00 00 00 00  |..........@.....|
00000090  00 02 40 00 00 00 00 00  1c 00 00 00 00 00 00 00  |..@.............|

Em muitos casos, isso não será imediatamente esclarecedor, você precisa fazer uma das duas coisas

  • Obtenha uma especificação para o formato de arquivo e obtenha ou escreva um decodificador que apresente os dados em formato legível.
  • Use qualquer conhecimento do domínio de conteúdo e raciocínio dedutivo para examinar o conteúdo binário e elaborar (engenharia reversa) a estrutura e o significado. Isso geralmente é trabalho duro.
por 12.08.2016 / 13:07