web-dev-qa-db-ja.com

Excel 2007の暗号化強度

10文字以上の大文字、大文字と小文字の混在などの強力なパスワードを使用すると、Excel 2007ドキュメントの暗号化は、ブルートフォース攻撃に対してかなり強力な防御を作成するのに十分安全ですか?

Excel 2007はどの暗号化方式を採用していますか?

6
v15

Microsoft whitepaper およびその他のいくつかのMSDNブログソースによれば、次の仕様が定義されています。

  • 鍵の導出は、50,000回の反復を使用して実行されます[ソース] SHA-1の( SP2では100k に増加)。
  • 16バイト(128ビット)のランダムソルトを使用します。
  • AESは、ドキュメントの暗号化に使用されるブロック暗号です。
  • デフォルトでは、128ビットのキーが使用されます。これを256ビットに変更するレジストリTweakがあります。
  • AESブロック暗号は、Microsoftの CSP/CryptoAPI に実装されています。

古いバージョンのOfficeはRC4を使用しますが、現在は非推奨であり、推奨されていません。

要約すると、私はyesと言います。良いパスワードを使用すると、これは解読するのが難しくなります。

最新のGPUハッシュクラッキングツールは、強力なグラフィックカードで毎秒約32億ハッシュに達する可能性があります。デフォルトのオプションでは、使用されるKDFは1秒あたり約64kハッシュに削減します。

10文字(a-z、A-Z、0-9)を想定すると、840,000,000,000,000,000(8.4x10 ^ 17)の可能なパスワードのキースペースを見ているので、パスワードをクラックする可能性が50%になるまでに約21万千年かかります。

財務情報を保存している場合は、いくつかのセキュリティパラメータを変更できるOffice 2007 SP2の レジストリの微調整 を参照してください。セキュリティを適切に向上させるには、CipherKeyBits値を256に設定し、PasswordSpinCount値を1,000,000以上に設定します。その時点で、私は個人的に断固とした攻撃者に対してもかなり安全であると信じています。あなたが超妄想的であるなら、あなたはいつもファイルを TrueCrypt ボリュームに置くこともできます!

10
Polynomial

すでに スーパーユーザーに回答済み なので、その答えを引用させてください。

Excelのパスワードを紛失したとき、私はすべてのパスワード回復プログラムが失われたパスワードの正常な復元を保証することができないことを知るためだけにかなりの調査をしました。パスワードが長く複雑な場合、パスワードが見つかるまでに数年かかる場合があります。私が見つけたExcel 2007以降のバージョン(Excel 2010があった)からパスワードを確実に削除する唯一の方法は、 www.password-find.com と呼ばれるオンラインサービスでした。パスワードを瞬時に削除できるいくつかの新しいアルゴリズムを利用しました(数秒以内に私を削除しました)。ただし、100%のドキュメントでは機能しないため、ご自身で確認してください。開発者がそれ以降改善した可能性があります。ドキュメントが古いExcel 97-2003形式で保存されている場合、誰かがすでに述べた無料のExcelパスワード回復を試すことができます-失われたパスワードが本当に簡単な場合は機能する可能性があります。私の投稿が、問題解決のために探していた時間を大幅に節約してくれることを願っています。

ご覧のとおり、Excel 2007/2010の保護は瞬時に解読される可能性があるため、これ以上強力であるとは見なされません。

1