Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
A partir de PlayReady Device Porting Kit versión 4.4, el cliente envía información sobre las características que admite al servidor de licencias como parte de su desafío de adquisición de licencias. Esto incluye las características del entorno de ejecución enriquecido (REE) y las características del entorno de ejecución de confianza (TEE).
A partir de la versión 4.4 del SDK de PlayReady Server, esta información está disponible públicamente para una aplicación a través de la clase LicenseChallenge. (Las versiones anteriores del SDK de PlayReady Server omitirán esta información si están presentes en el desafío de adquisición de licencias). En esta página se describe cómo usar esta característica para tomar decisiones en una aplicación de servidor en función de qué funcionalidad ha implementado el cliente.
Las características se exponen a través de la clase LicenseChallenge en tres catagorías diferentes: propiedades de TEE, API de TEE y características de REE. Para acceder a una categoría individual de características de un cliente, puede utilizar las propiedades del reto de licencia para obtener una lista de opciones enumeradas correspondientes a cada característica o acceder al XML original que contiene información sobre las características enviado dentro del reto de licencia. Las características expuestas en la clase LicenseChallenge a partir de la versión 4.4 se enumeran a continuación con sus valores de enumeración correspondientes.
TeePropertyList:
SUPPORTS_HEVC_HW_DECODING
SUPPORTS_REMOTE_PROVISIONING
SUPPORTS_PRE_PROCESS_ENCRYPTED_DATA
REQUIRES_PRE_PROCESS_ENCRYPTED_DATA_WITH_FULL_FRAMES
REQUIRES_SAMPLE_PROTECTION
SUPPORTS_SECURE_CLOCK
SUPPORTS_SECURE_STOP
SUPPORTS_SECURE_HDCP_TYPE_1
REQUIRES_PREPARE_POLICY_INFO
SUPPORTS_DEBUG_TRACING
REQUIRES_MINIMAL_REVOCATION_DATA
SUPPORTS_OPTIMIZED_CONTENT_KEY2
TeeApiList:
DRM_TEE_BASE_AllocTEEContext
DRM_TEE_BASE_FreeTEEContext
DRM_TEE_BASE_SignDataWithSecureStoreKey
DRM_TEE_BASE_CheckDeviceKeys
DRM_TEE_BASE_GetDebugInformation
DRM_TEE_BASE_GenerateNonce
DRM_TEE_BASE_GetSystemTime
DRM_TEE_LPROV_GenerateDeviceKeys
DRM_TEE_RPROV_GenerateBootstrapChallenge
DRM_TEE_RPROV_ProcessBootstrapResponse
DRM_TEE_RPROV_GenerateProvisioningRequest
DRM_TEE_RPROV_ProcessProvisioningResponse
DRM_TEE_LICPREP_PackageKey
DRM_TEE_SAMPLEPROT_PrepareSampleProtectionKey
DRM_TEE_DECRYPT_PreparePolicyInfo
DRM_TEE_DECRYPT_PrepareToDecrypt
DRM_TEE_DECRYPT_CreateOEMBlobFromCDKB
DRM_TEE_AES128CTR_DecryptContent
DRM_TEE_SIGN_SignHash
DRM_TEE_DOM_PackageKeys
DRM_TEE_RESERVED_20
DRM_TEE_RESERVED_21
DRM_TEE_RESERVED_22
DRM_TEE_RESERVED_23
DRM_TEE_REVOCATION_IngestRevocationInfo
DRM_TEE_LICGEN_CompleteLicense
DRM_TEE_LICGEN_AES128CTR_EncryptContent
DRM_TEE_RESERVED_27
DRM_TEE_RESERVED_28
DRM_TEE_RESERVED_29
DRM_TEE_RESERVED_30
DRM_TEE_RESERVED_31
DRM_TEE_RESERVED_32
DRM_TEE_RESERVED_33
DRM_TEE_H264_PreProcessEncryptedData
DRM_TEE_SECURESTOP_GetGenerationID
DRM_TEE_AES128CTR_DecryptAudioContentMultiple
DRM_TEE_SECURETIME_GenerateChallengeData
DRM_TEE_SECURETIME_ProcessResponseData
DRM_TEE_AES128CTR_DecryptContentMultiple
DRM_TEE_AES128CBC_DecryptContentMultiple
DRM_TEE_SECURESTOP2_GetSigningKeyBlob
DRM_TEE_SECURESTOP2_SignChallenge
DRM_TEE_BASE_GetFeatureInformation
ReeFeatureList:
Assembly
PersistentStorePrealloc
ECCProfiling
ForceAlign
InlineDwordCopy
Bloqueo de Archivos
MultiThreading
Native64BitTypes
PrecomputedECCGlobalTable
Tracing
PersistentStoreWriteThrough
AddLicenseWriteThrough
Sin optimizaciones
DebugBuild
Profiling
Activación
AntirollbackClock
CDMI
CleanStore
ErrorCodeContract
PKCRT
DeviceAssets
Dominios
EmbeddedLicenseStore
PersistentStore
PersistentStoreBlockHeaderCache
CDMIPersistentStore
ContentKeyGeneration
LocalLicenseGeneration
Revocación del Certificado de Medición
Medición
ModelCertificateRevocation
InMemoryOnlyLicenses
Rendimiento
Reactivación
Revocación
SecureDelete
SecureStop
SecureStop2
SecureTime
Serialización Estructurada
Caché de Análisis XML
Adquisición de Licencia
LegacyXmlCertificates
AESCBCS
Hay algunos estados comunes en los que la clase LicenseChallenge puede encontrarse con respecto al conjunto de características del cliente que se expone.
- Si TeePropertyList, TeeApiList y ReeFeatureList están vacíos, significa que el cliente ejecuta una versión de la PK anterior a la 4.4.
- Si ReeFeatureList no está vacío y TeePropertyList y TeeApiList están vacíos, puede significar una de estas dos cosas.
- En los clientes de Windows, el cliente se ejecuta en DRM de software o el TEE del cliente es anterior a la versión 4.4 de PK.
- En clientes que no son windows, el REE del cliente ejecuta PK versión 4.4+ pero el TEE del cliente es anterior a la versión 4.4 de PK.
- Si TeePropertyList, TeeApiList y ReeFeatureList no están vacíos, el cliente ejecuta PK versión 4.4+ para todos los componentes.
- Nota: La TeePropertyList y la TeeApiList son proporcionadas por el TEE del cliente y se puede confiar en ellas por su nivel de seguridad.