Hi Peter,

I've added support for EdDSA to paperkey (it's a one-line fix - EdDSA and ECDSA 
have the same representation), so that's simple enough.

The segfault is more troubling though - not supporting an algorithm (yet) is 
one thing, but paperkey should never segfault.  Unfortunately, I can't 
reproduce the segfault with various ed25519 keys, both as themselves and in 
combinations like RSA primary and ed25519 subkey.  Can you send me a test key 
that reproduces the issue for you?

David

> On Oct 22, 2017, at 10:05 AM, Peter Palfrader <wea...@debian.org> wrote:
> 
> Hi David!
> 
> The following issue has been reported against the Debian package of
> paperkey (1.3) at https://bugs.debian.org/879512 -- paperkey 1.4 is
> also affected.
> 
> It seems paperkey is unable to deal with ed25519 keys:
> 
> | weasel@orinoco:~/gnupghome$ gpg --list-key
> | /home/weasel/gnupghome/pubring.kbx
> | ----------------------------------
> | pub   ed25519 2017-10-22 [SC] [expires: 2019-10-22]
> |       83EE1EE4EAA6BA37A4786292C66129D09E62C462
> | uid           [ultimate] test1
> | 
> | pub   rsa2048 2017-10-22 [SC] [expires: 2019-10-22]
> |       ABBC80F0A6340158E0E4559B42FA0478A3CC80F1
> | uid           [ultimate] test2
> | 
> | weasel@orinoco:~/gnupghome$ gpg --export-secret-keys test1 | paperkey
> | Unable to parse algorithm 22
> | e1:weasel@orinoco:~/gnupghome$ 
> 
> With an ed25519 master key, no segfault happens.  With an rsa master and
> an ed25519 subkey, I have observed segfaults, as also reported by Osamu
> Aoki.
> 
> Cheers,
> 
> ----- Forwarded message from Osamu Aoki <os...@debian.org> -----
> } 
> } Problem: paperkey causes "Segmentation fault" with ed25519 subkey.
> } 
> }  $ gpg --export-secret-key 1DD8D791 |paperkey >paper-secret-1DD8D791.txt
> }  Unable to parse algorithm 22
> }  Segmentation fault
> } 
> } (paperkey works fine with my old rsa1024 key w/o ed25519 subkey)
> } 
> } How to reproduce:
> }  * Add a ed25519 subkey with "gpg --expert".
> }  * Execute paperkey as above (1DD8D791 is my key) 
> } 
> } FYI:
> }  $ gpg --list-keys 1DD8D791
> }  pub   rsa4096 2010-09-23 [SC]
> }        3133724D6207881579E95D621E1356881DD8D791
> }  uid           [ultimate] Osamu Aoki <os...@debian.org>
> }  sub   rsa4096 2010-09-23 [E]
> }  sub   ed25519 2017-10-17 [A]
> }  $ gpg --edit-key 1DD8D791
> }  gpg (GnuPG) 2.2.1; Copyright (C) 2017 Free Software Foundation, Inc.
> }  This is free software: you are free to change and redistribute it.
> }  There is NO WARRANTY, to the extent permitted by law.
> }  
> }  Secret key is available.
> }  
> }  sec  rsa4096/1E1356881DD8D791
> }       created: 2010-09-23  expires: never       usage: SC  
> }       card-no: FFFE 67240842
> }       trust: ultimate      validity: ultimate
> }  ssb  rsa4096/A04CBCEEF08BEFAD
> }       created: 2010-09-23  expires: never       usage: E   
> }       card-no: FFFE 67240842
> }  ssb  ed25519/56F8269DCA1C3AD3
> }       created: 2017-10-17  expires: never       usage: A   
> }       card-no: FFFE 67240842
> }  [ultimate] (1). Osamu Aoki <os...@debian.org>
> }  
> }  gpg> q
> } 
> } Background:
> }  At Debconf17 gNiibe-san tempted me to use "Modern GPG" and ...  I now
> }  have a subkey using algorithm 22 (ed25519) and Gnuk.  That's why I have
> }  card-no in the above example and ed25519.
> } 
> ----- End forwarded message -----
> 
> -- 
>                            |  .''`.       ** Debian **
>      Peter Palfrader       | : :' :      The  universal
> https://www.palfrader.org/ | `. `'      Operating System
>                            |   `-    https://www.debian.org/
> 

Reply via email to