次の方法で共有


方法: 暗号化設定の操作

重要

2020 年 3 月より前にリリースされた Microsoft Rights Management Service SDK のバージョンは非推奨です。2020 年 3 月のリリースを使用するには、以前のバージョンを使用するアプリケーションを更新する必要があります。 詳細については、 非推奨の通知を参照してください。

Microsoft Rights Management Service SDK の今後の機能強化は計画されていません。 分類、ラベル付け、保護サービスには、Microsoft Information Protection SDK の導入を強くお勧めします。

このトピックでは、暗号化パッケージについて概説し、その使い方を示すいくつかのコード スニペットを紹介します。

AES 256 のサポート, 新しい既定

AES 256 ベースの暗号化は新しい既定なので、RMS SDK 2.1 の 2015 年 3 月の更新プログラムがビルドされていることを想定しており、コードを追加する必要はありません。 AES 256 で強化されたセキュリティ メリットを得るには、このリリースでアプリケーションを更新することを強くお勧めします。

重要

AES 256 で保護されたファイルの消費量のサポートは、2014 年 10 月のリリースより開始されています。 2014 年 10 月より前の SDK のバージョンでビルドされたアプリケーションを実行している場合、この更新プログラムによってアプリケーションは中断されます。 ビルドしているアプリケーションの顧客が更新後の SDK を使用していない場合、最新バージョンのアプリケーションにすぐに更新する意向があることを確認してください。

 

API 暗号化のサポート

2015 年 3 月の更新より、次の 3 つのフラグが API および関連する暗号化パッケージに組み込まれています。

  • IPC_ENCRYPTION_PACKAGE_AES256_CBC4K
  • IPC_ENCRYPTION_PACKAGE _AES128_CBC4K
  • IPC_ENCRYPTION_PACKAGE _AES128_ECB (非推奨アルゴリズムとも呼ばれます)

暗号化パッケージ フラグは、「 優先暗号化」を参照してください。License Property フラグ - IPC_LI_PREFERRED_ENCRYPTION_PACKAGEと組み合わせて使用できます。

新しいライセンス プロパティの使用方法を示すいくつかの単純なコード スニペットは次のとおりです。

非推奨のアルゴリズム

API で IPC_LI_DEPRECATED_ENCRYPTION_ALGORITHMS フラグを公開することはなくなりました。 今後、このフラグを参照しても、アプリケーションでコンパイルされませんが、このフラグを使用して既にビルドされたアプリケーションではこのフラグを API コード内でプライベートに使用するため、引き続き機能します。

フラグを 1 つ変更するだけで、古い非推奨の暗号化アルゴリズムのフラグの機能を利用できます。 次のコード スニペットの例をご覧ください。

AES 256 CBC4K によるファイルの保護

コードの変更は必要ありません。AES 256 CBC4K は既定値です。

hr = IpcCreateLicenseFromTemplateID(pcTil->aTi[0].wszID,
                                0,
                                NULL,
                                &pLicenseHandle);

AES 128 CBC4K によるファイルの保護

hr = IpcCreateLicenseFromTemplateID(pcTil->aTi[0].wszID,
                                0,
                                NULL,
                                &pLicenseHandle);

DWORD dwEncryptionMode = IPC_ENCRYPTION_PACKAGE_AES128_CBC4K;

hr = IpcSetLicenseProperty(pLicenseHandle,
                        false,
                        IPC_LI_PREFERRED_ENCRYPTION_PACKAGE,
                        &dwEncryptionMode);

AES 128 ECB (非推奨のアルゴリズム) によるファイルの保護

この例は非推奨のアルゴリズムをサポートする新しい方法も示しています。

hr = IpcCreateLicenseFromTemplateID(pcTil->aTi[0].wszID,
                                0,
                                NULL,
                                &pLicenseHandle);

DWORD dwEncryptionMode = IPC_ENCRYPTION_PACKAGE_AES128_ECB;

hr = IpcSetLicenseProperty(pLicenseHandle,
                        false,
                        IPC_LI_PREFERRED_ENCRYPTION_PACKAGE,
                        &dwEncryptionMode);