sks-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Sks-devel] Recon Details


From: Phil Pennock
Subject: Re: [Sks-devel] Recon Details
Date: Mon, 28 Oct 2013 17:35:32 -0400

On 2013-10-28 at 15:59 +0100, Thomas Spycher wrote:
> I’m the guy asking for Gossiping peers and the message of John Clizbe has 
> bring me to an other mystery in the GPG World.
> I think i do understand the hkp protocol very well. I do understand the idea 
> behind gossiping as well. The theory about recon i think i do understand, but 
> what i do not understand is how the reconciliation is actually done! I was 
> digging trough the sks sourcecode and due to i’m not natively ocaml speaking, 
> i’m having my problems figuring out how it works.
> 
> Can someone explain an recon session? Or giving examples based on a telnet 
> session?!

There's some academic papers by Yaron Minsky on the set reconciliation
algorithm he devised, linked to at:

  https://bitbucket.org/skskeyserver/sks-keyserver/wiki/Home

Port 11370 speaks a protocol which just identifies what needs to be
transferred.  Each side then performs HKP GET requests against
peering_port+1 (ie, 11371) to retrieve the keys, using normal key
retrieval.  Thus you need both ports to be open to peers.

If recollection serves (it might not), the recon protocol is binary,
bi-directional and custom.  Casey Marshall examined it closely so that
he could reimplement it in Go (Golang), for use in Hockeypuck:

  https://launchpad.net/hockeypuck

and I'd start looking at his conflux library:

  https://github.com/cmars/conflux

-Phil

Attachment: pgp78JQs5Lbju.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]