HDMI Intel® Arria 10 FPGA IP Design Example User Guide

ID 683156
Date 7/29/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

4.1. High-bandwidth Digital Content Protection (HDCP)

High-bandwidth Digital Content Protection (HDCP) is a form of digital rights protection to create a secure connection between the source to the display.

Intel created the original technology, which is licensed by the Digital Content Protection LLC group. HDCP is a copy protection method where the audio/video stream is encrypted between the transmitter and the receiver, protecting it against illegal copying.

The HDCP features adheres to HDCP Specification version 1.4 and HDCP Specification version 2.3.

The HDCP 1.4 and HDCP 2.3 IPs perform all computation within the hardware core logic with no confidential values (such as private key and session key) being accessible from outside the encrypted IP.

Table 51.  HDCP IP Functions
HDCP IP Functions
HDCP 1.4 IP
  • Authentication exchange
    • Computation of master key (Km)
    • Generation of random An
    • Computation of session key (Ks), M0 and R0.
  • Authentication with repeater
    • Computation and verification of V and V’
  • Link integrity verification
    • Computation of frame key (Ki), Mi and Ri.
  • All cipher modes including hdcpBlockCipher, hdcpStreamCipher, hdcpRekeyCipher, and hdcpRngCipher
  • Original encryption status signaling (DVI) and enhanced encryption status signaling (HDMI)
  • True random number generator (TRNG)
    • Hardware based, full digital implementation and non-deterministic random number generator
HDCP 2.3 IP
  • Master Key (km), Session Key (ks) and nonce (rn, riv) generation
    • Compliant to NIST.SP800-90A random number generation
  • Authentication and key exchange
    • Generation of random numbers for rtx and rrx compliant to NIST.SP800-90A random number generation
    • Signature verification of receiver certificate (certrx) using DCP public key (kpubdcp)
    • 3072 bits RSASSA-PKCS#1 v1.5
    • RSAES-OAEP (PKCS#1 v2.1) encryption and decryption of Master Key (km)
    • Derivation of kd (dkey0, dkey1) using AES-CTR mode
    • Computation and verification of H and H’
    • Computation of Ekh(km) and km (pairing)
  • Authentication with repeater
    • Computation and verification of V and V’
    • Computation and verification of M and M’
  • System renewability (SRM)
    • SRM signature verification using kpubdcp
    • 3072 bits RSASSA-PKCS#1 v1.5
  • Session Key exchange
  • Generation and computation of Edkey(ks) and riv.
  • Derivation of dkey2 using AES-CTR mode
  • Locality Check
    • Computation and verification of L and L’
    • Generation of nonce (rn)
  • Data stream management
    • AES-CTR mode based key stream generation
  • Asymmetric crypto algorithms
    • RSA with modulus length of 1024 (kpubrx) and 3072 (kpubdcp) bits
    • RSA-CRT (Chinese Remainder Theorem) with modulus length of 512 (kprivrx) bits and exponent length of 512 (kprivrx) bits
  • Low-level cryptographic function
    • Symmetric crypto algorithms
      • AES-CTR mode with a key length of 128 bits
    • Hash, MGF and HMAC algorithms
      • SHA256
      • HMAC-SHA256
      • MGF1-SHA256
    • True random number generator (TRNG)
      • NIST.SP800-90A compliant
      • Hardware based, full digital implementation and non-deterministic random number generator