2008-04-25から1日間の記事一覧
仕様書とZipのバイナリとにらめっこしてわかったのは、とりあえず… 暗号化したZipファイルはgeneral purpose bit flagにフラグが立つ Data descriptorが付加される…みたいだけどよくわからん データの先頭12バイトが鍵(?)。その分、サイズが増える。
http://www.pkware.com/documents/casestudies/APPNOTE.TXT Overall .ZIP file format: [local file header 1] [file data 1] [data descriptor 1] . . . [local file header n] [file data n] [data descriptor n] [archive decryption header] [archive ex…
http://www.pkware.com/documents/casestudies/APPNOTE.TXT C. Data descriptor: crc-32 4 bytes compressed size 4 bytes uncompressed size 4 bytes This descriptor exists only if bit 3 of the general purpose bit flag is set (see below). It is byt…
http://www.pkware.com/documents/casestudies/APPNOTE.TXT D. Archive decryption header: The Archive Decryption Header is introduced in version 6.2 of the ZIP format specification. This record exists in support of the Central Directory Encryp…
Info-ZIPで暗号化するとData descriptorはつかないけど、Windowsで暗号化したらData descriptorがついてきた。 なーぜー。
データを処理してみないとなんとも。 #include <string.h> #include "zlib.h" void init_keys(uLong *keys) { keys[0] = 305419896L; keys[1] = 591751049L; keys[2] = 878082192L; } void update_keys(uLong *keys, char c) { keys[0] = crc32(keys[0], &c, 1); keys[</string.h>…