Спецификация Office Open XML (OOXML): шифрование

Я пытаюсь понять, как объединены зашифрованные («защищенные паролем») документы Office 2007 (в частности, документы Excel). Я экспериментирую с известной электронной таблицей, защищенной паролем.

Когда я распаковываю файл XLSX, я обнаруживаю три записи:

  • [6] DataSpaces (каталог)
  • EncryptionInfo (файл)
  • EncryptedPackage (файл)

Как шифруется файл EncryptedPackage (какой шифр, какая функция получения ключа и т. Д.)?

Я пробовал сослаться на документацию, но не имел большой успех.


person Adam Paynter    schedule 13.05.2009    source источник


Ответы (2)



Я создал оболочку OoXmlCrypto stream, соединив несколько фрагментов с открытым исходным кодом для доступа к зашифрованному Office 2007 файлы легко.

Этот ответ может оказаться полезным.

Оказывается, [6] DataSpaces игнорируется, но используются две другие части. Зашифрованный файл XLSX на самом деле не заархивирован, это составной контейнер OLE. Если вы вытащите детали и заархивируйте их с помощью 7zip, Excel не откроет его.

person dbkk    schedule 01.10.2009