VerifHub allows Verifpal® users to easily share and discuss Verifpal models of cryptographic protocols. The VerifHub service provides unique URIs for each shared model which includes a syntax-highlighted model, an automatically generated diagram and a summary of the analysis results.

Switch to Diagram View


Submitted on 31 Oct 20 20:29 UTC. attacker[active] principal Hdcp_transmitter[ generates r_tx generates repeater ] principal Hdcp_receiver[ knows private s cert_receiver_id = G^s ] Hdcp_transmitter -> Hdcp_receiver: r_tx, repeater Hdcp_receiver -> Hdcp_transmitter: [cert_receiver_id] principal Hdcp_transmitter[ generates k_m enc_k_m = PKE_ENC(cert_receiver_id, k_m) ] Hdcp_transmitter -> Hdcp_receiver: enc_k_m principal Hdcp_receiver[ generates r_rx ] Hdcp_receiver -> Hdcp_transmitter: r_rx principal Hdcp_receiver[ dec_k_m = PKE_DEC(s, enc_k_m) k_d = ENC(r_tx, dec_k_m) xor = CONCAT(r_rx, repeater) h_prime = MAC(k_d, xor) ] Hdcp_receiver -> Hdcp_transmitter: h_prime principal Hdcp_transmitter[ k_d_verify = ENC(r_tx, k_m) xor_verify = CONCAT(r_rx, repeater) h = MAC(k_d_verify, xor_verify) _ = ASSERT(h, h_prime)? ] queries[ freshness? r_tx authentication? Hdcp_transmitter -> Hdcp_receiver: enc_k_m authentication? Hdcp_receiver -> Hdcp_transmitter: h_prime confidentiality? k_m freshness? k_m ]
Switch to Model View
Title:HDCPv21_AKE.vp Note over Hdcp_transmitter: generates r_tx\n generates repeater\n Note over Hdcp_receiver: knows private s\n cert_receiver_id = G^s\n Hdcp_transmitter -> Hdcp_receiver: r_tx, repeater Hdcp_receiver -> Hdcp_transmitter: [cert_receiver_id] Note over Hdcp_transmitter: generates k_m\n enc_k_m = PKE_ENC(cert_receiver_id, k_m)\n Hdcp_transmitter -> Hdcp_receiver: enc_k_m Note over Hdcp_receiver: generates r_rx\n Hdcp_receiver -> Hdcp_transmitter: r_rx Note over Hdcp_receiver: dec_k_m = PKE_DEC(s, enc_k_m)\n k_d = ENC(r_tx, dec_k_m)\n xor = CONCAT(r_rx, repeater)\n h_prime = MAC(k_d, xor)\n Hdcp_receiver -> Hdcp_transmitter: h_prime Note over Hdcp_transmitter: k_d_verify = ENC(r_tx, k_m)\n xor_verify = CONCAT(r_rx, repeater)\n h = MAC(k_d_verify, xor_verify)\n _ = ASSERT(h, h_prime)?\n

Analysis Results

The model submitter provided the following analysis results:

Please note that these results are not verified to be accurate. The model submitter may choose to provide false analysis results if they so desire. It is strongly recommended that you re-run the analysis of this model locally if you wish to verify the authenticity of the analysis results above.

Discuss This Model

© Copyright 2019- Nadim Kobeissi. All Rights Reserved. “Verifpal” and the “Verifpal” logo/mascot are registered trademarks of Nadim Kobeissi. Verifpal software is provided as free and open source software, licensed under the GPLv3. Verifpal User Manual, as well as this website, are provided under the CC BY-NC-ND 4.0 license. Published by Symbolic Software.