Granite River Labs (GRL)
By Ray Yang – Test Engineer, GRL (Taipei)
HDCP (High-Bandwidth Digital Content Protection)는 인텔에서 2003년 공식화한 디지털 콘텐츠 보호를 위한 기술 사양입니다. 주로 DVI, HDMI® 및 DisplayPort™와 같은 디지털 인터페이스를 통해 전송되는 고화질 영화 콘텐츠의 불법 녹화를 방지하는 데 사용됩니다. 이 기술을 사용하면 오디오 및 비디오 콘텐츠가 암호화되어 불법 레코더가 원본 HD 오디오 및 비디오를 복원하거나 도용하지 못하도록 방지합니다.
송신기, 수신기 또는 리피터 링크의 어느 쪽 끝에서든 HDCP를 사용할 수 없는 경우 고화질 오디오 및 비디오 콘텐츠를 재생할 수 없습니다. 화질이 480p로 저하되거나 심할 경우 재생을 실패합니다. 고화질 콘텐츠에 대한 수요가 증가함에 따라 디지털 암호화를 지원하는 기술이 점점 더 대중화되고 있습니다. 현재 송신기, 수신기, 비디오 게임 콘솔 등 시중에 판매되는 대부분의 소비자 멀티미디어 시청각 및 엔터테인먼트 제품은 HDCP를 사용합니다.
이 보호 기술을 사용하려는 제조업체는 먼저 디지털 콘텐츠 보호(DCP) 협회에 가입하고 미화 15,000달러의 연회비를 지불해야 합니다. 그런 다음 콘텐츠 암호화를 위한 '키'를 구매해야 하며, 구매 수량에 따라 비용이 달라집니다(표 1 참조).
표 1: HDCP 키 비용
"KEY(키)"에는 HDCP 암호화 프로세스에서 중요한 링크인 특수 키 선택 벡터(KSV)가 포함되어 있습니다. KSV는 20개의 "0"과 20개의 "1"로 구성된 이진 값입니다. 송신기와 수신기는 서로의 KSV를 확인하여 연결이 합법적인지 확인합니다. 각 장치에는 DCP 연결 목록에 저장되는 고유한 키 세트가 있습니다.
키가 크랙되거나 유출되는 것을 방지하기 위해 크랙되거나 유출된 모든 KSV가 포함된 "해지 목록"이 설정되어 있습니다. 송신기는 수신기의 KSV가 목록에 있는지 확인합니다. 그럴 경우 연결이 불법으로 간주되어 비디오 및 오디오 콘텐츠의 재생이 즉시 중단됩니다.
HDCP 시스템에는 송신기, 수신기, 리피터의 세 가지 주요 장치가 있습니다. HDCP1.x 사양에 따르면 시스템에 최대 7계층의 리피터와 128개의 장치를 연결할 수 있습니다(아래 그림 1. 참조).
그림 1: HDCP 시스템 연결(출처: HDCP 사양 Rev1_4)
인증 프로토콜에 따라 송신기와 수신기는 키를 교환합니다. 이를 통해 송신기는 수신기가 HDCP로 암호화된 디지털 비디오 및 오디오 콘텐츠를 수신할 수 있는 인증된 장치인지 여부를 확인할 수 있습니다. 이 인증 프로토콜의 일부로 두 장치는 DCP 조직에서 승인한 장치 개인 키를 사용하여 암호화 계산을 실행합니다. 결과는 장치가 인증되었는지 확인하는 데 사용되는 공유 암호 값인 "Km"이 생성됩니다.
인증 과정에는 세 가지 단계가 있습니다:
1. 인증 프로토콜의 첫 번째 부분
2. 인증 프로토콜의 두 번째 부분
3. 인증 프로토콜의 세 번째 부분
인증 프로토콜 – Part 1
파트 1에서는 송신기와 수신기/ 간에 키를 교환하여 이러한 장치 간의 연결이 합법적인지 확인합니다.
그림 2: HDCP 인증 프로토콜 - 1
Steps:
- 송신기는 언제든지 HDCP 인증을 시작할 수 있습니다.
- 송신기는 수신기에 AKsv와 An을 전송합니다. (AKsv = 송신기의 KSV. An = 임의의 64비트 값).
- 수신기는 Bksv와 REPEATER 비트를 전송하여 응답합니다(Bksv = 수신기의 KSV. REPEATER 비트는 수신자가 리피터인지 여부를 나타냅니다).
- Km(공유 비밀 값)은 매개변수로 송신기에 연결된 장치의 반환된 KSV에 해당하는 비밀 장치 키를 사용하여 56비트 이진수 추가로 계산됩니다. 연결된 장치의 Km은 같은 방법으로 계산됩니다.
HDCP 암호 단위의 경우 Km, 리피터 ||An과 같은 매개 변수를 사용하여 Ks, M0 및 R0을 계산합니다.
Ks: 세션 키 – HDCP 암호 장치의 56비트 비밀 키입니다.
M0: 인증 프로토콜의 파트 2에서 사용되는 64비트 비밀 값입니다.
R0: 인증 교환이 성공했음을 나타내는 수신기에서 송신기로 다시 전송되는 16비트 반환 값입니다.
- R0 = R0'이면 인증이 완료되면 HDCP 복호화가 시작됩니다.
- 송신기는 Aksv를 작성한 후 100ms 이전에 R0' 값을 읽지 않아야 합니다.
인증 프로토콜 – Part 2
파트 2에서는 하위 디바이스가 리피터인 경우 다운스트림 디바이스의 모든 KSV를 수집하여 상위 디바이스에 보고합니다. 이 단계는 디바이스가 리피터인 경우에만 수행됩니다.
그림 3: HDCP 인증 프로토콜 - 2
Steps:
- 송신기는 5초 이내에 단계가 완료되도록 5초 대기 시간을 설정하고 하위 레벨의 KSV 목록과 준비 비트의 상태를 요청합니다.
- 하위 레벨의 리피터는 준비 비트 = 1과 수집된 KSV 리스트를 송신기로 전송합니다.
- 하부 리피터는 수집된 KSV 리스트와 인증 프로토콜 파트 1에서 계산한 Bstatus, M0', SHA-1 계산 방법을 사용하여 V' 를 계산합니다.
- 상위 레벨의 리피터는 동일한 방식으로 V를 계산하고 하위 레벨의 리피터가 반환한 V'와 비교합니다. V≠V' 일 경우, 5초 이내에 송신기에 준비 비트=1을 전송할 수 없으므로 KSV 리스트의 무결성에 문제가 있음을 나타냅니다.
- V=V' 일 경우, Transmitter는 KSV 리스트의 V와 V' 를 다시 확인합니다. 다음과 같은 경우에는 연결을 종료하고 인증 프로세스의 파트 1을 다시 시도합니다:
-
- The size of KSV list exceeds the Transmitter's capacity.
- V≠V’
- The Transmitter has not received Ready bit =1 within five seconds.
리피터는 KSV의 전체 목록을 수집하는 것 외에도 송신기가 전체 HDCP 시스템의 레이어 수와 연결된 장치 수가 상한을 초과하는지 여부를 확인할 수 있도록 Bstatus의 DEVICE_COUNT 및 DEPTH를 송신기에 보고합니다.
인증 프로토콜– Part 3
파트 3에서는 시스템이 두 HDCP 장치의 암호화 주파수와 순서가 일관되고 동기적인지 확인합니다. 동시에 추가 인증 메커니즘을 생성합니다.
그림 4: HDCP 인증 프로토콜 - 3부
Steps:
- 두 기기에서 Ki, Mi, Ri 계산하기
Ki: HDCP 암호 유닛의 복호화 및 암호화를 초기화하는 56비트 값
Mi: HDCP 암호 유닛을 초기화하는 64비트 값
Ri: 송신기와 수신기의 합법성을 확인하는 16비트 값
- "i"는 프레임 번호입니다. 인증 프로토콜의 파트 1이 완료되고 첫 번째 암호화된 프레임이 시작될 때 계산됩니다. 각 프레임 또는 각 암호화된 프레임은 위쪽으로 증가합니다.
- Ri와 Ri' 는 128프레임마다 다시 계산됩니다.
- 송신기는 2초마다 Ri와 Ri' 를 비교합니다.
- 송신기는 1ms 이내에 Ri'를 읽어야 합니다.
- 장치가 HDCP 1 기능을 지원하는 경우 16프레임마다 한 번씩 Pj 값을 확인합니다. 검사 중에 연속으로 세 번의 Pj 오류가 발생하면 픽셀 전송 오류가 식별됩니다.
결론
소비자가 HDCP로 보호되는 블루레이 디스크와 같은 디지털 멀티미디어 오디오 및 비디오 콘텐츠를 시청하려면 DVD 플레이어와 수신기(TV 및 모니터)에 모두 내장된 키와 위의 인증 단계를 실행할 수 있는 기능이 있어야 합니다. 그렇지 않으면 고해상도 디지털 비디오 콘텐츠를 사용할 수 없습니다.
HDMI2.0(가장 최신 버전은 HDMI2.1)의 업데이트에 대응하여 수행된 HDCP1.4에 대한 추가 작업의 일환으로 DPC 협회는 2013년에 HDCP2.2에 대한 보호 메커니즘을 발표했습니다. 이는 2018년에 HDCP2.3으로 추가 업데이트되었습니다.
References
- High-bandwidth Digital Content Protection System, Revision 1.4. 8 July, 2009
- High-bandwidth Digital Content Protection Specification Compliance Test Specification, Revision 1.2. November 18, 2009
Author
Ray Yang – Test Engineer, GRL (Taipei)
국립 대만과학기술대학교 화학공학과를 졸업한 레이 양은 GRL(타이베이)의 테스트 엔지니어입니다. 그는 HDMI 테스트 분야에서 3년 이상의 경력을 쌓았으며 HDMI, MIPI, V by One 및 기타 테스트 사양에 대해 잘 알고 있습니다. 그는 고객이 HDMI 문제를 명확히 파악하고 성공적으로 인증을 획득하도록 돕습니다.