Condividi tramite


Novità di PlayReady versione 4.6

Questa pagina contiene una panoramica delle modifiche più significative tra PlayReady versione 4.5 e PlayReady versione 4.6.

Modifiche generali in PlayReady versione 4.6

Scambio di chiavi

A partire da PlayReady 4.6, una singola licenza di Scambio chiavi può includere più chiavi con algoritmi diversi.

Modifiche in PlayReady Server SDK versione 4.6

Modifiche generali al server

  • È stata eseguita la migrazione di .NET Core SDK a .NET versione 6.0.
  • Le licenze di Exchange chiave possono ora includere più chiavi con algoritmi diversi.

Modifiche all'API server

Si tratta semplicemente di una panoramica. Per altre informazioni, vedere la documentazione dell'API Server .

  • L'enumerazione LicenseChallengeReeFeatures include ora il valore KeyExchangeMultiple.
  • Il metodo della classe KeyExchangeLicense AddRight può ora essere chiamato più volte con istanze KeyExchangeRight diverse con algoritmi diversi se reeFeatureList della verifica contiene LicenseChallengeReeFeatures.KeyExchangeMultiple.
  • IPackagingDataAcquisitionHandler è stato aggiunto alla versione di .NET Core. .NET Core Server SDK è stato originariamente rilasciato senza questa funzionalità. È stato aggiunto di nuovo per chiudere questo divario di funzionalità tra le edizioni Legacy e .NET Core.
  • IServerAuthorization include ora OnServerCertificateParsed. Questo metodo viene chiamato dopo la convalida del certificato server da parte di Server SDK. Se la convalida ha esito positivo, l'oggetto certificato viene fornito al gestore; in caso contrario, viene fornita l'eccezione di convalida.
  • L'impostazione di LicenseResponse.LicenseServerTimeCertificate genera ora un'eccezione se ILicenseChallenge.ReeFeatureList non include LicenseChallengeReeFeatures.LicenseServerTime anziché rilasciare licenze inutilizzabili al client.

Modifiche apportate a PlayReady Device Porting Kit versione 4.6

Modifiche generali di Device Porting Kit

  • Sono stati rimossi altri percorsi di codice non supportati solo nelle implementazioni interne di Microsoft per eliminare la confusione e ridurre i tempi di compilazione e le dimensioni binarie.
  • Il codice è stato spostato tra vari file per consentire ai linker di eseguire un'ottimizzazione migliore.
  • Verrà gestito correttamente un singolo KeyExchangeLicense con più algoritmi diversi.
  • Sono stati aggiunti lo strumento xmrlicensetoxml.exe e il codice sorgente.
  • Tutte le funzioni di allocazione della memoria, ad esempio Oem_MemAlloc ora accettano dimensioni in base all'architettura del sistema (32 bit o 64 bit) invece di accettare sempre dimensioni a 32 bit.
  • È stata risolta una perdita di memoria in Drm_SecureDelete_GenerateChallenge.
  • L'area di test drmmanager è stata suddivisa in numerose aree di test separate per semplificare l'esplorazione dei log. Come singola area di test, il file di log era enorme.

Modifiche all'API Device Porting Kit

Si tratta semplicemente di una panoramica. Per altre informazioni, vedere la documentazione dell'API fornita nei commenti sul codice associati in PlayReady Device Porting Kit .

Le API REE OEM e TEE seguenti sono state modificate per usare un DRM_SIZE_T anziché un DRM_DWORD per le dimensioni.

  • Oem_MemAlloc
  • Oem_Broker_MemAlloc
  • OEM_TEE_BASE_SecureMemAlloc
  • DRMCRT_ScrubMemory
  • DRMCRT_LocalMemcpy
  • DRMCRT_LocalMemset
  • DRMCRT_LocalDWORDSetZero
  • DRMCRT_LocalAreEqual
  • DRMCRT_LocalDWORDcpy

Sono state aggiunte le API REE OEM seguenti:

  • Oem_Device_GetClientOSInformation (facoltativo).

Sono state modificate le API TEE OEM seguenti:

  • OEM_TEE_BASE_SecureMemHandleFree restituisce ora DRM_RESULT anziché DRM_VOID.
  • OEM_TEE_RPROV_WrapProvisioningRequest ora include la chiave di sessione all'input quando disponibile.