web-dev-qa-db-ja.com

どのファイル形式が "45 52 02"バイトで始まりますか?

私は.cdrファイルフォーマットを持っています( CorelDRAW fileではありません)、しかしそれを開く/焼くのが困難です。私はそれがディスクイメージだと思っています。これが最初の数行です。

$ hexdump -C *.cdr | head
00000000  45 52 02 00 00 70 00 00  00 00 00 00 00 00 00 00  |ER...p..........|
00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200  ...
$ hdiutil imageinfo *.cdr
hdiutil: imageinfo failed - image not recognized

このファイルはどのような形式で書かれていますか?

ウィキペディアで ファイル内のマジックナンバー の記事をチェックしましたが、そこには掲載されていません。

33
kenorb

さて、私はこれについて100%ではありませんが、 Roxio Toast ディスクイメージファイルに近いようです Wikipediaのここにあるファイル署名のリスト

Roxio Toastディスクイメージファイル、および一部の.dmgファイルも同じバイトで始まります。

そこで提供される16進数の署名は次のとおりです。

45 52 02 00 00 00

また、共有している16進数の署名は次のとおりです。

45 52 02 00 00 70

最後の16進値は00ではなく70であるため、これはさらに奇妙です。 70が画像が圧縮されていることを意味しているのだろうか?同様の情報が pyfsigのこの定義ファイル ;にあるようです。 Pythonファイル署名ライブラリ。

また、正しく思い出せば、ファイルの.cdr拡張子は、このディスクイメージファイルがRoxio Toastで作成されたことを示しているように見えます。

FWIW、拡張子が.dmgのファイルは、 Wikipediaページに記載 -macOS “ Apple Disk Image” 形式の画像です。

20
JakeGould

fileコマンドは、その「Appleドライバマップ、ブロックサイズ512」を教えてくれます。

printf '\x45\x52\x02\x00\x00\x70' | file -
# /dev/stdin: Apple Driver Map, blocksize 512

定義はファイル内のファイルのソースコード magic/Magdir/Apple にあります。

興味深いことに、さらに一致する無効なエントリがあります: "Apple Partition data"。

58
steiny