From d4f9ffb88b9a40e92bafdf93f4bdf9ffdbd7a8f1 Mon Sep 17 00:00:00 2001 From: Pascal Geiser <10461883+13pgeiser@users.noreply.github.com> Date: Wed, 8 Jan 2025 21:12:10 +0100 Subject: [PATCH] Fix change PIN for RP2350. Fixes polhenarejos#27. --- src/openpgp/openpgp.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/openpgp/openpgp.c b/src/openpgp/openpgp.c index 41e1482..ec44493 100644 --- a/src/openpgp/openpgp.c +++ b/src/openpgp/openpgp.c @@ -1082,6 +1082,11 @@ static int cmd_change_pin() { if ((r = load_dek()) != PICOKEY_OK) { return SW_EXEC_ERROR(); } + if (otp_key_1) { + for (int i = 0; i < 32; i++) { + dek[IV_SIZE + i] ^= otp_key_1[i]; + } + } r = check_pin(pw, apdu.data, pin_len); if (r != 0x9000) { return r;