Changes between Initial Version and Version 1 of Convergence Secret


Ignore:
Timestamp:
2013-03-14T15:48:59Z (12 years ago)
Author:
ClashTheBunny
Comment:

Add article about convergence secret

Legend:

Unmodified
Added
Removed
Modified
  • Convergence Secret

    v1 v1  
     1= Convergence Secret =
     2
     3== What Is It? ==
     4
     5A file's capability is derived from two pieces of information on upload: The content of the file and the upload node's "convergence secret". By default, the convergence secret is randomly generated by the node when it first starts up, then stored in the node's base directory (<Tahoe's node dir>/private/convergence) and re-used after that. So the same file content uploaded from the same node will always have the same cap string. Uploading the file from a different node with a different convergence secret would result in a different cap string—and in a second copy of the file's contents stored on the grid. If you want files you upload to converge (also known as "deduplicate") with files uploaded by someone else, just make sure you're using the same convergence secret as they are.
     6
     7The advantages of deduplication should be clear, but keep in mind that the convergence secret was created to combat snooping.  For example, with a convergence secret and a file, I can generate a file capability that would allow me to determine that you have uploaded a file to the grid.  This isn't a big deal for things that are personally produced, but is a big deal for commonly known things that you want to keep secret that you know about.  Examples would be a Bible in China or The Anarchist's Cookbook at the High School that I went to.  Here's the details of the origin of the convergence secret: [https://tahoe-lafs.org/hacktahoelafs/drew_perttula.html Convergence Secret Justification]
     8
     9== How To Use It ==
     10
     11To enable deduplication between different clients, '''securely''' copy
     12the convergence secret file from one client to all the others.
     13
     14For example, if you are on host A and have an account on host B
     15and you have scp installed, run:
     16
     17{{{
     18scp ~/.tahoe/private/convergence my_other_account@B:.tahoe/private/convergence
     19}}}
     20
     21If you have two different nodes on a single computer, say one for each disk, you would do:
     22
     23{{{
     24cp /tahoe1/private/convergence /tahoe2/private/convergence
     25}}}