Длина слова, как определено в спецификации формата.ZIP

Итак, я прочитал спецификацию PKWARE о формате файла.zip и заметил, что в нескольких местах они дают размеры блоков в терминах слов (слово процессора, а не слово словаря:-)).

Теперь, насколько я понимаю, размер слова в байтах специфичен для определенного семейства процессоров. Таким образом, если файл был заархивирован на i386, а затем разархивирован на x64-86, две архитектуры имели бы разные определения слова (4 байта против 8 байтов) и, следовательно, интерпретировали бы данные блока по-разному.

Я что-то здесь упускаю? Или люди из PKWARE просто предполагают, что 1 слово = 4 байта? Это кажется мне наиболее вероятным вариантом - я проверил некоторые zip-файлы с помощью шестнадцатеричного редактора, и 4-байтовое определение подошло бы, но я хотел бы получить какое-то подтверждение, потому что не то, чтобы у меня была целая куча разных процессоров. проверить с:)

Заранее спасибо, и извините, если вопрос уже существует - я попробовал поискать, но это немного сложно, потому что слово "слово" настолько неоднозначно (понимаете, что я имею в виду?)

1 ответ

Решение

Если в спецификации говорится "слово" для сохраненного блока в формате deflate, это означает два байта (в порядке LSB).

Для расшифровки почтового индекса (где указанное шифрование не должно использоваться, так как оно очень слабое), снова слово означает два байта.

Когда он говорит о флаговом слове общего назначения при взрыве, это снова означает два байта.

Другие вопросы по тегам