Output Encryption

Encoding.com's API can encrypt to a variety of native encryption as well as several commercial DRM platforms. For FlashAccess, PlayReady, Widevine, Atlas, or BuyDRM KeyOS CPIX, please see their respective sections in the API documents.

These more generic open-source methods below are supported by all formats except iphone_stream, ipad_stream, roku_hls, advanced_mss, and advanced_dash formats. Those formats have their own encryption implementation, please refer to their documentation on how to use them.

A destination is required when using encryption without specifying a encryption_key or encryption_key_file. The key used for encryption will be uploaded to the same destination as output file, with a .key extension.

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>[Action]</action> <!-- required-->
    <format>
        <encryption>[yes|no]</encryption>
        <encryption_method>[aes-128-cbc|aes-128-ctr|aes-256-cbc|aes-256-ctr]</encryption_method>
        <encryption_key>[Hexidecimal string]</encryption_key>
        <encryption_key_file>[URL]</encryption_key_file>
        <encryption_iv>[Hexidecimal string]</encryption_iv>
        <encryption_password>[Password]</encryption_password>
    </format>
</query>
{
    "query": {
        "userid": "<<id>>",
        "userkey": "<<key>>",
        "action": "[Action]",
        "format": {
            "encryption": "[yes|no]",
            "encryption_method": "[aes-128-cbc|aes-128-ctr|aes-256-cbc|aes-256-ctr]",
            "encryption_key": "[Hexidecimal string]",
            "encryption_key_file": "[URL]",
            "encryption_iv": "[Hexidecimal string]",
            "encryption_password": "[Password]"
        }
    }
}

Parameter

Description

Allowed Values

Default Value

encryption

Encrypt the output files.

yes,no

no

encryption_method

Specify the encryption method.

aes-128-cbc, aes-128-ctr, aes-256-cbc, aes-256-ctr

aes-128-cbc

encryption_key

Specify the encryption key.

32 hexidecimal characters ([0-9a-f])

None

encryption_key_file

Specify the URL to the encryption key file.

Valid URL to encryption key file.

None

encryption_iv

Specify the encryption initialization vector.

32 hexidecimal characters ([0-9a-f])

None

encryption_password

Specify the password for to generate the initialization vector.

Any set of characters.

None