強力な暗号化方式の設定
Microsoft Excel (97-2007/2010) は、スプレッドシートを暗号化し、パスワードで保護することができます。これには暗号サービスプロバイダが提供するアルゴリズムが使用されます。暗号サービスプロバイダ(CSP)とは、異なる性質の暗号アルゴリズムのセットです。デフォルトのCSPは「Office 97/2000互換」です。これは一部の公に知られているセキュリティ上の問題を抱えたCSPです。『弱い暗号化(XOR)』や「Office 97/2000互換」暗号方式で保護されたスプレッドシートは簡単に解読できます。
この問題を克服するために、Microsoft Excelが提供する強力な暗号化方式を使用してください。暗号化方式を最も強力なCSPに変更することができます。強力な暗号化には、最低128ビットの鍵長が必要です。例えば『Microsoft Strong Cryptographic Provider』です。
Aspose.Cells APIを使用して、強力な暗号化方式を使ったExcelファイルに暗号化し、パスワードを設定することもできます。
Microsoft Excelでの暗号化の適用
Microsoft Excel(たとえば2007)でファイルの暗号化を実装するには:
-
ツールメニューからオプションを選択します。
-
セキュリティタブを選択します。
-
開くためのパスワードフィールドに値を入力します。
-
高度 をクリックします。
-
暗号化方式を選択し、パスワードを確認します。
Microsoft Excelでの暗号化設定
Aspose.Cellsを使用した暗号化の適用
以下のコード例では、ファイルに強力な暗号化を適用し、パスワードを設定しています。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getDataDir(ApplyingEncryption.class); | |
// Instantiate a Workbook object. | |
Workbook workbook = new Workbook(dataDir + "Book1.xls"); | |
// Password protect the file. | |
workbook.getSettings().setPassword("1234"); | |
// Specify Strong Encryption type (RC4,Microsoft Strong Cryptographic Provider). | |
workbook.setEncryptionOptions(EncryptionType.STRONG_CRYPTOGRAPHIC_PROVIDER, 128); | |
// Save the Excel file. | |
workbook.save(dataDir + "encryptedBook1.xls"); |