SPEKEAPIv1 - Enkripsi kunci konten - Spesifikasi Pertukaran Kunci Pengemas dan Encoder Aman API

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

SPEKEAPIv1 - Enkripsi kunci konten

Anda dapat menambahkan enkripsi kunci konten secara opsional ke SPEKE implementasi Anda. Enkripsi kunci konten menjamin end-to-end perlindungan penuh dengan mengenkripsi kunci konten untuk transit, selain mengenkripsi konten itu sendiri. Jika Anda tidak menerapkan ini untuk penyedia kunci Anda, Anda mengandalkan enkripsi lapisan transport ditambah otentikasi yang kuat untuk keamanan.

Untuk menggunakan enkripsi kunci konten untuk enkripsi yang berjalan di AWS Cloud, pelanggan mengimpor sertifikat ke AWS Certificate Manager dan kemudian menggunakan sertifikat yang dihasilkan ARNs untuk aktivitas enkripsi mereka. Enkripsi menggunakan sertifikat ARNs dan ACM layanan untuk menyediakan kunci konten terenkripsi ke penyedia kunci. DRM

Pembatasan

SPEKEmendukung enkripsi kunci konten seperti yang ditentukan dalam CPIX spesifikasi DASH -IF dengan batasan berikut:

  • SPEKEtidak mendukung verifikasi tanda tangan digital (XMLDSIG) untuk muatan permintaan atau respons.

  • SPEKEmembutuhkan sertifikat RSA berbasis 2048.

Pembatasan ini juga tercantum dalam Kustomisasi dan kendala untuk spesifikasi -IF. DASH

Menerapkan enkripsi kunci konten

Untuk menyediakan enkripsi kunci konten, sertakan yang berikut ini dalam implementasi penyedia DRM kunci Anda:

  • Tangani elemen <cpix:DeliveryDataList> dalam permintaan dan muatan respons.

  • Berikan nilai terenkripsi dalam <cpix:ContentKeyList> muatan respons.

Untuk informasi selengkapnya tentang elemen-elemen ini, lihat spesifikasi DASH -IF CPIX 2.0.

Contoh Elemen Enkripsi Kunci Konten <cpix:DeliveryDataList> di Muatan Permintaan

Contoh berikut menyoroti <cpix:DeliveryDataList> elemen yang ditambahkan dalam huruf tebal:

<?xml version="1.0" encoding="UTF-8"?> <cpix:CPIX id="example-test-doc-encryption" xmlns:cpix="urn:dashif:org:cpix" xmlns:pskc="urn:ietf:params:xml:ns:keyprov:pskc" xmlns:speke="urn:aws:amazon:com:speke"> <cpix:DeliveryDataList> <cpix:DeliveryData id="<ORIGIN SERVER ID>"> <cpix:DeliveryKey> <ds:X509Data> <ds:X509Certificate><X.509 CERTIFICATE, BASE-64 ENCODED></ds:X509Certificate> </ds:X509Data> </cpix:DeliveryKey> </cpix:DeliveryData> </cpix:DeliveryDataList> <cpix:ContentKeyList> ... </cpix:ContentKeyList> </cpix:CPIX>

Contoh Elemen Enkripsi Kunci Konten <cpix:DeliveryDataList> di Payload Respons

Contoh berikut menyoroti <cpix:DeliveryDataList> elemen yang ditambahkan dalam huruf tebal:

<cpix:CPIX xmlns:cpix="urn:dashif:org:cpix" xmlns:enc="http://www.w3.org/2001/04/xmlenc#" xmlns:pskc="urn:ietf:params:xml:ns:keyprov:pskc" xmlns:speke="urn:aws:amazon:com:speke" id="hls_test_001"> <cpix:DeliveryDataList> <cpix:DeliveryData id="<ORIGIN SERVER ID>"> <cpix:DeliveryKey> <ds:X509Data> <ds:X509Certificate><X.509 CERTIFICATE, BASE-64 ENCODED></ds:X509Certificate> </ds:X509Data> </cpix:DeliveryKey> <cpix:DocumentKey Algorithm="http://www.w3.org/2001/04/xmlenc#aes256-cbc"> <cpix:Data> <pskc:Secret> <pskc:EncryptedValue> <enc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p" /> <enc:CipherData> <enc:CipherValue><RSA CIPHER VALUE></enc:CipherValue> </enc:CipherData> </pskc:EncryptedValue> <pskc:ValueMAC>qnei/5TsfUwDu+8bhsZrLjDRDngvmnUZD2eva7SfXWw=</pskc:ValueMAC> </pskc:Secret> </cpix:Data> </cpix:DocumentKey> <cpix:MACMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"> <cpix:Key> <pskc:EncryptedValue> <enc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p" /> <enc:CipherData> <enc:CipherValue><RSA CIPHER VALUE></enc:CipherValue> </enc:CipherData> </pskc:EncryptedValue> <pskc:ValueMAC>DGqdpHUfFKxdsO9+EWrPjtdTCVfjPLwwtzEcFC/j0xY=</pskc:ValueMAC> </cpix:Key> </cpix:MACMethod> </cpix:DeliveryData> </cpix:DeliveryDataList> <cpix:ContentKeyList> ... </cpix:ContentKeyList> </cpix:CPIX>

Contoh Elemen Enkripsi Kunci Konten <cpix:ContentKeyList> di Payload Respons

Contoh berikut menunjukkan penanganan kunci konten terenkripsi dalam <cpix:ContentKeyList> elemen payload respons. Ini menggunakan <pskc:EncryptedValue> elemen:

<cpix:ContentKeyList> <cpix:ContentKey kid="682681c8-69fa-4434-9f9f-1a7f5389ec02"> <cpix:Data> <pskc:Secret> <pskc:EncryptedValue> <enc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes256-cbc" /> <enc:CipherData> <enc:CipherValue>NJYebfvJ2TdMm3k6v+rLNVYb0NoTJoTLBBdbpe8nmilEfp82SKa7MkqTn2lmQBPB</enc:CipherValue> </enc:CipherData> </pskc:EncryptedValue> <pskc:ValueMAC>t9lW4WCebfS1GP+dh0IicMs+2+jnrAmfDa4WU6VGHc4=</pskc:ValueMAC> </pskc:Secret> </cpix:Data> </cpix:ContentKey> </cpix:ContentKeyList>

Sebagai perbandingan, contoh berikut menunjukkan muatan respons serupa dengan kunci konten yang dikirimkan tanpa enkripsi, sebagai kunci yang jelas. Ini menggunakan <pskc:PlainValue> elemen:

<cpix:ContentKeyList> <cpix:ContentKey explicitIV="OFj2IjCsPJFfMAxmQxLGPw==" kid="682681c8-69fa-4434-9f9f-1a7f5389ec02"> <cpix:Data> <pskc:Secret> <pskc:PlainValue>5dGAgwGuUYu4dHeHtNlxJw==</pskc:PlainValue> </pskc:Secret> </cpix:Data> </cpix:ContentKey> </cpix:ContentKeyList>