Use case: Multi-key

The multiple keys feature enables packagers to encrypt the video and audio representations using different keys. For instance, it enables management of Widevine L1/L3 use cases where UHD/SD/AUDIO tracks are encrypted using different keys. Multiple keys relies on the intendedTrackType attribute of the ContentKeyUsageRule.

Following is an example request for Live asset “live_asset“, for Widevine, using different keys for UHD, SD, and AUDIO tracks.

<?xml version="1.0" encoding="utf-8"?> 
<cpix:CPIX xmlns:cpix="urn:dashif:org:cpix" contentId="vod_asset" 
version="2.3">
  <cpix:ContentKeyList>
    <cpix:ContentKey kid="Please contact your Verimatrix representative for further information"/>
    <cpix:ContentKey kid="Please contact your Verimatrix representative for further information"/>
    <cpix:ContentKey kid="Please contact your Verimatrix representative for further information"/>
  </cpix:ContentKeyList>
    <cpix:DRMSystemList>
      <cpix:DRMSystem kid="Please contact your Verimatrix representative for further information" 
systemId="edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"/>
      <cpix:DRMSystem kid="Please contact your Verimatrix representative for further information" 
systemId="edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"/>
      <cpix:DRMSystem kid="Please contact your Verimatrix representative for further information" 
systemId="edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"/>
    </cpix:DRMSystemList>
    <cpix:ContentKeyPeriodList>
      <cpix:ContentKeyPeriod id="keyPeriod_9c786af2-f23f-37d2-a7f9-
c94aaf3c94fe" index="1609335911"/>
    </cpix:ContentKeyPeriodList>
    <cpix:ContentKeyUsageRuleList>
      <cpix:ContentKeyUsageRule intendedTrackType="SD" kid="817d4580-
5752-45fc-af3e-988b4decfef1">
      <cpix:KeyPeriodFilter periodId="keyPeriod_9c786af2-f23f-37d2-
a7f9-c94aaf3c94fe"/>
    </cpix:ContentKeyUsageRule>
    <cpix:ContentKeyUsageRule intendedTrackType="HD" kid="e69f4275-
6cee-4bd7-b78d-37d6bb4fc019">
      <cpix:KeyPeriodFilter periodId="keyPeriod_9c786af2-f23f-37d2-
a7f9-c94aaf3c94fe"/>
    </cpix:ContentKeyUsageRule>
    <cpix:ContentKeyUsageRule intendedTrackType="UHD" kid="3789b5eb-
95c7-47c7-9d15-c2e46ba4f7a1">
      <cpix:KeyPeriodFilter periodId="keyPeriod_9c786af2-f23f-37d2-
a7f9-c94aaf3c94fe"/>
    </cpix:ContentKeyUsageRule>
  </cpix:ContentKeyUsageRuleList>
</cpix:CPIX>

Following is an example response for Live asset “live_asset“, for Widevine, using different keys for UHD, SD, and AUDIO tracks.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cpix:CPIX contentId="vod_asset" xmlns:speke="urn:aws:amazon:com:speke" 
xmlns:pskc="urn:ietf:params:xml:ns:keyprov:pskc" xmlns:enc="http://www.
w3.org/2001/04/xmlenc#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="
http://www.w3.org/2001/XMLSchema" xmlns:cpix="urn:dashif:org:cpix">
  <cpix:ContentKeyList>
    <cpix:ContentKey explicitIV="/0dxXeW21oRdfyG0uHRA2w==" kid="
817d4580-5752-45fc-af3e-988b4decfef1">
      <cpix:Data>
        <pskc:Secret xmlns:pskc="urn:ietf:params:xml:ns:keyprov:
pskc">
          <pskc:PlainValue>0Q5d4gJtM9I3rt/wDLwlyg==</pskc:
PlainValue>
        </pskc:Secret>
      </cpix:Data>
    </cpix:ContentKey>
    <cpix:ContentKey explicitIV="5LfR4nPG/ATVjoNZxJAVfw==" kid="
e69f4275-6cee-4bd7-b78d-37d6bb4fc019">
      <cpix:Data>
        <pskc:Secret xmlns:pskc="urn:ietf:params:xml:ns:keyprov:
pskc">
          <pskc:PlainValue>cxap6XG9rHVb03vN7wEBlg==</pskc:
