概要
Zencoder は、ビデオファイルの AES 暗号化を実行できます。この実装は、HTTP ライブストリーミング (HLS) 出力と互換性があるように設計されていますが、任意のビデオファイルを同様に暗号化するために使用できます。セグメント化された出力に使用すると、セグメントファイルのみが暗号化されます(マニフェスト/プレイリストファイルは想定どおりに読み取り可能なままになります)。HLS 出力の場合、必要なキー/IV データが M3U8 マニフェストファイルに追加され、暗号化キーファイルが他の成果物ファイルに含まれます (該当する場合)。
、、encryption_key
encryption_key_url
encryption_method
、またはの場合に暗号化が有効になります。encryption_key_rotation_period
と指定されている。
暗号化を指定する方法は、使用しているプレーヤーがキーを受け取る方法によって異なります。例えば、VideoJS は (16 進文字列ではない) 生のバイトを期待しており、encryption_key_url
encryption_key
この場合はではなくを使いたい。Zencoder に渡さなければならない16 進数の文字列として指定します。
encryption
encryption_method:String
API バージョン:V1、V2
親:出力
有効な値:「なし」、「aes-128-cbc」、「aes-128-ctr」、「aes-256-cbc」、または「aes-256-ctr」
互換性のあるジョブタイプ: VOD
例: aes-128-cbc
説明:
暗号化に使用する暗号化方法を設定します。
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_method": "aes-128-cbc"
}
]
}
encryption
encryption_key:String
API バージョン:V1、V2
親:出力
有効な値:16 オクテット (32 文字、オプション「0x」プレフィックス) の 16 進数文字列。
互換性のあるジョブの種類: vod
例: a5f6a7d6ef5d6a7a02a23d35dd56a63
説明:
Zencoder に暗号化キーを生成させるのではなく、使用する暗号化キーを 1 つ設定します。暗号化キーを渡すことは、キーのローテーションと互換性がありません。Zencoder は、キーローテーションを使用する場合、暗号化キーを生成して返します。
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key": "a5f6a7d6ef5d6a7a02a23dd35dd56a63"
}
]
}
cryption_key_url
encryption_key_url:String
API バージョン:V1、V2
親:出力
有効な値:16 バイトのバイナリキーを含むファイルへのURL
互換性のあるジョブの種類: vod
例: http://example.com/encryption.key
説明:
Zencoder に暗号化キーを生成させるのではなく、使用する暗号化キーを 1 つ設定します。16 バイトのバイナリキーを含むファイルへの URL として指定します。
これは、HLS マニフェストのキーファイルへの URL として含まれ、暗号化キーファイルは出力に含まれません。encryption_key も指定されていない場合、Zencoder はこのファイルをダウンロードし、それを使用して出力を暗号化しようとします。
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_url": "http://example.com/encryption.key"
}
]
}
cryption_key_rotation_period
encryption_key_rotation_period:Number
API バージョン:V1、V2
親:出力
有効な値:0より大きい数値
互換性のあるジョブの種類: vod
例:10
説明:
Zencoder が暗号化キーを生成する場合、セグメントセットごとに異なるキーを使用し、この数のセグメントの後に新しいキーにローテーションします。
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_rotation_period": 10
}
]
}
encryption_key_url_prefix
encryption_key_url_prefix:String
API バージョン:V1、V2
親:出力
有効な値:URL または相対パス
互換性のあるジョブの種類: vod
例: keys/
説明:
encryption_key_url が指定されていない場合は、マニフェストに含める前に、暗号化キーのファイル名の前にこれを追加します。それ以外の場合、キーはマニフェストファイルと同じパスからアクセス可能であると見なされます。文字列に疑問符が使用されている場合、接頭辞はそのまま使用されます。それ以外の場合は、接頭辞の最後にスラッシュが追加されます(すでにスラッシュで終わっている場合を除く)。
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_url_prefix": "keys/"
}
]
}
cryption_iv
encryption_iv:String
API バージョン:V1、V2
親:出力
有効な値:16 オクテット (32 文字、オプション「0x」プレフィックス) の 16 進数文字列。
互換性のあるジョブの種類: vod
例: a5f6a7d6ef5d6a7a02a23d35dd56a63
説明:
暗号化時に使用する初期化ベクトルを 16 オクテット 16 進数の文字列として設定します。セグメント化された出力では、これを指定しない場合、セグメントはゼロから始まる IV 値のインクリメントで暗号化されます (HLS 仕様に準じます)。
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_iv": "a5f6a7d6ef5d6a7a02a23dd35dd56a63"
}
]
}
encryption
encryption_password:String
API バージョン:V1、V2
親:出力
有効な値:文字列
互換性のあるジョブの種類: vod
例:スーパーシークレットパスワード
説明:
初期化ベクトルの生成に使用するパスワードを設定します。セグメント化された出力ではサポートされません。セグメント化されていない出力には、暗号化_iv または encryption_password のいずれかが必要です。
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_password": "super-secret-password"
}
]
}