DRM ライターの作成と初期化
暗号化されたメディア サンプルを Windows Media DRM にインポートするために ASF ライター オブジェクトを初期化するには、次の手順が必要です。
- ライセンスとキーマテリアルのインポートの手順 1 から 4 に従います。
- 適切な Windows Media DRM キー マテリアルを使用して、ASF ライター オブジェクトを作成して初期化します。 詳細については、「 DRM サポートの有効化」を参照してください。
-
IWMDRMWriter::SetDRMAttribute を呼び出して、次の各属性を設定します。
- DRM_HeaderSignPrivKey
- DRM_V1LicenseAcqURL
- DRM_KeyID
- DRM_LicenseAcqURL
- ライセンス版の Windows Media Rights Manager がソフトウェアを実行しているコンピューターにインストールされていない場合は、次の 4 つの属性も設定する必要があります。
- DRM_LASignatureRootCert
- DRM_LASignatureCert
- DRM_LASignatureLicSrvCert
- DRM_LASignaturePrivKey
- 必要な暗号化証明書の申請は、 Windows Media Licensing Agreement (WMLA) をオンラインで入力することで完了できます。
- セッション キーを作成し、 WMDRM_IMPORT_SESSION_KEY 構造体に入力します。 セッション キーは、コンテンツ キーの暗号化に使用されます。 例については、「 セッション キーの作成の例」を参照してください。
- ランダムな RC4 初期化ベクトルからコンテンツ キーを作成し、 WMDRM_IMPORT_CONTENT_KEY 構造体に入力します。 コンテンツ キーは、メディア サンプルを暗号化するために使用されます。 例については、「 コンテンツ キーの作成の例」を参照してください。
- RC4 暗号化を使用して、セッション キーを使用してコンテンツ キーを暗号化します。
- マシン証明書の収集キーを抽出します。 例については、 コンピューター証明書の取得の例に関するページを参照してください。
- 証明書から抽出された公開キーを使用してセッション キーを暗号化します。
- WMDRM_IMPORT_INIT_STRUCT構造体を入力します。
- IWMDRMWriter3::SetProtectStreamSamples メソッドを呼び出して、ライターに入ってくるサンプルが既に保護されており、インポートのために Windows Media DRM クライアントに直接送信する必要があることを SDK に通知します。
- IWMWriter::BeginWriting を呼び出します。
DRM で保護されたファイルを作成するための残りの手順については、「Windows Media Format SDK プログラミング ガイド」を参照してください。 詳細については、「 保護されたファイルの作成」を参照してください。
次の手順では、各メディア サンプルを反復処理して暗号化し、ライター オブジェクトに渡します。 詳細については、「 メディアサンプルの暗号化とインポート」を参照してください。
関連トピック