tomb

the crypto undertaker
git clone git://parazyd.org/tomb.git
Log | Files | Refs | README | LICENSE

KEY_SPECIFICATIONS.txt (1211B)


      1 Overview
      2 =========
      3 
      4 
      5 What's a key?
      6 It basicly is a gpg simmetrically encrypted, ascii-armored file.
      7 It's encryption key is a function (see below, on KDF section) of your tomb
      8 passphrase.
      9 
     10 
     11 Layout
     12 ======
     13 
     14 Before coming to the gpg part, there could be some "header" lines specifying
     15 metatada. They're done like this:
     16 _FIELD_params_params_and_more_params_
     17 
     18 where FIELD should be the description for the header.
     19 Pay much attention to the fact that there should ONLY be ASCII characters there,
     20 to avoid encoding issues and whatever. Needs something more? Use base64encode.
     21 (Of course, you're free to pack params into a single field, base64encoding
     22 whatever you want).
     23 And every header field should be in only one line.
     24 
     25 KDF
     26 ===
     27 
     28 Key Derivation Functions, are functions which will make your key stronger
     29 spending some CPU time: the basic idea is that you have to compute that function
     30 just once in a while, but an attacker that wants to bruteforce has to compute it
     31 for every passphrase he's checking. This will make the bruteforce much more
     32 expensive.
     33 
     34 The header line format is _KDF_$method_$params_$params_... where $method is the
     35 method we are using (ie: scrypt) and params is something that it needs (ie:
     36 salt).