How PGP Signed Keys Work (Was: How PGP Works)

How PGP Signed Keys Work (Was: How PGP Works)

Post by whg.. » Mon, 30 Jun 1997 04:00:00



Quote:>8) Signatures on Public Keys
>P0() is just data, and, as such, can be fed to S0(md5()) to obtain a
>signature.   When you sign your public key you are forming [P0(),
>S0(md5(P0()))] as in 3). P0() can now be authenticated as in 4).
>Other signatures can be attached to attest to the authenticity of P0().
>If the owners of S1(), S2(), and S3() are convinced that P0() belongs to
>you, then each can attach a signature to P0(), forming
>[P0(), {S0(md5(P0())), S1(md5(P0())),S2(md5(P0())),S3(md5(P0()))}]
>Someone in possession of P2(), who trusts its owner, can authenticate
>P0() as in 4).

- --

A little clarification is needed on how Public Keys are signed:

A Public Key (P0) is composed of several parts:

- -- (P0k) Public Key Block: This is your modulus n & exponent e plus a few bytes of other data
- -- (P0i1) User Id Block:    This is the text of your userid
- -- (P0s1) Signature Block:  This is the attached signature as discribed above.

Now what is signed when you sign a key is P0s1=S0(md5(P0k||P0i1)) and is appended to the end of your keyring.

Now if you have multiple signatures:

- -- (P0k)
- --   (P0i1)
- --     (P0s1)
- --     (P0s2)
- --     (P0s3)

when you sign the key only md5(P0k||P0i1) is signed not the other signatures (P0s2,P0s3).

Now this may seem nit picking but here comes the important part:

If you have multiple userID's for a key:

- -- (P0k) FFFFFFFF
- --   (P0i1) John Doe
- --     (P0s1)
- --     (P0s2)
- --     (P0s3)
- --   (P0i2) Ben Hur
- --     (P0s4)
- --     (P0s5)

when you sign the key above PGP defaults to signing md5(P0k||P0i1) where (P0i1) is the primary user id. It does not sign the other userID.

To get PGP to sign the second userID you must at the command prompt:

PGP -ks "Ben Hur"

if you do a PGP -ks 0xFFFFFFFF the primary userID gets signed.

Now this presents another problem: "What happens when you have more than 1 key with the same userID?". This is a problem since you can not reference the key by it's keyID you may mistakenly sign the wrong key.

1st what you should do is:

PGP -kvvc "Ben Hur"

This will list all the keys with "Ben Hur" as a userID. Look through the list and find the keyID for the key you wish to sign (0xFFFFFFFF).

Now extract the key to a temp keyring:

PGP -kx 0xFFFFFFFF temp.pgp

Now sign "Ben Hur" in temp.pgp:

PGP -ks "Ben Hur" temp.pgp

Now add the key back to your pubring.pgp:

PGP -ka temp.pgp

That's it. :)

- --
- ---------------------------------------------------------------
William H. Geiger III
Geiger Consulting    Cooking With Warp 4.0

Author of E-Secure - PGP Front End for MR/2 Ice
PGP & MR/2 the only way for secure e-mail.
OS/2 PGP 2.6.3a at:                        
- ---------------------------------------------------------------

Version: 2.6.3a
Charset: cp850
Comment: Registered_User_E-Secure_v1.1b1_ES000000



1. Win2000 + outlook2000 + pgp 7.0.3: PGP mime not working


Hi, I'm seeing a strange problem with regards to pgp mime:

* Sending: regardless of the "Use PGP/Mime when sending email" signed
emails always seem to go out as normal PGP signed text, i.e embeded
in the message text.

* receiving: PGP/Mime messages are not recognised by PGP: outlook
shows them as normal messages with an attachment (att00165.dat for
example). The signatures can't be verified, the only thing possible
is to save them to a file.

System configuration:
Windows 2000
Office 2000
PGP 7.0.3

Thanks for any hints what's wrong,


Version: PGP 7.0.4
Comment: PGP Personal Privacy 7.0.3 + Hotfix1


2. ZIP RAM for 2630

3. disturbing pgp flaw: pgp -w does NOT WORK

4. Should I still buy a Palm III

5. PGP Key Signing BoF at USENIX Security Symposium - send your key!

6. Hardframe / ST296N problem...

7. : REMINDER: LISA '97 PGP key signing BoF--send keys by Thurs, Oct 23


9. REMINDER: LISA '97 PGP key signing BoF -- send your keys in

10. PGP key rings work for customer emails of largish organisations ?

11. Do pgp 5.5.3 not work with RAS KEY?

12. pgp phone pgp.asc i am paratroper

13. PGP 8.0 Enterprise: PGP standards for key creation process