From 557f29d2c16e8d31729a20f56e2c18b0b0726414 Mon Sep 17 00:00:00 2001 From: Mario Haustein Date: Mon, 19 Feb 2024 10:22:35 +0100 Subject: [PATCH] scd:p15: Add ECC support for D-Trust Card 4.1/4.4 * scd/app-p15.c (do_sign): Add MSE RESTORE parameters for D-Trust ECC cards. (do_decipher): Ditto. --- scd/app-p15.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/scd/app-p15.c b/scd/app-p15.c index cfe369a15..43557e08b 100644 --- a/scd/app-p15.c +++ b/scd/app-p15.c @@ -5829,9 +5829,8 @@ do_sign (app_t app, ctrl_t ctrl, const char *keyidstr, int hashalgo, { if (prkdf->is_ecc) { - /* Not implemented due to lacking test hardware. */ - log_info ("Note: ECC is not yet implemented for DTRUST 4 cards\n"); - err = gpg_error (GPG_ERR_UNSUPPORTED_ALGORITHM); + err = iso7816_manage_security_env (app_get_slot (app), + 0xf3, 0x21, NULL, 0); } else { @@ -6090,9 +6089,8 @@ do_decipher (app_t app, ctrl_t ctrl, const char *keyidstr, { if (prkdf->is_ecc) { - /* Not implemented due to lacking test hardware. */ - log_info ("Note: ECC is not yet implemented for DTRUST 4 cards\n"); - err = gpg_error (GPG_ERR_UNSUPPORTED_ALGORITHM); + err = iso7816_manage_security_env (app_get_slot (app), + 0xF3, 0x39, NULL, 0); } else {