From an strace of a running seahorse process (i used "strace -f -s4096
seahorse"), i get this output during the key creation of a key that is
ostensibly "RSA (Sign-Only)":

  [...]
11214 execve("/usr/bin/gpg", ["gpg", "--batch", "--no-sk-comment", 
"--lc-messages", "C", "--lc-ctype", "C", "--status-fd", "16", "--no-tty", 
"--charset", "utf8", "--enable-progress-filter", "--display", "localhost:11.0", 
"--ttyname", "/dev/pts/10", "--ttytype", "rxvt", "--gen-key"], [/* 19 vars */]) 
= 0
  [...]
11214 <... read resumed> "Key-Type: RSA\nKey-Length: 2048\nName-Comment: DO NOT 
USE!!!\nName-Email: [EMAIL PROTECTED]: Test User\nExpire-Date: 0\nPassphrase: 
abc\n"..., 8192) = 140
  [...]

So the problem appears to be that the --batch --gen-key process is
being handed a script without a Key-Usage: instruction.

From /usr/share/doc/gnupg/DETAILS.gz:

     Key-Usage: <usage-list>
        Space or comma delimited list of key usage, allowed values are
        "encrypt", "sign", and "auth".  This is used to generate the
        key flags.  Please make sure that the algorithm is capable of
        this usage.  Note that OpenPGP requires that all primary keys
        are capable of certification, so no matter what usage is given
        here, the "cert" flag will be on.  If no Key-Usage is
        specified, all the allowed usages for that particular
        algorithm are used.

Hope this is helpful,

        --dkg

Attachment: pgpxnMXkBnfKr.pgp
Description: PGP signature

Reply via email to