The WMRMChallenge object is used to process a challenge from the client. A challenge is a request from the consumer for a license and contains the following information:
- Version 10 content header (backward compatible with version 7.1):
- The key ID used to create a key.
- A content ID to uniquely identify the encrypted content.
- Attributes that identify the content.
- A URL identifying the Internet address of the license issuer (the license acquisition URL).
- The minimum application security version number required to play content.
- Information about the consumer's computer:
- An encrypted client ID.
- The version of Windows Media Rights Manager on the consumer's computer.
- The individualized version number on the consumer's computer.
- Information about the secure audio path (SAP) kernel component.
- An action list indicating the rights requested by the consumer. This list is not included in a challenge if the RMGetLicense.GetLicenseFromURL method is used.
- An optional Windows Media Rights Manager version 1 challenge This is included because versions of the player earlier than version 7 cannot process version 7 or later licenses. However, it is not included when a license is predelivered.
You must retrieve this information from the challenge before using the WMRMLicGen object to place it in a license. The WMRMChallenge object exposes the following properties and method.
|Action||Retrieves a specific action from the list of actions requested in a challenge.|
|ActionCount||Retrieves the number of actions requested in a challenge.|
|Challenge||Specifies and retrieves the license request.|
|ClientAttribute||Retrieves a specific name-value pair from the client information section of a challenge.|
|ClientInfo||Retrieves the consumer information section from a challenge.|
|ClientVersion||Retrieves the version of the DRM component on the client.|
|Header||Retrieves the header section from a challenge.|
|RevInfo||Retrieves revocation information from a license challenge.|
|RevInfoPresent||Indicates whether a license challenge contains revocation information.|
|Uplinks||Retrieves the uplink ID information from a challenge, indicating which elements are part of the content's license chain.|
|V1Challenge||Retrieves the version 1 license request, if present, from the version 10 challenge.|
|CheckClientCapability||Determines whether the DRM component of a player supports application exclusion and Secure Audio Path, and whether it is based on Windows Media Format 9 Series SDK or later.|