[tahoe-lafs-trac-stream] [tahoe-lafs] #1802: make new introducer furls unguessable

tahoe-lafs trac at tahoe-lafs.org
Thu Dec 20 17:58:47 UTC 2012


#1802: make new introducer furls unguessable
-------------------------+-------------------------------------------------
     Reporter:           |      Owner:  warner
  davidsarah             |     Status:  assigned
         Type:  defect   |  Milestone:  1.10.0
     Priority:  major    |    Version:  1.9.2
    Component:  code-    |   Keywords:  introducer furl security easy
  nodeadmin              |  forward-compatibility
   Resolution:           |
Launchpad Bug:           |
-------------------------+-------------------------------------------------
Changes (by warner):

 * status:  new => assigned


Comment:

 I'll try to write the patch for this over the weekend.. should be a simple
 use of {{{tub.registerReference(ref, furlFile=)}}} .

 Hm. The introducer currently writes its furl to
 {{{NODEDIR/introducer.furl}}}, and our docs recommend copying it from that
 location to all the clients. To fit with out current pattern of putting
 all secrets in {{{NODEDIR/private/}}}, we should change that to
 {{{NODEDIR/private/introducer.furl}}}. Which is a pity, because if we used
 {{{tub.registerReference(ref, furlFile=NODEDIR/introducer.furl)}}}, we'd
 get automatic backwards-compatibility: any existing nodes that upgrade to
 the new code will keep using their same old (guessable) FURLs, but new
 nodes will create a new (unguessable) FURL. And users could force the
 creation of a new (unguessable) FURL by just deleting `introducer.furl`
 and restarting.

 I suppose the fix will be to this:

 * if {{{NODEDIR/introducer.furl}}} exists and
 {{{NODEDIR/private/introducer.furl}}} does not, copy it into
 {{{NODEDIR/private/introducer.furl}}}
 * then use {{{furlFile=NODEDIR/private/introducer.furl}}}

 The only downside of that would be leaving the old
 {{{NODEDIR/introducer.furl}}} lying around, where it might get stale if
 the connection hints change. Anyone think we should delete the old one
 after copying it into private/ ?

-- 
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1802#comment:4>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list