importing keys from keyservers (with search functionality)
Soren Dayton
dayton at overx.com
Tue Oct 12 23:25:52 CEST 1999
I'm moving some of my users over to gnupg from pgp5, and one of the
problems has been that there is no functionality equivalent to:
pgpk -a hkp://keys.pgp.com/foo
where `foo' is an arbitrary string, not just a keyID (as in gpg)
Looking at the gpg source (g10/hkp.c) I guessed that something like
this would work
connect to host at port 11371. Do a
GET /pks/lookup?op=get&search=%s
and this is what pgp5 does.
Is there some reason that gpg doesn't support something like this? In
any case, here is a half-assed python script to give this
functionality externally (the ease with which this is done is almost
an argument NOT to have this in gpg, except that you already have this
by specifying the EXACT keyid)
Soren Dayton
dayton at overx.com
#! /usr/local/bin/python
from httplib import HTTP
import os
import getopt
import sys
server = 'keys.pgp.com'
port = 11371
baseurl = "/pks/lookup?op=get&search="
options, searchfor = getopt.getopt(sys.argv[1:],'s:p:')
for pair in options:
option, value = pair
if option == '-s':
server = value
elif option == '-p':
port = value
h = HTTP(server, port)
h.putrequest('GET', baseurl + searchfor[0])
h.endheaders()
errcode, errmsg, headers = h.getreply()
if errcode == 200:
f = h.getfile()
pgp = os.popen('gpg --import ', 'w')
pgp.write(f.read()) # Print the raw HTML
More information about the Gnupg-devel
mailing list