ZRTP

ZRTP

ZRTP is a cryptographic key-agreement protocol to negotiate the keys to encrypt VoIP phone calls. ZRTP describes a method of Diffie-Hellman key agreement for Secure Real-time Transport Protocol (SRTP). It was submitted to the IETF by Phil Zimmermann, Jon Callas and Alan Johnston on March 5, 2006.

Overview

ZRTP is described in the Internet-Draft as a "key agreement protocol which performs Diffie-Hellman key exchange during call setup in-band in the Real-time Transport Protocol (RTP) media stream which has been established using some other signaling protocol such as Session Initiation Protocol (SIP). This generates a shared secret which is then used to generate keys and salt for a Secure RTP (SRTP) session." One of ZRTP's features is that it does not rely on SIP signaling for the key management, or on any servers at all. It supports opportunistic encryption by auto-sensing if the other VoIP client supports ZRTP.

This protocol does not require prior shared secrets or rely on a Public key infrastructure (PKI) or on certification authorities, in fact ephemeral Diffie-Hellman keys are generated on each session establishment: this allows to bypass the complexity of creating and maintaining a trusted third-party.

These keys will contribute to the generation of the session secret, from which the session key and parameters for SRTP sessions will come, along with previously shared secrets (if some): this gives protection against man in the middle (MitM) attacks, assuming the attacker was not present in the first session between the two endpoints.

To ensure that the attacker is indeed not present in the first session (when no shared secrets exist) , the Short Authentication String method is used: the two endpoint compare a value by reading it aloud.In case the two values match, then no MitM attack has been performed.

ZRTP can be used with any signaling protocol, including SIP, H.323, Jingle, and Peer-to-Peer SIP. ZRTP is independent of the signaling layer, because it does all its key negotiations in the RTP media stream.

Authentication

The Diffie-Hellman key exchange by itself does not provide protection against man in the middle (MitM) attacks. To authenticate the key exchange, ZRTP uses a "Short Authentication String" (SAS), which is essentially a cryptographic hash of the two Diffie-Hellman values. The SAS value is rendered to both ZRTP endpoints. To carry out authentication, this SAS value is read aloud to the communication partner over the voice connection. If the values on both ends do not match, it indicates the presence of a man-in-middle attack. If they do match, there is a high probability that no man-in-the-middle is present. The use of hash commitment in the DH exchange constrains the attacker to only one guess to generate the correct SAS in his attack, which means the SAS can be quite short. A 16-bit SAS, for example, provides the attacker only one chance out of 65536 of not being detected.

ZRTP provides a second layer of authentication against a MitM attack, based on a form of key continuity. It does this by caching some hashed key material to use in the next call, to be mixed in with the next call's DH shared secret, giving it key continuity properties analogous to SSH. If the MitM is not present in the first call, he is locked out of subsequent calls. Thus, even if the SAS is never used, most MitM attacks are stopped, because they weren't present in the first call.

ZRTP provides yet a third layer of protection against a MitM attack. The IETF plans to add integrity protection to the delivery of SIP information, and that integrity protection will rely on a PKI. When this eventually deploys, ZRTP can take advantage of this. See the ZRTP Internet Draft on how ZRTP can leverage an integrity-protected SIP layer to provide integrity protection for ZRTP's Diffie-Hellman exchange in the media layer. This protects against a MitM attack, without requiring the users to verbally compare the SAS. However, no VoIP clients yet offer a fully implemented SIP stack that provides end-to-end integrity protection for the delivery of SIP information. Thus, real-world implementations of ZRTP endpoints will continue to depend on SAS authentication for quite some time. Even after there is widespread availability of SIP products that offer integrity protection, many users will still be faced with the fact that the signaling path may be controlled by institutions that do not have the best interests of the end user in mind. In those cases, ZRTP's built-in SAS authentication will remain the gold standard for the prudent user.

Implementation

* Zfone is available for different operating systems.

* Twinkle uses GNU ccRTP and GNU ZRTP to implement the ZRTP support. All these packages are available under GPL.

* Ekiga has planned [See Ekigas [http://wiki.ekiga.org/index.php/Roadmap_to_3.2.0] ] to support ZRTP past 3.2 release.

*X-Lite, eyeBeam and [http://www.m5t.com/products/zrtp.php M5T ZRTP SAFE] implement ZRTP but are proprietary.

* [http://www.khamsa.ch KHAMSA SA] 's PrivateGSM is the first implementation of ZRTP over GSM (non-voip) for Symbian OS. That open protocol extension is going to be extended to ISDN, PSTN and SATELLITE telephony technology to provide a standard for Secure telephone .

See also

* Opportunistic encryption
* PGPfone
* Pretty Good Privacy
* Secure telephone
* SRTP
* Zfone

References

External links and references

* [http://zfoneproject.com/zrtp_ietf.html Internet Draft: ZRTP: Media Path Key Agreement for Secure RTP]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • ZRTP — es una extensión de Real time Transport Protocol (RTP) que describe el establecimiento de un intercambio Diffie Hellman de claves para el Secure Real time Transport Protocol (SRTP). Fue enviado al IETF por Phil Zimmermann, Jon Callas y Alan… …   Wikipedia Español

  • ZRTP — est un protocole de chiffrement pour les appels téléphoniques passé en VoIP. ZRTP décrit une méthode d Échange de clés Diffie Hellman pour le SRTP. Il a été soumis à l IETF par Philip Zimmermann, Jon Callas et Alan Johnston le… …   Wikipédia en Français

  • ZRTP — Необходимо проверить качество перевода и привести статью в соответствие со стилистическими правилами Википедии. Вы можете помочь улучшить эту статью, исправив в ней ошибки. Оригинал на английском языке …   Википедия

  • ZRTP — Zfone ist eine Software zur Verschlüsselung von VoIP Telefonaten. Inhaltsverzeichnis 1 Anwendung 2 Funktionsweise 3 Lizenzmodell 4 Kritik 5 Siehe auch …   Deutsch Wikipedia

  • Zfone — ist eine Software zur Verschlüsselung von VoIP Telefonaten. Inhaltsverzeichnis 1 Anwendung 2 Funktionsweise 3 Lizenzmodell 4 Kritik …   Deutsch Wikipedia

  • Comparison of VoIP software — VoIP software is used to conduct telephone like voice conversations across Internet Protocol (IP) based networks. VoIP stands for Voice over IP . For residential markets, VoIP phone service is often cheaper than traditional public switched… …   Wikipedia

  • Secure telephone — A secure telephone is a telephone that provides voice security in the form of end to end encryption for the telephone call, and in some cases also the mutual authentication of the call parties, protecting them against a man in the middle attack.… …   Wikipedia

  • Сравнение программ для IP-телефонии — Приложения для VoIP (софтфоны) используются для проведения по сетям, основанным на протоколе IP, разговоров, подобных телефонным. Для жилого сектора VoIP сервисы часто более дёшевы, чем обычная ТФОП, и снимают географические ограничения на… …   Википедия

  • Zfone — is software for secure voice communication over the Internet (VoIP), using the ZRTP protocol. It is created by Phil Zimmermann, the creator of the PGP encryption software. Zfone works on top of existing SIP and RTP programs, like Gizmo, but… …   Wikipedia

  • VoIP-Softwarevergleich — Voice over IP (VoIP) Software wird dazu benutzt, Telefongespräche über das Internet zu führen. VoIP Gespräche sind oftmals günstiger als konventionelle Telefongespräche. Weil Gespräche über das Internet leicht abgehört werden können, verwenden… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”