2009-05-13 14 views
5

J'essaie de comprendre comment les documents Office 2007 cryptés («protégés par mot de passe») sont regroupés (en particulier, les documents Excel). J'expérimente avec un tableur connu, protégé par mot de passe.Office Open XML (OOXML) Spécification: Cryptage

Quand je Décompressez le fichier XLSX, je rencontre trois entrées:

  • [6] Dataspaces (Répertoire)
  • EncryptionInfo (fichier)
  • EncryptedPackage (fichier)

Comment le fichier EncryptedPackage est-il chiffré (quel chiffre, quelle fonction de dérivation de clé, etc ...)?

J'ai essayé de référencer the documentation, mais je n'ai pas eu beaucoup de succès.

Répondre

6

Le chiffrement de fichier ne fait pas partie des spécifications OpenXML ECMA/ISO. C'est une norme spécifique au fournisseur en plus de cela. Pour la spécification s'il vous plaît vérifier

[MS-OFFCRYPTO]: Office Document Cryptography Structure Specification

documents Encrypted OpenXML ne sont pas stockées sous la forme d'un package zip OPC mais comme un ensemble chiffré OPC dans un document OLE composé.

4

J'ai créé un wrapper OoXmlCrypto stream, reliant plusieurs morceaux open source pour accéder facilement aux fichiers cryptés Office 2007.

Cette answer peut vous être utile.

Éteint [6] DataSpaces est ignoré, mais deux autres parties sont utilisées. Le fichier XLSX crypté n'est pas vraiment zippé, c'est un conteneur composé OLE. Si vous enlevez les pièces et les compressez en utilisant 7zip, Excel ne l'ouvre pas.

Questions connexes