PlainValue>
        </pskc:Secret>
      </cpix:Data>
    </cpix:ContentKey>
    <cpix:ContentKey explicitIV="odDfeKQiXmTA9pmidfS3Yw==" kid="
3789b5eb-95c7-47c7-9d15-c2e46ba4f7a1">
      <cpix:Data>
        <pskc:Secret xmlns:pskc="urn:ietf:params:xml:ns:keyprov:
pskc">
          <pskc:PlainValue>wVyVZmtdKIhogfmDl+dMEQ==</pskc:
PlainValue>
        </pskc:Secret>
      </cpix:Data>
    </cpix:ContentKey>
  </cpix:ContentKeyList>
  <cpix:DRMSystemList>
    <cpix:DRMSystem kid="Please contact your Verimatrix representative for further information" 
systemId="edef8ba9-79d6-4ace-a3c8-27dcd51d21ed">
      <cpix:
PSSH>AAAAXHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADwSEIF9RYBXUkX8rz6Yi03s
/vESEOafQnVs7kvXt4031rtPwBkSEDeJteuVx0fHnRXC5Guk96FI49yVmwY=</cpix:PSSH>
      <cpix:
ContentProtectionData>PGNlbmM6cHNzaCB4bWxuczpjZW5jPSJ1cm46bXBlZzpjZW5jOj
IwMTMiPkFBQUFYSEJ6YzJnQUFBQUE3ZStMcVhuV1NzNmp5Q2ZjMVIwaDdRQUFBRHdTRUlGOV
JZQlhVa1g4cno2WWkwM3MvdkVTRU9hZlFuVnM3a3ZYdDQwMzFydFB3QmtTRURlSnRldVZ4MG
ZIblJYQzVHdWs5NkZJNDl5Vm13WT08L2NlbmM6cHNzaD4=</cpix:
ContentProtectionData>
      <cpix:
HLSSignalingData>I0VYVC1YLUtFWTpNRVRIT0Q9U0FNUExFLUFFUyxVUkk9ImRhdGE6dGV
4dC9wbGFpbjtiYXNlNjQsQUFBQVhIQnpjMmdBQUFBQTdlK0xxWG5XU3M2anlDZmMxUjBoN1F
BQUFEd1NFSUY5UllCWFVrWDhyejZZaTAzcy92RVNFT2FmUW5Wczdrdlh0NDAzMXJ0UHdCa1N
FRGVKdGV1VngwZkhuUlhDNUd1azk2Rkk0OXlWbXdZPSIsSVY9MHhmZjQ3NzE1ZGU1YjZkNjg
0NWQ3ZjIxYjRiODc0NTJkYixLRVlGT1JNQVQ9InVybjp1dWlkOmVkZWY4YmE5LTc5ZDYtNGF
jZS1hM2M4LTI3ZGNkNTFkMjFlZCIsS0VZRk9STUFUVkVSU0lPTlM9IjEi</cpix:
HLSSignalingData>
    </cpix:DRMSystem>
    <cpix:DRMSystem kid="Please contact your Verimatrix representative for further information" 
systemId="edef8ba9-79d6-4ace-a3c8-27dcd51d21ed">
      <cpix:
PSSH>AAAAXHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADwSEIF9RYBXUkX8rz6Yi03s
/vESEOafQnVs7kvXt4031rtPwBkSEDeJteuVx0fHnRXC5Guk96FI49yVmwY=</cpix:PSSH>
      <cpix:
ContentProtectionData>PGNlbmM6cHNzaCB4bWxuczpjZW5jPSJ1cm46bXBlZzpjZW5jOj
IwMTMiPkFBQUFYSEJ6YzJnQUFBQUE3ZStMcVhuV1NzNmp5Q2ZjMVIwaDdRQUFBRHdTRUlGOV
JZQlhVa1g4cno2WWkwM3MvdkVTRU9hZlFuVnM3a3ZYdDQwMzFydFB3QmtTRURlSnRldVZ4MG
ZIblJYQzVHdWs5NkZJNDl5Vm13WT08L2NlbmM6cHNzaD4=</cpix:
ContentProtectionData>
      <cpix:
