Merge commit 'dkg/master'
[monkeysphere.git] / website / news / modified-gnutls-2.4.x-available.mdwn
1 [[meta title="Modified GnuTLS 2.4.x available"]]
2
3 The MonkeySphere project is now making available a patched version of
4 [GnuTLS](http://gnutls.org/) version 2.4.x, which enhances the utility
5 of the `monkeysphere` package by enabling it to read authentication
6 subkeys emitted by [GnuPG](http://gnupg.org/) under certain
7 circumstances.
8
9 You can track this package in debian lenny by adding the following
10 lines to `/etc/apt/sources.list`:
11
12         deb http://archive.monkeysphere.info/debian experimental gnutls
13         deb-src http://archive.monkeysphere.info/debian experimental gnutls
14
15 Or you can patch and build the packages yourself with the patches and
16 scripts provided in [the MonkeySphere git repo](/download).
17
18 The only modification needed simply enables the library to parse a GNU
19 extension to the String-to-key (S2K) mechanism as laid out in [RFC
20 4880](http://tools.ietf.org/html/rfc4880#section-3.7).
21
22 The specific S2K extension supported is known as gnu-dummy, and it
23 simply allows a "secret" key block to be written *without* storing any
24 of the secret key material.  This is used by GnuPG on the primary key
25 when the `--export-secret-subkeys` argument is given.
26
27 GnuPG's [DETAILS
28 file](http://cvs.gnupg.org/cgi-bin/viewcvs.cgi/trunk/doc/DETAILS?root=GnuPG)
29 describes this extension this way:
30
31         GNU extensions to the S2K algorithm
32         ===================================
33         S2K mode 101 is used to identify these extensions.
34         After the hash algorithm the 3 bytes "GNU" are used to make
35         clear that these are extensions for GNU, the next bytes gives the
36         GNU protection mode - 1000.  Defined modes are:
37           1001 - do not store the secret part at all
38           1002 - a stub to access smartcards (not used in 1.2.x)
39
40 And [`gpg(1)`](http://linux.die.net/man/1/gpg) says of `--export-secret-subkeys`:
41
42
43         [This] command has the special property to render the secret
44         part of the primary key useless; this is a GNU extension to
45         OpenPGP and other implementations can not be expected to
46         successfully import such a key.
47         
48 A version of this patch was first proposed [on
49 `gnutls-dev`](http://lists.gnu.org/archive/html/gnutls-devel/2008-08/msg00005.html),
50 and looks like it will be adopted upstream in the GnuTLS 2.6.x series,
51 at which point these packages will be unnecessary.
52
53 Until that time, these packages are provided to tide over users of
54 `monkeysphere` on debian lenny (or compatible systems) who want to be
55 able to hand off the authentication-capable OpenPGP subkeys in their
56 GnuPG keyring to their SSH agent.