PlayReady バージョン 4.6 の新機能
このページには、PlayReady バージョン 4.5 と PlayReady バージョン 4.6 の間の最も重要な変更の概要が含まれています。
PlayReady バージョン 4.6 の一般的な変更
キー交換
PlayReady 4.6 以降では、1 つの Key Exchange ライセンスに、異なるアルゴリズムを持つ複数のキーを含めることができます。
PlayReady Server SDK バージョン 4.6 の変更点
サーバーの一般的な変更
- .NET Core SDK は .NET バージョン 6.0 に移行されました。
- キー Exchange ライセンスに、異なるアルゴリズムを持つ複数のキーを含めることができるようになりました。
サーバー API の変更
これは単なる概要です。 詳細については、 サーバー API のドキュメント を参照してください。
- LicenseChallengeReeFeatures 列挙型に値 KeyExchangeMultiple が含まれるようになりました。
- チャレンジの ReeFeatureList に LicenseChallengeReeFeatures.KeyExchangeMultiple が含まれている場合、KeyExchangeLicense クラス メソッド AddRight は、異なるアルゴリズムを持つ異なる KeyExchangeRight インスタンスで複数回呼び出すようになりました。
- IPackagingDataAcquisitionHandler が .NET Core バージョンに追加されました。 .NET Core Server SDK は、この機能なしで最初にリリースされました。 レガシ エディションと .NET Core エディションの間のこの機能ギャップを埋めるために、この機能が再び追加されました。
- IServerAuthorization に OnServerCertificateParsed が含まれるようになりました。 このメソッドは、サーバー証明書がサーバー SDK によって検証された後に呼び出されます。 検証に成功した場合、証明書オブジェクトはハンドラーに提供されます。それ以外の場合は、検証例外が提供されます。
- 使用できないライセンスをクライアントに発行する代わりに、ILicenseChallenge.ReeFeatureList に LicenseChallengeReeFeatures.LicenseServerTime が含まれていない場合、LicenseResponse.LicenseServerTimeCertificate を設定すると例外がスローされるようになりました。
PlayReady Device Porting Kit バージョン 4.6 の変更点
一般的なデバイス 移植キットの変更
- 混乱を排除し、コンパイル時間とバイナリ サイズを減らすために、Microsoft内部実装でのみ使用されるサポートされていないコードパスが削除されました。
- リンカーがより適切な最適化を行えるように、コードがさまざまなファイル間で移動されました。
- 複数の異なるアルゴリズムを持つ 1 つの KeyExchangeLicense が適切に処理されます。
- xmrlicensetoxml.exe ツールとソース コードが追加されました。
- Oem_MemAllocなどのメモリ割り当て関数はすべて、常に 32 ビット サイズを使用するのではなく、システムのアーキテクチャ (32 ビットまたは 64 ビット) に基づいてサイズを取得するようになりました。
- Drm_SecureDelete_GenerateChallengeのメモリ リークが修正されました。
- drmmanager テスト領域は、ログの移動を容易にするために、多数の個別のテスト領域に分割されました。 1 つのテスト領域として、ログ ファイルは膨大でした。
Device Porting Kit API の変更
これは単なる概要です。 詳細については、 PlayReady Device Porting Kit の関連するコード コメントに記載されている API ドキュメントを参照してください。
次の OEM REE API と TEE API は、サイズにDRM_DWORDではなくDRM_SIZE_Tを使用するように変更されました。
- Oem_MemAlloc
- Oem_Broker_MemAlloc
- OEM_TEE_BASE_SecureMemAlloc
- DRMCRT_ScrubMemory
- DRMCRT_LocalMemcpy
- DRMCRT_LocalMemset
- DRMCRT_LocalDWORDSetZero
- DRMCRT_LocalAreEqual
- DRMCRT_LocalDWORDcpy
次の OEM REE API が追加されました。
- Oem_Device_GetClientOSInformation (省略可能)。
次の OEM TEE API が変更されました。
- OEM_TEE_BASE_SecureMemHandleFreeは、DRM_VOIDの代わりにDRM_RESULTを返すようになりました。
- OEM_TEE_RPROV_WrapProvisioningRequest使用可能な場合は、入力にセッション キーが含まれるようになりました。