openharmony 鸿蒙 _hdi_drm

2025-06-16 浏览 (1)

HdiDrm

概述

DRM模块接口定义。 DRM是数字版权管理,用于对多媒体内容加密,以便保护价值内容不被非法获取,DRM模块接口定义了DRM实例管理、DRM会话管理、DRM内容解密的接口。

起始版本: 4.1

汇总

文件

名称描述
IMediaDecryptModule.idl定义了DRM内容解密接口、解密模块实例释放接口。
IMediaKeySession.idl定义了DRM会话功能接口。
IMediaKeySessionCallback.idl定义了DRM会话的事件通知接口。
IMediaKeySystem.idl定义了DRM实例的功能接口。
IMediaKeySystemCallback.idl定义了DRM实例的事件通知接口。
IMediaKeySystemFactory.idl定义了DRM实例的工厂方法。
IOemCertificate.idl定义了不同厂商证书下载的接口。
MediaKeySystemTypes.idl定义了HdiDrm使用的类型及结构。

名称描述
interface  IMediaDecryptModule定义内容解密、解密模块实例释放函数。用于解密加密的内容。
interface  IMediaKeySessionDRM会话功能接口,获取/设置许可证、查询当前会话许可证状态、删除当前会话许可证、释放许可证、恢复离线许可证、 判断是否需要安全内存中解密、获取解密模块实例、设置会话消息通知接口、销毁会话。
interface  IMediaKeySessionCallback定义DRM会话的事件通知函数,用于DRM驱动通知DRM框架事件。
interface  IMediaKeySystemDRM实例功能接口,判断是否支持特定DRM方案,创建DRM实例。
interface  IMediaKeySystemCallback定义DRM实例的事件通知函数。
interface  IMediaKeySystemFactoryDRM实例工厂方法接口,判断是否支持特定DRM方案,创建DRM实例。
interface  IOemCertificate厂商证书下载接口。 产生证书下载请求,处理下载的证书。
struct  MediaKeyRequestInfo定义MediaKeyRequestInfo,该信息由IMediaKeySession::GenerateMediaKeyRequest使用。
struct  MediaKeyRequest定义MediaKeyRequest,该信息由IMediaKeySession::GenerateMediaKeyRequest使用。
struct  Pattern定义Pattern,该信息由CryptoInfo使用。
struct  SubSample定义SubSample,该信息由CryptoInfo使用。
struct  CryptoInfo定义CryptoInfo,该信息由IMediaDecryptModule::DecryptMediaData使用。
struct  DrmBuffer定义DrmBuffer,该信息由IMediaDecryptModule::DecryptMediaData使用。

枚举

名称描述
ContentProtectionLevel {
SECURE_UNKNOWN = 0 , SW_SECURE_CRYPTO , HW_SECURE_CRYPTO , HW_ENHANCED_SECURE_CRYPTO , HW_SECURE_MAX
}
内容保护等级。
MediaKeyRequestType {
MEDIA_KEY_REQUEST_TYPE_UNKNOWN = 0 , MEDIA_KEY_REQUEST_TYPE_INITIAL , MEDIA_KEY_REQUEST_TYPE_RENEWAL , MEDIA_KEY_REQUEST_TYPE_RELEASE , MEDIA_KEY_REQUEST_TYPE_NONE , MEDIA_KEY_REQUEST_TYPE_UPDATE
}
许可证请求类型。
EventType {
EVENTTYPE_PROVISIONREQUIRED = 0 , EVENTTYPE_KEYREQUIRED , EVENTTYPE_KEYEXPIRED , EVENTTYPE_VENDOR_DEFINED , EVENTTYPE_EXPIRATIONUPDATE , EVENTTYPE_KEYCHANGE
}
DRM插件监听事件类型。
CryptoAlgorithmType {
ALGTYPE_UNENCRYPTED = 0 , ALGTYPE_AES_CTR , ALGTYPE_AES_WV , ALGTYPE_AES_CBC , ALGTYPE_SM4_CBC , ALGTYPE_SM4_CTR
}
加密算法类型。
OfflineMediaKeyStatus { OFFLINE_MEDIA_KEY_STATUS_UNKNOWN = 0 , OFFLINE_MEDIA_KEY_STATUS_USABLE , OFFLINE_MEDIA_KEY_STATUS_INACTIVE }离线许可证状态。
MediaKeyType { MEDIA_KEY_TYPE_OFFLINE = 0 , MEDIA_KEY_TYPE_ONLINE }许可证类型。
CertificateStatus {
CERT_STATUS_PROVISIONED = 0 , CERT_STATUS_NOT_PROVISIONED , CERT_STATUS_EXPIRED , CERT_STATUS_INVALID , CERT_STATUS_UNAVAILABLE
}
证书状态。
MediaKeySessionKeyStatus {
MEDIA_KEY_SESSION_KEY_STATUS_USABLE = 0 , MEDIA_KEY_SESSION_KEY_STATUS_EXPIRED , MEDIA_KEY_SESSION_KEY_STATUS_OUTPUT_NOT_ALLOWED , MEDIA_KEY_SESSION_KEY_STATUS_PENDING , MEDIA_KEY_SESSION_KEY_STATUS_INTERNAL_ERROR , MEDIA_KEY_SESSION_KEY_STATUS_USABLE_IN_FUTURE
}
会话许可证状态。

