Formatting HDCP Keys for HDCP 1.x - 3.1 English

HDMI 1.4/2.0 Receiver Subsystem Product Guide (PG236)

Document ID
PG236
Release Date
2020-12-11
Version
3.1 English

The hdcp_key_utility.c has two (empty) HDCP 1.x key arrays.

  • The Hdcp14Key1 array.

    This array holds the HDCP 1.x RX KSV and Keys.

  • The Hdcp14Key2 array.

    This array holds the HDCP 1.x RX KSV and Keys.

The arrays have a size of 328 bytes and contain the Key Selection Vector (KSV) (5 bytes padded with zeros to 8 bytes) and key set (320 bytes), where each key is 7 bytes padded with zeros to 8 bytes.

To format the HDCP 1.x keys for the key_utility, use the followiing steps:

  1. Discard the 20 byte SHA-1.
  2. Pad each key on the right with one byte of 0s (KSV is already padded).

    You should now have 1 x 8 byte KSV + 40 x 8 byte Keys.

  3. Byte swap each 8 byte set to reverse their order (convert from Little endian to Big endian).
    Note: The facsimile keys given in HDCP 1.4 spec are already in little endian format, so byte swap is not needed when using them for test purpose.

    The final result should be a 328 byte HDCP 1.4 keyset.