ZRTP Support

Daniel Kraft d at domob.eu
Mon May 27 03:39:54 EDT 2013


Thanks for the quick reply! :)

On 05/26/2013 09:59 PM, Peter Lawler wrote:
> On 27/05/13 04:42, Daniel Kraft wrote:
>> Do you think that would still be a feasible project
>> to tackle?  Would you be interested in adding ZRTP support?  And would
>> you give me a helping hand from time to time should I really attempt
>> this and have questions regarding the code-base?
> Hi Daniel,
> I only speak for myself, but I'd be interested in Pidgin having ZRTP
> support. I suspect there are others who would be interested and would
> probably build upon ZRTP support in Pidgin.

Well, that's a good first thing to know! ;)  But also the ticket already
had some comments suggesting that interest is there.  (And in my
opinion, it is an obvious addition.)

>> BTW, is this something that could/should be implemented as plugin
>> rather than a native patch (like OTR)?  I have not yet looked into the
>> plugin API of Pidgin, either, though.
> Don't quote me, but if I recall correctly, there are limitations as to
> what a plugin can do. Particularly if you're trying to do protocol stuff
> (that is, the distinction between 'plugin' and 'protocol plugin' results
> in some crazy stuff going on). If I were looking at bringing ZRTP to
> pidgin, I'd be looking at adding it in as a build time option rather
> than a plugin (in fact, there have been noises from others - and myself
> - about bringing OTR into Pidgin trunk, but that always seems to stall...)

Yes, I'm absolutely not opposed to implementing that into the base code
itself (and would also be in favour of having OTR there).  The question
then is probably whether the community would accept such a change, or
would rather have it as plugin.

BTW, how's that with OTR at the moment?  Is is just nobody implementing
it, or are some people opposed to it and that's the reason why it
stalls?  If it is the former, maybe that would be a good first step for
me to get familiar with the code before trying to add ZRTP.  What do you
think, would that be an easier (and also welcomed) thing to do?

> Would it be 'better' (if at all possible) to have ZRTP support in
> GStreamer? In theory, as it stands right now Pidgin supports anything
> that GStreamer can throw at it (hence, the current lack of Voice/Video
> on Windows [but I've heard movements on that front over the past few
> weeks...]). *IF* ZRTP could be added to GStreamer, this would bring the
> functionality to more than just Pidgin. Further, it would mean that
> Pidgin don't have to maintain it directly. Not saying that Pidgin should
> or shouldn't maintain it, I'm just thinking that maybe it's more
> suitable elsewhere. I don't even know if GStreamer can do key exchange
> type foo. But I'd sure as heck like to think it could.

I do not yet really know what gstreamer implements and is supposed to
support.  My current impression is that encryption in general and as you
mention things like key exchange in particular are not a good fit for a
streaming library.  Do you think the people behind gstreamer would want
it to support that?  Then it would of course be a nice thing to have it
there directly so it is wider available.

Another possibility could be to implement SRTP in gstreamer (it does the
encryption when you give it the keys to use) and do the ZRTP key
exchange, SAS verification and all that *before* we arrive at a SRTP key
in Pidgin.  Would that make sense?  Maybe we should contact also the
gstreamer community about that?

(Disclaimer: At the moment these are just vague ideas ... I do not yet
know how ZRTP, SRTP or even XMPP/Jingle *really* work in detail on the
protocol level.  So maybe that's just all nonsense.)


Done:  Arc-Bar-Cav-Hea-Kni-Ran-Rog-Sam-Tou-Val-Wiz
To go: Mon-Pri

More information about the Devel mailing list