3.1.5.1.1 Request Behavior
The DRM Version 1 License Request packet is used by the client to request a license for protected media content.

Figure 3: DRM Version 1 License Request packet process
The client generates a license request and sends it to a license server. The request is a binary string that is partially RC4-encrypted and then encoded by using the base64 encoding algorithm.
The higher layer MUST set appropriate values for ClientCertificate, RightsRequested, ClientAppSec, and KeyIdentifier. The client generates a 16-byte random number as SessionKey (internal state). The client populates a DRM Version 1 License Request packet with the following mapping:
ClientCertificate ->pkcert
RightsRequested ->Mapping of the rights strings to a 4 byte array of Rights described in section 2.2.3.1.3
ClientAppSec ->AppSec
KeyIdentifier ->KeyID
SessionKey is encrypted with a global license server public key KS and placed in the packet as EncRandNum.
SessionKey is used as the seed to RC4, and all packet elements after EncRandNum are encrypted with the resulting RC4 stream cipher.
After encryption, the string is base64-encoded. The client application then appends the string "&DRMVer=1.4". Note that the value for "DRMVer" can vary based on the client application. Depending on the implementation, the client application can append "&embedded=true" if the player is embedded in an HTML page; it can append "&embedded=false" if the player is not embedded in an HTML page; or it can also append nothing. The resulting string is a uniform resource locator (URL) that is sent to the license server as an HTTP GET request.