web-dev-qa-db-ja.com

LibreOfficeはパスワードで保護されたファイルを暗号化しますか

LibreOfficeは、「Save with password」オプションを使用してファイルを保存するときに実際にファイルを暗号化しますか?

詳細(暗号化方法、キーサイズ、SALTの使用、パディングなど)を歓迎します。

6
random_clyde

LibreOfficeは、ドキュメントを表すXMLファイルを主に含むZip暗号化アーカイブであるOpenDocument形式を使用します。

ドキュメントを読み取るためのパスワードを設定すると、Zipアーカイブ内に含まれるすべてのファイルは個別に暗号化されますが、メタデータはクリアテキストのままです。

LibreOffice 3.5(最大ODF 1.1)まで、暗号化にはBlowfishアルゴリズムが使用され、現在のバージョンでは代わりにAES-256が使用されます。

詳細を提供するリソースは次のとおりです。


http://listarchives.libreoffice.org/global/users/msg15359.html から:

パスワードを使用してドキュメントを保存することは、実際には暗号化です。暗号化方法は、Zipパッケージの一部を暗号化するためのODF仕様で指定されています。 (ODFドキュメントの単一XMLファイル形式にはODF指定の暗号化はありません。)

パッケージ内のすべてのODF 1.0/1.1/1.2ドキュメント(ODT、ODP、ODSファイルなど)で機能するデフォルトの方法は、UTFのSHA1ダイジェストで始まるHMACおよびSHA1を使用するパスワードベースのキー派生(PBKDF2)によるものです。 -8ユーザーが選択したパスワード。派生キーを使用した暗号化は、8ビット暗号フィードバック(8ビットCFB)を使用したBlowfishです。これは、ODFドキュメントの一部を含むZipパッケージの各ファイルで実行されます。 (各パーツには、ランダムに派生した異なる初期化ベクトルがありますが、派生キーはそれらのすべてで同じです。)

ODF 1.2以降、追加の暗号化方法を選択できます。ただし、ドキュメントを暗号化に使用したコンピューターとソフトウェア以外で開くことを意図している場合、相互運用性の問題があります(実際には一般的なユースケースですが、安全な交換が意図されている場合はそうではありません)。

から https://wiki.documentfoundation.org/ReleaseNotes/3.5#Different_Encryption_Algorithm

LibreOffice 3.5では、ODF 1.2およびODF 1.2拡張ファイル形式のパスワードで保護されたファイルに、より安全な暗号化アルゴリズム(AES-256)が使用されます。新しい暗号はデフォルトで有効になっています。 ODF 1.2ファイルのBlowfish暗号化は非推奨と見なされます

から https://en.wikipedia.org/wiki/OpenDocument_technical_specification#Encryption

OpenDocumentファイルがパスワードで保護されている場合、バンドルのファイル構造は同じままですが、パッケージ内のXMLファイルのコンテンツは次のアルゴリズムを使用して暗号化されます。

  1. ファイルの内容は、DEFLATEアルゴリズムで圧縮されます。
  2. 圧縮ファイルの一部のチェックサムが計算され(ファイルの内容のSHA-1、ファイルの最初の1024バイトのSHA-1、またはファイルの最初の1024バイトのSHA-256)パスワードが保存されます復号化時に正確性を検証できます。
  3. UTF-8エンコーディングでユーザーが入力したパスワードのダイジェスト(ハッシュ)が作成され、パッケージコンポーネントに渡されます。 ODFバージョン1.0および1.1では、ここでSHA-1ダイジェストのサポートのみが義務付けられていますが、バージョン1.2ではSHA-256を推奨しています。
  4. このダイジェストは、任意の長さの乱数ジェネレーターによって生成された任意の長さのソルト(ODF 1.2で-ODF 1.1以下では16バイト)を使用してPBKDF2でキーストレッチングを行うことにより、派生キーを生成するために使用されます反復カウント(ODF 1.2ではデフォルトで1024)。
  5. 乱数ジェネレーターは、各ファイルのランダムな初期化ベクトルを生成するために使用されます。
  6. 初期化ベクトルと派生キーは、圧縮ファイルの内容を暗号化するために使用されます。 ODF 1.0および1.1は8ビット暗号フィードバックモードでBlowfishを使用しますが、ODF 1.2はそれをレガシーアルゴリズムと見なし、トリプルDESおよびAES(128、196または256ビット)を両方とも暗号ブロックチェーンモードで許可します、代わりに使用されます。
5
Byte Commander

LibreOfficeは、次の暗号化技術を使用します。

  • フグ
  • AES-CBC (LibreOffice 3.5以降はデフォルトで使用されます)

しかし、パスフレーズが弱い場合、ブルートフォース技術によって簡単に解読できます。

関連リンク :

2
Severus Tux