メディアサンプルの暗号化とインポート
[このページに関連付けられている機能である Windows Media Format 11 SDK は、レガシ機能です。 これは、ソース リーダーとシンク ライターによって置き換えられます。 ソース リーダーとシンク ライターは、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、Windows Media Format 11 SDK ではなくソース リーダーとシンク ライターを使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]
Windows Media DRM を使用して暗号化するメディア サンプルごとに、前のサンプルより厳密に大きい (単調に増加する) 塩の値を生成する必要があります。 新しい salt 値を使用して、SHA-1 暗号化アルゴリズムを salt 値と連結した初期化ベクトルに適用することで、一時的な暗号化キーを作成します。
次に、生成された一時的なキーを使用して、RC4 アルゴリズムに従ってサンプルを暗号化します。 サンプルを SDK に渡す前に、アプリケーションで拡張属性を設定して、salt 値をサンプルに関連付ける必要があります。
メディア サンプルを暗号化する手順を次に示します。
- INSSBuffer3 インターフェイスを取得するには、サンプル オブジェクトの QueryInterface メソッドを呼び出します。
- salt 値をインクリメントします。
- RC1 暗号化アルゴリズムを使用してサンプルを暗号化します。 暗号化の場合は、初期化ベクトルと salt 値を連結してキーを作成します。
- INSSBuffer::SetProperty を呼び出して、SDK に salt 値を指定します。
関連トピック