⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 drmxmrdefs.h

📁 本程序为ST公司开发的源代码
💻 H
字号:
/**@@@+++@@@@********************************************************************** Microsoft Windows Media** Copyright (C) Microsoft Corporation. All rights reserved.*****@@@---@@@@*******************************************************************//* * drmxmrdefs.h * * This file describes the XMR License format */#ifndef _DRM_XMR_DEFS_H_#define _DRM_XMR_DEFS_H_#include "drmcommon.h"#include "DrmAes.h"/* * constants, enums and data types */#define XMR_VERSION_1       1#define XMR_MAGIC_CONSTANT  0x584D5200 /* 'XMR\0' */enum XMR_OBJECT_TYPE{    XMR_OBJECT_TYPE_INVALID                                           = 0x0000,    XMR_OBJECT_TYPE_OUTER_CONTAINER                                   = 0x0001,    XMR_OBJECT_TYPE_GLOBAL_POLICY_CONTAINER                           = 0x0002,    XMR_OBJECT_TYPE_MINIMUM_ENVIRONMENT_OBJECT                        = 0x0003,    XMR_OBJECT_TYPE_PLAYBACK_POLICY_CONTAINER                         = 0x0004,    XMR_OBJECT_TYPE_OUTPUT_PROTECTION_OBJECT                          = 0x0005,    XMR_OBJECT_TYPE_UPLINK_KID_OBJECT                                 = 0x0006,    XMR_OBJECT_TYPE_EXPLICIT_ANALOG_VIDEO_OUTPUT_PROTECTION_CONTAINER = 0x0007,    XMR_OBJECT_TYPE_ANALOG_VIDEO_OUTPUT_CONFIGURATION_OBJECT          = 0x0008,    XMR_OBJECT_TYPE_KEY_MATERIAL_CONTAINER                            = 0x0009,    XMR_OBJECT_TYPE_CONTENT_KEY_OBJECT                                = 0x000A,    XMR_OBJECT_TYPE_SIGNATURE_OBJECT                                  = 0x000B,    XMR_OBJECT_TYPE_DEVICE_IDENTIFICATION_OBJECT                      = 0x000C,    XMR_OBJECT_TYPE_SETTINGS_OBJECT                                   = 0x000D,    XMR_OBJECT_TYPE_INCLUSION_LIST_OBJECT                             = 0x0010,    XMR_OBJECT_TYPE_REVOCATIONINFORMATIONVERSION_OBJECT               = 0X0020,    XMR_OBJECT_TYPE_RSA_DEVICE_KEY_OBJECT                             = 0X0021,    XMR_OBJECT_TYPE_SOURCEID_OBJECT                                   = 0X0022,    XMR_OBJECT_TYPE_MAXIMUM_DEFINED                                   = 0x0022};enum XMR_OBJECT_FLAGS{    XMR_FLAGS_MUST_UNDERSTAND                                         = 0x0001,    XMR_FLAGS_CONTAINER                                               = 0x0002};enum XMR_SYMMETRIC_ENCRYPTION_TYPE{    XMR_SYMMETRIC_ENCRYPTION_TYPE_INVALID                             = 0x0000,    XMR_SYMMETRIC_ENCRYPTION_TYPE_AES_128_CTR                         = 0x0001,    /* RESERVED */    XMR_SYMMETRIC_ENCRYPTION_TYPE_AES_128_ECB                         = 0x0003};enum XMR_ASYMMETRIC_ENCRYPTION_TYPE{    XMR_ASYMMETRIC_ENCRYPTION_TYPE_INVALID                            = 0x0000,    XMR_ASYMMETRIC_ENCRYPTION_TYPE_RSA_1024                           = 0x0001,    XMR_ASYMMETRIC_ENCRYPTION_TYPE_CHAINED                            = 0x0002};enum XMR_SIGNATURE_TYPE{    XMR_SIGNATURE_TYPE_INVALID                                        = 0x0000,    XMR_SIGNATURE_TYPE_AES_128_OMAC                                   = 0x0001};typedef struct __tagXMR_INCLUSION_LIST{    DRM_DWORD  cGUIDS;    DRM_GUID   *pGUIDS;} XMR_INCLUSION_LIST;typedef struct __tagXMR_GLOBAL_REQUIREMENTS{    DRM_WORD  wMinAppSecurityLevel;    DRM_DWORD dwReserved1;    DRM_DWORD dwReserved2;    DRM_ID    SerialNumber;    DRM_WORD  wReserved;        DRM_DWORD dwSourceId;    XMR_INCLUSION_LIST il;    DRM_DWORD   dwRevInfoSeq;} XMR_GLOBAL_REQUIREMENTS;typedef struct __tagXMR_MINIMUM_OUTPUT_PROTECTION_LEVELS{    DRM_WORD wReserved1;    DRM_WORD wUncompressedDigitalVideo;    DRM_WORD wAnalogVideo;    DRM_WORD wReserved2;    DRM_WORD wUncompressedDigitalAudio;} XMR_MINIMUM_OUTPUT_PROTECTION_LEVELS;typedef struct __tagXMR_VIDEO_OUTPUT_PROTECTION{    DRM_GUID   guidId;    DRM_DWORD  cbConfigData;    DRM_BYTE  *pbConfigData;} XMR_VIDEO_OUTPUT_PROTECTION;typedef struct __tagXMR_VIDEO_OUTPUT_PROTECTION_IDS{    DRM_DWORD cEntries;    XMR_VIDEO_OUTPUT_PROTECTION *rgVop;} XMR_VIDEO_OUTPUT_PROTECTION_IDS;typedef struct __tagXMR_CONTENT_KEY{    DRM_GUID guidKeyId;    DRM_WORD wSymmetricCipherType;    DRM_WORD wAsymmetricCipherType;    DRM_WORD cbEncryptedKey;    DRM_BYTE *pbEncryptedKey;    } XMR_CONTENT_KEY;typedef struct __tagXMR_UPLINK_KID{    DRM_ID idKID;    DRM_ID idChainedChecksum;} XMR_UPLINK_KID;typedef struct __tagXMR_DEVICE_KEY{    DRM_DWORD  dwExponent;    DRM_WORD   wModulusLength;    DRM_BYTE  *pbModulus;} XMR_DEVICE_KEY;typedef struct __tagXMR_KEY_MATERIAL{    XMR_DEVICE_KEY dk;    XMR_CONTENT_KEY ck;    XMR_UPLINK_KID uk;} XMR_KEY_MATERIAL;   typedef struct __tagXMR_LICENSE{    DRM_ID RightsId;    XMR_GLOBAL_REQUIREMENTS gr;    XMR_MINIMUM_OUTPUT_PROTECTION_LEVELS mopl;    XMR_VIDEO_OUTPUT_PROTECTION_IDS vopi;    XMR_KEY_MATERIAL km;} XMR_LICENSE;typedef struct __tagXMR_ROOT_LICENSE_INFO{    XMR_LICENSE *pXmrLicense;    DRM_ID *pIDChainedChecksum;    DRM_AES_KEY *pAesContentKey;} XMR_ROOT_LICENSE_INFO;#endif /* _DRM_XMR_DEFS_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -