정보를 추출해야하는 바이너리 파일이 있습니다. 압축 파일이고 파일의 처음 3 글자는 입니다. zip LZ 대체 및/또는 허프만 코딩이이 파일을 압축하는 데 사용되고 있음을 확신합니다. 파일은 .RAR, .ZIP 등으로 정규 아카이브 형식을 따르지 않는 그러나알 수없는 압축 파일에서 데이터 추출
파일은 3 부분으로 구성되어 있습니다 : 122,105112101200
부 (B)리스트이다 :
부품 (A)은 16 바이트이며, 다음 문자 값 서명 로서 8 바이트를 포함하는 헤더를 나타낸다 주소 (271)의 각 주소는 특정 주소 (C)의 기록 시작 지점이라고 생각하는 파일의 일부입니다. 부분 (C)이 정확히 언제 시작 이후
부품 (C)는, 실제 데이터
선두 어드레스 (도면 중 716) 부분 (C)의 첫번째 레코드 (청크) 주소를 나타내고있는 부분 (B)는 파트 (B)가 끝나고 파트 (C)가 시작되는 주소 인 첫 번째 주소를 끝내고 파트 (C)가 끝난 후에 파일이 끝나기 때문에 파트 B의 목록의 마지막 주소는 파일의 끝을 가리 킵니다. 마지막 부분 (C)의 마지막 레코드 (청크)가 끝납니다.
그림에서 볼 수 있듯이 부분 (C)의 레코드 (청크)를 잘라내야 만했습니다. 그림에서 볼 수 있듯이 첫 번째 레코드 (청크)의 길이는 472 바이트입니다.
각 청크는 길이가 같지 않으므로 길이가 동일하지 않습니다. 또한 가장 큰 레코드의 길이는 헤더 (바이트 13,14,15,16)에 저장됩니다. 이는 955 (187,3,0,0)입니다. 압축 파일을 읽는 동안 왜 유용 할 지 모릅니다.
모든 레코드는 2 바이트 (120,218)로 시작합니다. 끝 문자는 레코드별로 반복적으로 기록되지 않으므로 실제로 매우 임의적으로 보입니다.
레코드 끝에 huffman tree 또는 huffman 테이블 사이의 유사성은 보이지 않지만 파일을보기 위해 여기에 업로드했습니다.
파일에서 압축 된 데이터를 추출하는 데 도움이되는 정보는 정말 감사하겠습니다.
일반적인 zlib 형식 – Rassam