How to add my own algorithm to gnupg?
David Shaw
dshaw@jabberwocky.com
Fri Aug 29 14:06:04 2003
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Fri, Aug 29, 2003 at 07:01:38PM +0800, Calvin wrote:
> Hi, there,
> Please reply to me explicitly for I'm in none of above mail list.
> Thanks.
>
> There is a line in gnupg "Feature" page, which says, "Easy
> implementation of new algorithms using extension modules."
>
> But I can't find where to configure to use my own algorithms. And what's
> the "extension modules" mean?
>
> Do I need to add my algorithm module to source code of gnupg and
> rebuild it? Or there is some easier way, just follow a specific
> interface in my module and register it into gnupg with some
> configuration file? Or the 3rd way?
The first way. The extension module feature was removed from GnuPG
for several reasons (portability, code simplicity, lack of use). To
add a new algorithm, you need to:
a) Write the code for your new algorithm. See the files in cipher/
for examples on the GnuPG interface for hashes (see sha1.c), public
key algorithms (see rsa.c), and symmetric algorithms (see dsa.c).
b) When you need an algorithm number, use something in the 100-110
range. These numbers are reserved for this sort of use.
c) Add your algorithm to the necessary table in GnuPG (cipher/md.c for
hashes, cipher/pubkey.c for public key, and cipher/cipher.c for
symmetric).
David
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.3.3-cvs (GNU/Linux)
Comment: Key available at http://www.jabberwocky.com/david/keys.asc
iHEEARECADEFAj9PQeUqGGh0dHA6Ly93d3cuamFiYmVyd29ja3kuY29tL2Rhdmlk
L2tleXMuYXNjAAoJEOJmXIdJ4cvJKV4AnjBmMauB39sby6+xdP09j1C46RahAKDi
TG19FW+Ia0vzlJ0V69ar326jaA==
=TsfM
-----END PGP SIGNATURE-----