HLSSignalingData>I0VYVC1YLUtFWTpNRVRIT0Q9U0FNUExFLUFFUyxVUkk9ImRhdGE6dGV
4dC9wbGFpbjtiYXNlNjQsQUFBQVhIQnpjMmdBQUFBQTdlK0xxWG5XU3M2anlDZmMxUjBoN1F
BQUFEd1NFSUY5UllCWFVrWDhyejZZaTAzcy92RVNFT2FmUW5Wczdrdlh0NDAzMXJ0UHdCa1N
FRGVKdGV1VngwZkhuUlhDNUd1azk2Rkk0OXlWbXdZPSIsSVY9MHhlNGI3ZDFlMjczYzZmZDM
0ZDU4ZTgzNTljNDkwMTU3ZixLRVlGT1JNQVQ9InVybjp1dWlkOmVkZWY4YmE5LTc5ZDYtNGF
jZS1hM2M4LTI3ZGNkNTFkMjFlZCIsS0VZRk9STUFUVkVSU0lPTlM9IjEi</cpix:
HLSSignalingData>
    </cpix:DRMSystem>
    <cpix:DRMSystem kid="Please contact your Verimatrix representative for further information" 
systemId="edef8ba9-79d6-4ace-a3c8-27dcd51d21ed">
      <cpix:
PSSH>AAAAXHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADwSEIF9RYBXUkX8rz6Yi03s
/vESEOafQnVs7kvXt4031rtPwBkSEDeJteuVx0fHnRXC5Guk96FI49yVmwY=</cpix:PSSH>
      <cpix:
ContentProtectionData>PGNlbmM6cHNzaCB4bWxuczpjZW5jPSJ1cm46bXBlZzpjZW5jOj
IwMTMiPkFBQUFYSEJ6YzJnQUFBQUE3ZStMcVhuV1NzNmp5Q2ZjMVIwaDdRQUFBRHdTRUlGOV
JZQlhVa1g4cno2WWkwM3MvdkVTRU9hZlFuVnM3a3ZYdDQwMzFydFB3QmtTRURlSnRldVZ4MG
ZIblJYQzVHdWs5NkZJNDl5Vm13WT08L2NlbmM6cHNzaD4=</cpix:
ContentProtectionData>
      <cpix:
HLSSignalingData>I0VYVC1YLUtFWTpNRVRIT0Q9U0FNUExFLUFFUyxVUkk9ImRhdGE6dGV
4dC9wbGFpbjtiYXNlNjQsQUFBQVhIQnpjMmdBQUFBQTdlK0xxWG5XU3M2anlDZmMxUjBoN1F
BQUFEd1NFSUY5UllCWFVrWDhyejZZaTAzcy92RVNFT2FmUW5Wczdrdlh0NDAzMXJ0UHdCa1N
FRGVKdGV1VngwZkhuUlhDNUd1azk2Rkk0OXlWbXdZPSIsSVY9MHhhMWQwZGY3OGEyZTI1ZTY
0YzBmNjk5YTI3NWY0Yjc2MyxLRVlGT1JNQVQ9InVybjp1dWlkOmVkZWY4YmE5LTc5ZDYtNGF
jZS1hM2M4LTI3ZGNkNTFkMjFlZCIsS0VZRk9STUFUVkVSU0lPTlM9IjEi</cpix:
HLSSignalingData>
    </cpix:DRMSystem>
  </cpix:DRMSystemList>
  <cpix:ContentKeyPeriodList>
    <cpix:ContentKeyPeriod id="keyPeriod_9c786af2-f23f-37d2-a7f9-c94aaf3c94fe" index="1609335911"/>
  </cpix:ContentKeyPeriodList>
  <cpix:ContentKeyUsageRuleList>
    <cpix:ContentKeyUsageRule kid="Please contact your Verimatrix representative for further information" intendedTrackType="SD">
      <cpix:KeyPeriodFilter periodId="keyPeriod_9c786af2-f23f-37d2-a7f9-c94aaf3c94fe"/>
    </cpix:ContentKeyUsageRule>
    <cpix:ContentKeyUsageRule kid="Please contact your Verimatrix representative for further information" intendedTrackType="HD">
      <cpix:KeyPeriodFilter periodId="keyPeriod_9c786af2-f23f-37d2-a7f9-c94aaf3c94fe"/>
    </cpix:ContentKeyUsageRule>
    <cpix:ContentKeyUsageRule kid="Please contact your Verimatrix representative for further information" intendedTrackType="UHD">
      <cpix:KeyPeriodFilter periodId="keyPeriod_9c786af2-f23f-37d2-a7f9-c94aaf3c94fe"/>
    </cpix:ContentKeyUsageRule>
  </cpix:ContentKeyUsageRuleList>
</cpix:CPIX>