2

Office 2007 が暗号化に使用する方法 (Office メニューから [暗号化] を選択してパスワードを設定する場合) は?

私の C# アプリは、暗号化された Excel 2007 ファイル (.xlsx) を作成して読み取る必要があります。これらのファイルに Excel からアクセスできるようにしておくことが重要です。そのため、Microsoft の暗号化方式を使用する必要があり、自分で作成することはできません。

通常の Excel 2007 ファイルは ZIP 圧縮されたファイルであり、内部的に * System.Io.Packaging.Package* (.net 3.0 の一部) を使用するExcelPackageを使用してアクセスしています。

ただし、Office の暗号化は標準の ZIP 暗号化ではありません。Package クラスは暗号化をサポートしていないようで、破損したファイルを報告します。7Zip はファイルを (パスワードを指定せずに) 開き、内部にいくつかのバイナリ ファイルを表示します。

4

3 に答える 3

3

Office 2007 は、OLE ドキュメント (バイナリの Office ドキュメントに使用されるものと同じコンテナ形式) を使用して、暗号化されたドキュメントを格納します。

[MS-OFFCRYPTO]: Office Document Cryptography Structure Specificationには、使用されるデータ構造とアルゴリズムの仕様が含まれている必要があります。

于 2009-10-01T09:21:02.233 に答える
2

いくつかのオープン ソースの断片に基づいて、OoXmlCrypto ストリームラッパーを作成し、Office 2007 の暗号化されたファイルに簡単にアクセスできるようにしました。

これは、 OOXML 暗号化/復号化を行うソース コードを含むブログ投稿に基づいています。

于 2009-10-01T19:03:40.160 に答える
1

JFYI: 私たちの SecureBlackbox 製品は、他の多くの機能の中で、OOXML ドキュメントの暗号化と復号化のためのコンポーネントを提供します。

于 2010-07-24T21:50:20.790 に答える