High-bandwidth Digital Content
Protection System
Mapping HDCP to HDMI
Revision 2.2
13 February, 2013
Digital Content Protection LLC
HDCP on HDMI Specification
Revision 2.2
Notice
December 21, 2012
Digital Content Protection LLC
THIS DOCUMENT IS PROVIDED "AS IS" WITH NO WARRANTIES WHATSOEVER, INCLUDING
ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY
PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY
PROPOSAL, SPECIFICATION OR SAMPLE. Intel Corporation disclaims all liability, including liability
for infringement of any proprietary rights, relating to use of information in this specification. No license,
express or implied, by estoppel or otherwise, to any intellectual property rights is granted herein.
The cryptographic functions described in this specification may be subject to export control by the United
States, Japanese, and/or other governments.
Copyright © 1999-2012 by Intel Corporation. Third-party brands and names are the property of their
respective owners.
Acknowledgement
Silicon Image Inc. and Sony Corporation have contributed to the development of this specification.
Intellectual Property
Implementation of this specification requires a license from the Digital Content Protection LLC.
Contact Information
Digital Content Protection LLC
C/O Vital Technical Marketing, Inc.
3855 SW 153rd Drive
Beaverton, OR 97006
Email: info@digital-cp.com
Web: www.digital-cp.com
Revision History
Page 2 of 72
December 21, 2012
Digital Content Protection LLC
HDCP on HDMI Specification
Revision 2.2
Introduction .......................................................................................................... 5
1
Scope............................................................................................................................. 5
1.1
Definitions ...................................................................................................................... 5
1.2
Overview ........................................................................................................................ 8
1.3
Terminology ................................................................................................................... 9
1.4
References .................................................................................................................... 9
1.5
2 Authentication Protocol .................................................................................... 11
Overview ...................................................................................................................... 11
2.1
2.2
Authentication and Key Exchange ............................................................................. 12
2.2.1
Pairing .............................................................................................................................................. 15
2.3
2.4
2.5
Locality Check ............................................................................................................. 16
Session Key Exchange ............................................................................................... 17
Authentication with Repeaters .................................................................................... 18
2.5.1
2.5.2
Upstream Propagation of Topology Information ........................................................................... 18
Downstream Propagation of Content Stream Management Information ...................................... 23
Link Integrity Check ..................................................................................................... 24
2.6
Key Derivation ............................................................................................................. 24
2.7
HDCP Transmitter State Diagram .............................................................................. 25
2.8
HDCP Receiver State Diagram .................................................................................. 30
2.9
2.10 HDCP Repeater State Diagrams ............................................................................... 32
2.10.1
Propagation of Topology Errors ..................................................................................................... 33
2.10.2 HDCP Repeater Downstream State Diagram ................................................................................ 33
2.10.3 HDCP Repeater Upstream State Diagram...................................................................................... 38
2.11 Converters ................................................................................................................... 42
2.11.1 HDCP 2 – HDCP 1.x Converters ................................................................................................... 42
2.11.2 HDCP 1.x – HDCP 2 Converters ................................................................................................... 43
2.12 Session Key Validity .................................................................................................... 45
2.13 Random Number Generation ..................................................................................... 45
2.14 HDCP Port ................................................................................................................... 46
3 HDCP Encryption ............................................................................................... 50
Data Encryption ........................................................................................................... 50
3.1
3.2
HDCP Cipher .............................................................................................................. 51
Encryption Status Signaling ........................................................................................ 52
3.3
3.4
Uniqueness of ks and riv .............................................................................................. 55
4 Authentication Protocol Messages ................................................................. 57
Overview ...................................................................................................................... 57
4.1
4.2
Message Format ......................................................................................................... 57
4.2.1
4.2.2
4.2.3
4.2.4
4.2.5
4.2.6
4.2.7
4.2.8
4.2.9
4.2.10
4.2.11
4.2.12
4.2.13
AKE_Init (Write) ............................................................................................................................ 57
AKE_Send_Cert (Read) ................................................................................................................. 57
AKE_No_Stored_km (Write) ......................................................................................................... 58
AKE_Stored_km (Write) ................................................................................................................ 58
AKE_Send_H_prime (Read) .......................................................................................................... 58
AKE_Send_Pairing_Info (Read) .................................................................................................... 58
LC_Init (Write)................................................................................................................................ 59
LC_Send_L_prime (Read) .............................................................................................................. 59
SKE_Send_Eks (Write) .................................................................................................................. 59
RepeaterAuth_Send_ReceiverID_List (Read) ............................................................................... 59
RepeaterAuth_Send_Ack (Write) ................................................................................................... 60
RepeaterAuth_Stream_Manage (Write) ......................................................................................... 61
RepeaterAuth_Stream_Ready (Read) ............................................................................................ 61
Page 3 of 72
December 21, 2012
Digital Content Protection LLC
HDCP on HDMI Specification
Revision 2.2
5 Renewability ....................................................................................................... 63
SRM Size and Scalability ............................................................................................ 64
5.1
5.2
Updating SRMs ........................................................................................................... 65
Appendix A. Core Functions and Confidentiality and Integrity of Values .... 67
Appendix B. DCP LLC Public Key ...................................................................... 70
Appendix C. Bibliography (Informative) ............................................................ 71
Appendix D. Timing Diagram .............................................................................. 72
Page 4 of 72
HDCP on HDMI Specification
Revision 2.2
1
Introduction
December 21, 2012
Digital Content Protection LLC
1.1 Scope
This specification describes the mapping of High-bandwidth Digital Content Protection (HDCP)
system to HDMI, Revision 2.20.
For the purpose of this specification, it is assumed that the Audiovisual content is transmitted over
a HDMI based wired display link. In an HDCP System, two or more HDCP Devices are
interconnected through an HDCP-protected Interface. The Audiovisual Content flows from the
Upstream Content Control Function into the HDCP System at the most upstream HDCP
Transmitter. From there the Audiovisual Content encrypted by the HDCP System, referred to as
HDCP Content, flows through a tree-shaped topology of HDCP Receivers over HDCP-protected
Interfaces. This specification describes a content protection mechanism for: (1) authentication of
HDCP Receivers to their immediate upstream connection (i.e., an HDCP Transmitter), (2)
revocation of HDCP Receivers that are determined by the Digital Content Protection, LLC, to be
invalid, and (3) HDCP Encryption of Audiovisual Content over the HDCP-protected Interfaces
between HDCP Transmitters and their downstream HDCP Receivers. HDCP Receivers may
render the HDCP Content in audio and visual form for human consumption. HDCP Receivers
may be HDCP Repeaters that serve as downstream HDCP Transmitters emitting the HDCP
Content further downstream to one or more additional HDCP Receivers.
Unless otherwise specified, the term “HDCP Receiver” is also used to refer to the upstream
HDCP-protected interface port of an HDCP Repeater. Similarly, the term “HDCP Transmitter” is
also used to refer to the downstream HDCP-protected interface port of an HDCP Repeater. HDCP
Transmitters must support HDCP Repeaters.
The state machines in this specification define the required behavior of HDCP Devices. The link-
visible behavior of HDCP Devices implementing the specified state machines must be identical,
even if implementations differ from the descriptions. The behavior of HDCP Devices
implementing the specified state machines must also be identical from the perspective of an entity
outside of the HDCP System.
Implementations must include all elements of the content protection system described herein,
unless the element is specifically identified as informative or optional. Adopters must also ensure
that implementations satisfy the robustness and compliance rules described in the technology
license.
Device discovery and association, and link setup and teardown, is outside the scope of this
specification.
1.2 Definitions
The following terminology, as used throughout this specification, is defined as herein:
Audiovisual Content. Audiovisual works (as defined in the United States Copyright Act as in
effect on January 1, 1978), text and graphic images, are referred to as AudioVisual Content.
Authorized Device. An HDCP Device that is permitted access to HDCP Content is referred to as
an Authorized Device. An HDCP Transmitter may test if a connected HDCP Receiver is an
Authorized Device by successfully completing the following stages of the authentication protocol
– Authentication and Key Exchange (AKE) and Locality check. If the authentication protocol
successfully results in establishing authentication, then the other device is considered by the HDCP
Transmitter to be an Authorized Device.
Page 5 of 72
HDCP on HDMI Specification
Revision 2.2
December 21, 2012
Digital Content Protection LLC
Content Stream. Content Stream consists of Audiovisual Content received from an Upstream
Content Control Function that is to be encrypted and Audiovisual Content received from an
Upstream Content Control Function that is encrypted by the HDCP System.
Device Key Set. An HDCP Receiver has a Device Key Set, which consists of its corresponding
Device Secret Keys along with the associated Public Key Certificate.
Device Secret Keys. For an HDCP Transmitter, Device Secret Key consists of the secret Global
Constant. For an HDCP Receiver, Device Secret Keys consists of the secret Global Constant and
the RSA private key. The Device Secret Keys are to be protected from exposure outside of the
HDCP Device.
downstream. The term, downstream, is used as an adjective to refer to being towards the sink of
the HDCP Content. For example, when an HDCP Transmitter and an HDCP Receiver are
connected over an HDCP-protected Interface, the HDCP Receiver can be referred to as the
downstream HDCP Device in this connection. For another example, on an HDCP Repeater, the
HDCP-protected Interface Port(s) which can emit HDCP Content can be referred to as its
downstream HDCP-protected Interface Port(s). See also, upstream.
Enhanced Encryption Status Signaling (EESS). EESS, further described in Section 3.3, is a
protocol for signaling whether encryption is enabled or disabled for a frame.
frame. For purposes of the HDCP specification, a frame consists of the pixel data between vertical
synchronization signals. HDCP may be used with both progressive and interlaced video formats.
For interlaced video, every field is an HDCP frame.
Global Constant. A 128-bit random, secret constant provided only to HDCP adopters and used
during HDCP Content encryption or decryption
HDCP 1.x. HDCP 1.x refers to, specifically, the variant of HDCP described by Revision 1.00 and
higher versions along with their associated errata, if applicable.
HDCP 1.x-compliant Device. An HDCP Device that is designed in adherence to HDCP 1.x,
defined above, is referred to as an HDCP 1.x-compliant Device.
HDCP 2. HDCP 2 refers to, specifically, the variant of HDCP mapping for all HDCP protected
interfaces described by Revision 2.00 and higher versions along with their associated errata, if
applicable.
HDCP 2.0. HDCP 2.0 refers to, specifically, the variant of HDCP mapping for all HDCP
protected interfaces described by Revision 2.00 of the corresponding specifications along with
their associated errata, if applicable.
HDCP 2.0-compliant Device. An HDCP Device that is designed in adherence to HDCP 2.0 is
referred to as an HDCP 2.0-compliant Device.
HDCP 2.2. HDCP 2.2 refers to, specifically, the variant of HDCP mapping described by Revision
2.20 of this specification along with its associated errata, if applicable.
HDCP 2.2-compliant Device. An HDCP Device that is designed in adherence to HDCP 2.2 is
referred to as an HDCP 2.2-compliant Device.
HDCP Cipher. The HDCP encryption module consisting of a 128-bit AES module that is
operated in a Counter (CTR) mode is referred to as HDCP Cipher.
Page 6 of 72
HDCP on HDMI Specification
Revision 2.2
December 21, 2012
Digital Content Protection LLC
HDCP Content. HDCP Content consists of Audiovisual Content that is protected by the HDCP
System. HDCP Content includes the Audiovisual Content in encrypted form as it is transferred
from an HDCP Transmitter to an HDCP Receiver over an HDCP-protected Interface, as well as
any translations of the same content, or portions thereof. For avoidance of doubt, Audiovisual
Content that is never encrypted by the HDCP System is not HDCP Content.
HDCP Device. Any device that contains one or more HDCP-protected Interface Port and is
designed in adherence to HDCP is referred to as an HDCP Device.
HDCP Encryption. HDCP Encryption is the encryption technology of HDCP when applied to
the protection of HDCP Content in an HDCP System.
HDCP Receiver. An HDCP Device that can receive and decrypt HDCP Content through one or
more of its HDCP-protected Interface Ports is referred to as an HDCP Receiver.
HDCP Repeater. An HDCP Device that can receive and decrypt HDCP Content through one or
more of its HDCP-protected Interface Ports, and can also re-encrypt and emit said HDCP Content
through one or more of its HDCP-protected Interface Ports, is referred to as an HDCP Repeater.
An HDCP Repeater may also be referred to as either an HDCP Receiver or an HDCP Transmitter
when referring to either the upstream side or the downstream side, respectively.
HDCP Session. An HDCP Session is established between an HDCP Transmitter and HDCP
Receiver with the transmission or reception of the authentication initiation message, AKE_Init.
The established HDCP Session remains valid until it is aborted by the HDCP Transmitter or a new
HDCP Session is established, which invalidates the HDCP Session that was previously
established, by the transmission or reception of a new AKE_Init message.
HDCP System. An HDCP System consists of an HDCP Transmitter, zero or more HDCP
Repeaters and one or more HDCP Receivers connected through their HDCP-protected interfaces
in a tree topology; whereas the said HDCP Transmitter is the HDCP Device most upstream, and
receives the Audiovisual Content from one or more Upstream Content Control Functions. All
HDCP Devices connected to other HDCP Devices in an HDCP System over HDCP-protected
Interfaces are part of the HDCP System.
HDCP Transmitter. An HDCP Device that can encrypt and emit HDCP Content through one or
more of its HDCP-protected Interface Ports is referred to as an HDCP Transmitter.
HDCP. HDCP is an acronym for High-bandwidth Digital Content Protection. This term refers to
this content protection system as described by any revision of this specification and its errata.
HDCP_HPD (HDCP Hot Plug Detect). For HDCP1.0, HDCP1.1, HDCP1.2, HDCP1.3 devices,
hot plug detection is signaled by means of the physical Hot Plug Detect (HPD) line. HDCP1.4 and
HDCP 2.2 devices use the HDCP_HPD signal (or state) in place of the physical HPD line. For
devices providing HDMI support for CP&EDID_HPD (Content Protection and EDID HPD) as
specified in the HDMI1.4 specification, HDCP_HPD maps directly to the CP&EDID_HPD signal
(or state) received from the HDMI logic. For devices not providing HDMI support for
CP&EDID_HPD, HDCP_HPD maps directly to the physical HPD line.
HDCP-protected Interface Port. A connection point on an HDCP Device that supports an
HDCP-protected Interface is referred to as an HDCP-protected Interface Port.
HDCP-protected Interface. An interface for which HDCP applies is described as an HDCP-
protected Interface.
Page 7 of 72
HDCP on HDMI Specification
Revision 2.2
December 21, 2012
Digital Content Protection LLC
I2C Bus. A bus linking the HDCP Transmitter and HDCP Receiver compliant with the Video
Electronics Standards Association (VESA) Digital Display Channel (DDC) specification as
required by the HDMI Specification.
Master Key. A 128-bit random, secret cryptographic key negotiated between the HDCP
Transmitter and the HDCP Receiver during Authentication and Key Exchange and used to pair the
HDCP Transmitter with the HDCP Receiver.
Public Key Certificate. Each HDCP Receiver is issued a Public Key Certificate signed by DCP
LLC, and contains the Receiver ID and RSA public key corresponding to the HDCP Receiver.
Receiver ID. A 40-bit value that uniquely identifies the HDCP Receiver. It has the same format as
an HDCP 1.x KSV i.e. it contains 20 ones and 20 zeroes.
Session Key. A 128-bit random, secret cryptographic key negotiated between the HDCP
Transmitter and the HDCP Receiver during Session Key exchange and used during HDCP
Content encryption or decryption.
Upstream Content Control Function. The HDCP Transmitter most upstream in the HDCP
System receives Audiovisual Content to be protected from the Upstream Content Control
Function. The Upstream Content Control Function is not part of the HDCP System, and the
methods used, if any, by the Upstream Content Control Function to determine for itself the HDCP
System is correctly authenticated or permitted to receive the Audiovisual Content, or to transfer the
Audiovisual Content to the HDCP System, are beyond the scope of this specification. On a
personal computer platform, an example of an Upstream Content Control Function may be
software designed to emit Audiovisual Content to a display or other presentation device that
requires HDCP.
upstream. The term, upstream, is used as an adjective to refer to being towards the source of the
HDCP Content. For example, when an HDCP Transmitter and an HDCP Receiver are connected
over an HDCP-protected Interface, the HDCP Transmitter can be referred to as the upstream
HDCP Device in this connection. For another example, on an HDCP Repeater, the HDCP-
protected Interface Port(s) which can receive HDCP Content can be referred to as its upstream
HDCP-protected Interface Port(s). See also, downstream.
1.3 Overview
1. HDCP is designed to protect the transmission of Audiovisual Content between an HDCP
Transmitter and an HDCP Receiver. The HDCP Transmitter may support simultaneous
connections to HDCP Receivers through one or more of its HDCP-protected interface ports.
The system also allows for HDCP Repeaters that support downstream HDCP-protected
Interface Ports. The HDCP System allows up to four levels of HDCP Repeaters and as many
as 32 total HDCP Devices, including HDCP Repeaters, to be connected to an HDCP-
protected Interface port.
Figure 1.1 illustrates an example connection topology for HDCP Devices.
Page 8 of 72