#Protocol Bufferとは
Protocol BufferはGoogleによるスキーマ言語の一種で、簡単にいえばバイナリベースのXMLみたいなものである。XMLと同様、こういうふうに書けよ、という.proto
ファイルと実際に受け渡しされるバイナリーデータの二種類が存在する。
バイナリーデータの方はそのままの状態では読めたものじゃないのでこれまたデコードを必要とする。
デコードをprotocコマンドを使ってやろうとしたがうまくいかなかった。
Macだとprobuf Viewerというのがあるのでそれで見ることができる。
https://apps.apple.com/jp/app/protobuf-viewer/id1165908879?mt=12
.protoファイルはリバースエンジニアリングされている。
https://github.com/obriensp/iWorkFileFormat/tree/master/iWorkFileInspector/iWorkFileInspector/Messages/Proto
Snappy圧縮の仕組み
iwaで用いられている圧縮方式。チェックサムが利用されていないなど、通常の圧縮方式とは違う様式である。
snzipコマンドで-t iwa
と指定すれば見ることができる。
- 古い形式ではIndexディレクトリがIndex.zipになっているが、最新のものではなっていない。
- 暗号化されたファイルの読み込みなんかはどうやるんだろう。