This wiki is now locked - both user registration and edits (except by admins) are disabled. We're currently migrating all the content to our new wiki. If you have time, please register and help us out!

You can still view the source code of every page. Once a page has been copied over to the new wiki, please add a link to it to MigratedPages (the only page which is still editable), to notify the admins to go and blank it.


CHK: Content Hash Keys


All files within Freenet are identified and requested by a key, in a similar way that normal websites are identified by a domain name. You don't really need to know the technical details to use Freenet; tools such as jSite will sort it all out for you.

Content Hash Keys are for files that aren't going to change. For example: mp3 files. They look something like this:

CHK@SVbD9~HM5nzf3AX4yFCBc-A4dhNUF5DPJZLL5NX5Brs,bA7qLNJR7IXRKn6uS5PAySjIM6azPFvK~18kSi6bbNQ,AAEA--8

These are created by making a hash of the file. This is like a fingerprint of the file: it is generally a lot smaller than the file itself. It should not be possible for two different files to have the same CHK; a CHK uniquely identifies a file (assuming that SHA-256 is not broken!).

This hash is used as an index to the file, in a similar way to the address, or URL, or a standard website. The CHK key is generated automatically, so it won't look as user-friendly as a domain name. For user-friendly keys, have a look at SSK pages.

Example


This example will add a small text file to Freenet using the Content Hash Key to identify it. We will use the basic telnet interface to Freenet for illustrative purposes but you can use a more featured site creator like jSite.

At the command line, type the following to access Freenet's command line interface:

telnet localhost 2323


You should be presented with a list of options. Type the following and then press Enter:

put:this is a test


after a short while (be patient, it could take a minute or two) it will return this:

URI: freenet:CHK@SVbD9~HM5nzf3AX4yFCBc-A4dhNUF5DPJZLL5NX5Brs,bA7qLNJR7IXRKn6uS5PAySjIM6azPFvK~18kSi6bbNQ,AAEA--8


This random-looking string is the Content Hash Key (CHK) of the line of text this is a test, and is telling you the address that other people can use to access this file in Freenet. You can see that it consists of three segments, separated by commas:

  1. The first part, SVbD9~HM5nzf3AX4yFCBc-A4dhNUF5DPJZLL5NX5Brs, is the actual hash of the file.
  2. The second part, bA7qLNJR7IXRKn6uS5PAySjIM6azPFvK~18kSi6bbNQ, is the decryption key that unlocks the file (which is stored encrypted).
  3. The third part, AAEA--8, is something to do with settings such as cryptographical algorithms used.

To exit from the telnet interface, press Ctrl-] and press Enter, then type quit and press Enter.

To verify your file exists in Freenet, open a web browser and go to:
http://localhost:8888/CHK@SVbD9~HM5nzf3AX4yFCBc-A4dhNUF5DPJZLL5NX5Brs,bA7qLNJR7IXRKn6uS5PAySjIM6azPFvK~18kSi6bbNQ,AAEA--8
You may get a warning come up at first, but just tell the browser to open it as a plain text page. If all goes well, you should see the text you have just inserted to Freenet.
Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki