From c7a6370b7456a08bebb8b1227ce03f3591701921 Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Mon, 31 Mar 2014 17:12:07 +0900 Subject: [PATCH] proc_key_import for ed25519 --- src/openpgp-do.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/openpgp-do.c b/src/openpgp-do.c index 512950d..9fb312b 100644 --- a/src/openpgp-do.c +++ b/src/openpgp-do.c @@ -1083,13 +1083,14 @@ kkb_to_kk (uint8_t kk_byte) * 5f48, xx xx xx: cardholder private key * , , * - * ECDSA: + * ECDSA / EdDSA: * 4d, xx: Extended Header List * a4 00 (AUT) * 7f48, xx: cardholder private key template * 9x LEN: 9x=tag of private key d, LEN=length of d * 5f48, xx : cardholder private key * + * EdDSA 64-byte??? (a + seed, 32-byte each) */ static int proc_key_import (const uint8_t *data, int len) @@ -1126,7 +1127,6 @@ proc_key_import (const uint8_t *data, int len) else ac_reset_other (); - #if defined(RSA_AUTH) && defined(RSA_SIG) if (len <= 22) #elif defined(RSA_AUTH) && !defined(RSA_SIG) @@ -1159,6 +1159,7 @@ proc_key_import (const uint8_t *data, int len) r = gpg_do_write_prvkey (kk, &data[12], len - 12, keystring_admin, NULL); #elif !defined(RSA_AUTH) && defined(RSA_SIG) /* ECDSA with p256r1 for authentication */ + /* EdDSA with Ed25519 for authentication */ if (kk != GPG_KEY_FOR_AUTHENTICATION) { /* RSA */ /* It should starts with 00 01 00 01 (E) */