From 573cb15e69b7082762112d67c9f0dc23a0b8f64f Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Thu, 8 Sep 2022 14:00:05 +0200 Subject: [PATCH] Replace some constants with defines. Signed-off-by: Pol Henarejos --- src/fido/cmd_authenticate.c | 7 ++++--- src/fido/cmd_register.c | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/fido/cmd_authenticate.c b/src/fido/cmd_authenticate.c index 4b48842..86b9757 100644 --- a/src/fido/cmd_authenticate.c +++ b/src/fido/cmd_authenticate.c @@ -30,7 +30,7 @@ int cmd_authenticate() { return SW_EXEC_ERROR(); if (req->keyHandleLen != KEY_HANDLE_LEN) return SW_WRONG_DATA(); - if (P1(apdu) == 0x03 && wait_button_pressed() == true) + if (P1(apdu) == U2F_AUTH_ENFORCE && wait_button_pressed() == true) return SW_CONDITIONS_NOT_SATISFIED(); mbedtls_ecdsa_context key; @@ -40,7 +40,7 @@ int cmd_authenticate() { mbedtls_ecdsa_free(&key); return SW_EXEC_ERROR(); } - if (P1(apdu) == 0x07) { + if (P1(apdu) == U2F_AUTH_CHECK_ONLY) { for (int i = 0; i < KEY_PATH_ENTRIES; i++) { uint32_t k = *(uint32_t *)&req->keyHandle[i*sizeof(uint32_t)]; if (!(k & 0x80000000)) { @@ -62,7 +62,8 @@ int cmd_authenticate() { return SW_WRONG_DATA(); return SW_CONDITIONS_NOT_SATISFIED(); } - resp->flags = P1(apdu) == 0x03 ? 0x1 : 0x0; + resp->flags = 0; + resp->flags |= P1(apdu) == U2F_AUTH_ENFORCE ? U2F_AUTH_FLAG_TUP : 0x0; uint32_t ctr = *(uint32_t *)file_get_data(ef_counter); resp->ctr[0] = ctr >> 24; resp->ctr[1] = ctr >> 16; diff --git a/src/fido/cmd_register.c b/src/fido/cmd_register.c index 38a3172..880526f 100644 --- a/src/fido/cmd_register.c +++ b/src/fido/cmd_register.c @@ -50,7 +50,7 @@ int cmd_register() { size_t ef_certdev_size = file_get_size(ef_certdev); memcpy(resp->keyHandleCertSig + KEY_HANDLE_LEN, file_get_data(ef_certdev), ef_certdev_size); uint8_t hash[32], sign_base[1 + U2F_APPID_SIZE + U2F_CHAL_SIZE + KEY_HANDLE_LEN + U2F_EC_POINT_SIZE]; - sign_base[0] = 0x00; + sign_base[0] = U2F_REGISTER_HASH_ID; memcpy(sign_base + 1, req->appId, U2F_APPID_SIZE); memcpy(sign_base + 1 + U2F_APPID_SIZE, req->chal, U2F_CHAL_SIZE); memcpy(sign_base + 1 + U2F_APPID_SIZE + U2F_CHAL_SIZE, resp->keyHandleCertSig, KEY_HANDLE_LEN);