枚举类型说明

CertificateStatus

enum CertificateStatus

描述

证书状态。

起始版本: 4.1

枚举值描述
CERT_STATUS_PROVISIONED证书已设置。
CERT_STATUS_NOT_PROVISIONED证书未设置。
CERT_STATUS_EXPIRED证书过期。
CERT_STATUS_INVALID证书无效。
CERT_STATUS_UNAVAILABLE获取证书状态失败。

ContentProtectionLevel

enum ContentProtectionLevel

描述

内容保护等级。

起始版本: 4.1

枚举值描述
SECURE_UNKNOWN未知等级。
SW_SECURE_CRYPTO软件安全等级。
HW_SECURE_CRYPTO硬件安全等级。
HW_ENHANCED_SECURE_CRYPTO增强硬件安全等级。
HW_SECURE_MAX安全等级最大值,用于判断非法安全等级。

CryptoAlgorithmType

enum CryptoAlgorithmType

描述

加密算法类型。

起始版本: 4.1

枚举值描述
ALGTYPE_UNENCRYPTED未加密。
ALGTYPE_AES_CTRaes_ctr加密。
ALGTYPE_AES_WVaes_wv加密。
ALGTYPE_AES_CBCaes_cbc加密。
ALGTYPE_SM4_CBCsm4_cbc加密。
ALGTYPE_SM4_CTRsm4_ctr加密。

EventType

enum EventType

描述

DRM插件监听事件类型。

起始版本: 4.1

枚举值描述
EVENTTYPE_PROVISIONREQUIRED证书下载。
EVENTTYPE_KEYREQUIRED许可证获取。
EVENTTYPE_KEYEXPIRED许可证过期。
EVENTTYPE_VENDOR_DEFINED厂商自定义事件。
EVENTTYPE_EXPIRATIONUPDATE许可证有效期更新。
EVENTTYPE_KEYCHANGE许可证变更。

MediaKeyRequestType

enum MediaKeyRequestType

描述

许可证请求类型。

起始版本: 4.1

枚举值描述
MEDIA_KEY_REQUEST_TYPE_UNKNOWN未知类型。
MEDIA_KEY_REQUEST_TYPE_INITIAL初次请求。
MEDIA_KEY_REQUEST_TYPE_RENEWAL再次许可证请求。
MEDIA_KEY_REQUEST_TYPE_RELEASE释放许可证请求。
MEDIA_KEY_REQUEST_TYPE_NONE无类型。
MEDIA_KEY_REQUEST_TYPE_UPDATE许可证更新请求。

MediaKeySessionKeyStatus

enum MediaKeySessionKeyStatus

描述

会话许可证状态。

起始版本: 4.1

枚举值描述
MEDIA_KEY_SESSION_KEY_STATUS_USABLE许可证可用。
MEDIA_KEY_SESSION_KEY_STATUS_EXPIRED许可证过期。
MEDIA_KEY_SESSION_KEY_STATUS_OUTPUT_NOT_ALLOWED该许可证不允许输出。
MEDIA_KEY_SESSION_KEY_STATUS_PENDING暂时不可用许可证。
MEDIA_KEY_SESSION_KEY_STATUS_INTERNAL_ERROR许可证内部状态错误。
MEDIA_KEY_SESSION_KEY_STATUS_USABLE_IN_FUTURE许可证待生效。

MediaKeyType

enum MediaKeyType

描述

许可证类型。

起始版本: 4.1

枚举值描述
MEDIA_KEY_TYPE_OFFLINE离线许可证。
MEDIA_KEY_TYPE_ONLINE在线许可证。

OfflineMediaKeyStatus

enum OfflineMediaKeyStatus

描述

离线许可证状态。

起始版本: 4.1

枚举值描述
OFFLINE_MEDIA_KEY_STATUS_UNKNOWN未知状态。
OFFLINE_MEDIA_KEY_STATUS_USABLE许可证可用。
OFFLINE_MEDIA_KEY_STATUS_INACTIVE许可证不可用(未在生效时间段内、已过期等)。

你可能感兴趣的鸿蒙文章

harmony 鸿蒙DRM HDI 参考

harmony 鸿蒙CryptoInfo

harmony 鸿蒙DrmBuffer

harmony 鸿蒙IMediaDecryptModule.idl

harmony 鸿蒙IMediaKeySession.idl

harmony 鸿蒙IMediaKeySessionCallback.idl

harmony 鸿蒙IMediaKeySystem.idl

harmony 鸿蒙IMediaKeySystemCallback.idl

harmony 鸿蒙IMediaKeySystemFactory.idl

harmony 鸿蒙IOemCertificate.idl

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/3uZX0E