Mailing List Archive

making key listings faster
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Disclaimer: I am not familiar with how GnuPG gets its information for
listing keys.

I will use the term 'validity' in this mesage to refer to the calculated
trust of a key, so it will not be confused with 'ownertrust' (On a side
note, I think NAI got it right with the term 'validity', instead of
'trust').


Problem:

If I want the normally-gathered information from '--with-colons', this
procedure can be _very_ slow.

This problem will be a serious one for me in particular, as in my program
pgpenvelope, I wish to present users with, say, those keys looked up by
'ftobin@uiuc.edu', EXCEPT those which are disabled or revoked. This seems
like a simple request, but doing so requires me to use '--with-colons'
(without '--fast-list-mode') to find out which keys are revoked or
disabled. This can require a HUGE performance hit.


Analysis:

This behaviour shows itself most when the key being listed has many
signatures, leading way to me believing that this slowness may be caused
by GnuPG trying to calculate the validity of the key

I would further venture those operations other than calculating the
validity of a key have little overhead compared to calculating the
validity, as calculating the validity would be the only one requiring real
processing (the fields filled in just being lookups).

Hence, I would further venture that the speed --fast-list gets is from its
not calculating of the validity of a key, not from the absence of the
other things left out, such as UIDs or ownertrust, or
revoked/disabled-ness.


Proposed Solution:

Therefore, I am inclined to think that --fast-list should have its
behaviour changed to only leave out calculation of the validity of a key.
This will allow people to get information of a key such as UID's,
ownertrust, and revoked-disabledness without getting the extremely high
performance hit of not using this option with --with-colons.


- --
Frank Tobin http://www.neverending.org/~ftobin/

"To learn what is good and what is to be valued,
those truths which cannot be shaken or changed." Myst: The Book of Atrus





-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.1 (FreeBSD)
Comment: pgpenvelope - http://pgpenvelope.sourceforge.net/

iEYEARECAAYFAjjUQT0ACgkQVv/RCiYMT6N1uQCdEJ9NfHPXUfHNkkzkEdTVpQS6
+CQAoIqYf+kznQzTWtMzSeowlmLKQgIK
=gqNV
-----END PGP SIGNATURE-----
Re: making key listings faster [ In reply to ]
On Sat, 18 Mar 2000, Frank Tobin wrote:

> I will use the term 'validity' in this mesage to refer to the calculated
> trust of a key, so it will not be confused with 'ownertrust' (On a side

Yes, we should use these terms.

> This behaviour shows itself most when the key being listed has many
> signatures, leading way to me believing that this slowness may be caused
> by GnuPG trying to calculate the validity of the key

Right.

> Therefore, I am inclined to think that --fast-list should have its
> behaviour changed to only leave out calculation of the validity of a key.
> This will allow people to get information of a key such as UID's,
> ownertrust, and revoked-disabledness without getting the extremely high

This should work in most cases. I'll see how fast I can implement it.

1.1 will probably not use the trustdb stuff anymore but a new format
for the keyrings which should speed up many things and takes away the
burden to sync the trustdb with the keyring. The new format data
format of the keyrings will carry some precalculated values such as
key ID, fingerprint and validity. A minor drawback is that it will
not be possble anmore to use an exported keyring fro --keyring without
importing it first. However, import will be much faster too.


Werner