개요
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_method:String
API 버전: 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_key:String
API 버전: V2
부모의:출력
유효한 값 : 16옥텟의 16진수 문자열 (32자, 선택적 “0x”접두사)
호환 작업 유형: VOD
예: a5f6a7d6ef5d6a7a02a23dd35dd56a63
설명:
Zencoder에서 생성하는 대신 사용할 단일 암호화 키를 설정하십시오. 암호화 키 전달은 키 순환과 호환되지 않습니다. Zencoder는 키 순환을 사용하는 경우 암호화 키를 생성하고 반환합니다.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key": "a5f6a7d6ef5d6a7a02a23dd35dd56a63"
}
]
}
암호화_키 URL
encryption_key_url:String
API 버전: V2
부모의:출력
유효한 값 : 16바이트 이진 키가 포함된 파일의 URL
호환 작업 유형: VOD
예: http://example.com/encryption.key
설명:
Zencoder에서 생성하는 대신 사용할 단일 암호화 키를 설정하십시오. 16 바이트 바이너리 키를 포함하는 파일에 대한 URL로 지정됩니다.
이는 HLS 매니페스트의 키 파일에 대한 URL로 포함되며 암호화 키 파일은 출력에 포함되지 않습니다. encryption_key도 지정되지 않은 경우 Zencoder는이 파일을 다운로드하여 출력을 암호화하는 데 사용합니다.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_url": "http://example.com/encryption.key"
}
]
}
암호화 키 회전 기간
encryption_key_rotation_period:Number
API 버전: V2
부모의:출력
유효한 값 : 0보다 큰 숫자
호환 작업 유형: VOD
예: 10
설명:
Zencoder가 암호화 키를 생성 할 때 각 세그먼트 세트에 대해 다른 키를 사용하여이 많은 세그먼트 후에 새 키로 회전합니다.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_rotation_period": 10
}
]
}
암호화_키 URL 접두사
encryption_key_url_prefix:String
API 버전: V2
부모의:출력
유효한 값 : URL 또는 상대 경로
호환 작업 유형: VOD
예:키 /
설명:
encryption_key_url이 지정되지 않은 경우 매니페스트에 포함하기 전에 암호화 키 파일 이름 앞에 이것을 추가하십시오. 그렇지 않으면 매니페스트 파일과 동일한 경로에서 키에 액세스 할 수있는 것으로 간주됩니다. 문자열에 물음표가 사용되는 경우 접두사는 그대로 사용되며, 그렇지 않으면 접두사 끝에 슬래시가 추가됩니다 (이미 슬래시로 끝나지 않는 한).
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_key_url_prefix": "keys/"
}
]
}
암호화_iv
encryption_iv:String
API 버전: V2
부모의:출력
유효한 값 : 16옥텟의 16진수 문자열 (32자, 선택적 “0x”접두사)
호환 작업 유형: VOD
예: a5f6a7d6ef5d6a7a02a23dd35dd56a63
설명:
암호화 할 때 사용할 초기화 벡터를 16 옥텟 16 진수 문자열로 설정합니다. 이것이 지정되지 않은 경우 세그먼트 화 된 출력에서 세그먼트는 0부터 시작하여 증가하는 IV 값으로 암호화됩니다 (HLS 사양과 일치).
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_iv": "a5f6a7d6ef5d6a7a02a23dd35dd56a63"
}
]
}
암호화_암호
encryption_password:String
API 버전: V2
부모의:출력
유효한 값 : 문자열
호환 작업 유형: VOD
예:극비 암호
설명:
초기화 벡터를 생성하는 데 사용할 암호를 설정합니다. 분할 된 출력에는 지원되지 않습니다. 세그먼트 화되지 않은 출력에는 encryption_iv 또는 encryption_password가 필요합니다.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"type": "segmented",
"encryption_password": "super-secret-password"
}
]
}