Aperçu
Zencoder peut effectuer le cryptage AES des fichiers vidéo. Notre implémentation est conçue pour être compatible avec les sorties HTTP Live Streaming (HLS), mais peut être utilisée pour crypter tout fichier vidéo de la même manière. Lorsqu'ils sont utilisés pour des sorties segmentées, seuls les fichiers de segment seront chiffrés (laissant les fichiers manifest / playlist lisibles, comme prévu). Pour les sorties HLS, les données de clé / IV nécessaires seront ajoutées au fichier manifeste M3U8 et les fichiers de clé de chiffrement seront inclus avec les autres fichiers livrables, le cas échéant.
Le chiffrement est activé lorsque encryption_key
encryption_key_url
, encryption_method
, ou encryption_key_rotation_period
sont spécifiés.
Notez que la manière dont vous devez spécifier le cryptage dépend de la manière dont le lecteur que vous utilisez s'attend à recevoir la clé. Par exemple, VideoJS attend des octets bruts (pas une chaîne hexadécimale), et dans ce cas, vous souhaitez utiliser encryption_key_url
plutôt que encryption_key
, qui doivent être transmis à Zencoder comme une chaîne hexagonale.
encryption_method
encryption_method:String
Versions de l'API : V2
Parent : sorties
Valeurs valides : « aucun », « aes-128-cbc », « aes-128-ctr », « aes-256-cbc » ou « aes-256-ctr »
Types de tâches compatibles : vod
Exemple : aes-128-cbc
Description :
Définissez la méthode de chiffrement à utiliser pour le chiffrement.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_method": "aes-128-cbc"
}
]
}
clé encryption_
encryption_key:String
Versions de l'API : V2
Parent : sorties
Valeurs valides : Une chaîne hexadécimale de 16 octets (32 caractères, préfixe "0x" facultatif)
Types de tâches compatibles : vod
Exemple : a5f6a7d6ef5d6a7a02a23dd35dd56a63
Description :
Définissez une seule clé de cryptage à utiliser plutôt que de laisser Zencoder en générer une. La transmission d'une clé de chiffrement n'est pas compatible avec la rotation des clés. Zencoder générera et renverra les clés de chiffrement si vous utilisez la rotation des clés.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key": "a5f6a7d6ef5d6a7a02a23dd35dd56a63"
}
]
}
encryption_key_url
encryption_key_url:String
Versions de l'API : V2
Parent : sorties
Valeurs valides : Une URL vers un fichier contenant une clé binaire de 16 octets
Types de tâches compatibles : vod
Exemple : http://example.com/encryption.key
Description :
Définissez une seule clé de cryptage à utiliser plutôt que de laisser Zencoder en générer une. Spécifié comme URL vers un fichier contenant une clé binaire de 16 octets.
Cela sera inclus comme URL du fichier de clé dans les manifestes HLS et aucun fichier de clé de chiffrement ne sera inclus avec la sortie. Si la clé de chiffrement n'est pas également spécifiée, Zencoder tentera de télécharger ce fichier et de l'utiliser pour chiffrer la sortie.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_url": "http://example.com/encryption.key"
}
]
}
encryption_key_rotation_period
encryption_key_rotation_period:Number
Versions de l'API : V2
Parent : sorties
Valeurs valides : Un nombre supérieur à 0
Types de tâches compatibles : vod
Exemple : dix
Description :
Lorsque Zencoder génère des clés de chiffrement, utilisez une clé différente pour chaque ensemble de segments, en effectuant une rotation vers une nouvelle clé après ces nombreux segments.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_rotation_period": 10
}
]
}
encryption_key_url_prefix
encryption_key_url_prefix:String
Versions de l'API : V2
Parent : sorties
Valeurs valides : Une URL ou un chemin relatif
Types de tâches compatibles : vod
Exemple : clés/
Description :
Lorsqu'un encryption_key_url n'est pas spécifié, ajoutez-le aux noms de fichiers de clé de chiffrement avant de les inclure dans le manifeste. Sinon, les clés sont supposées être accessibles à partir du même chemin que le fichier manifeste. Si un point d'interrogation est utilisé dans la chaîne, le préfixe sera utilisé tel quel, sinon une barre oblique sera ajoutée à la fin du préfixe (sauf si elle se termine déjà par une barre oblique).
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_url_prefix": "keys/"
}
]
}
encryption_iv
encryption_iv:String
Versions de l'API : V2
Parent : sorties
Valeurs valides : Une chaîne hexadécimale de 16 octets (32 caractères, préfixe "0x" facultatif)
Types de tâches compatibles : vod
Exemple : a5f6a7d6ef5d6a7a02a23dd35dd56a63
Description :
Définissez un vecteur d'initialisation à utiliser lors du chiffrement, sous la forme d'une chaîne hexadécimale de 16 octets. Sur les sorties segmentées, si cela n'est pas spécifié, les segments seront chiffrés avec des valeurs IV incrémentées, en commençant à zéro (conformément aux spécifications HLS).
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_iv": "a5f6a7d6ef5d6a7a02a23dd35dd56a63"
}
]
}
encryption_password
encryption_password:String
Versions de l'API : V2
Parent : sorties
Valeurs valides : Un string
Types de tâches compatibles : vod
Exemple : mot de passe super secret
Description :
Définit un mot de passe à utiliser pour générer un vecteur d'initialisation. Non pris en charge pour les sorties segmentées. Les sorties non segmentées nécessitent soit encryption_iv, soit encryption_password.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_password": "super-secret-password"
}
]
}