Commit Graph

1198 Commits

Author SHA1 Message Date
Radoslav Gerganov 5043c6877c Add support for the security manager in Google Chrome
This patch fixes the following issues to make Google Chrome happy:
1. Adds CTAP_CBOR_CRED_MGMT(0x0A) which is an alias to CTAP_CBOR_CRED_MGMT_PRE(0x41)
2. Returns success instead of NO_CREDENTIALS when there are no RKs
3. Skip the "icon" property if it's empty

Tested with Google Chrome Version 80.0.3987.149
2020-03-26 18:13:50 +02:00
Radoslav Gerganov 08cd76d50c Do not return NO_CREDENTIALS if there are no RKs and meta is requested
Fixes-issue: #403
2020-03-26 15:14:05 +02:00
Conor Patrick 05e149fb17 Update STABLE_VERSION 2020-03-25 15:16:14 -04:00
Conor Patrick 530e175ad1 cleanup 2020-03-25 14:57:39 -04:00
Conor Patrick 6cd3873b37 add reboot command for better testing 2020-03-25 14:57:39 -04:00
Conor Patrick 241f58657b consider credProtect with exclude list, and also check user presence 2020-03-25 14:57:39 -04:00
Conor Patrick 3b42289cce add rpId to RK's, fix counting of unique RP's 2020-03-25 14:57:39 -04:00
Conor Patrick b3712b57fc refactor to reuse more code 2020-03-25 14:57:39 -04:00
Conor Patrick 37769bb735 to support deleted credentials, need to scan all rk slots since it's no longer continuous 2020-03-25 14:57:39 -04:00
Conor Patrick d677f8c346 add rk delete implementations 2020-03-25 14:57:39 -04:00
Conor Patrick 98bcf647c4 implement rk delete command for cred mgmt 2020-03-25 14:57:39 -04:00
Conor Patrick 682a443f4e refactor credMgmt to parse as subCommandParams, and get ready for delete command 2020-03-25 14:57:39 -04:00
Conor Patrick a28a05673f definitely need to update rpIdHash 2020-03-25 14:57:39 -04:00
Conor Patrick 3a70ee0ec6 refactor authData and extension handling to work for getNextAssertion 2020-03-25 14:57:39 -04:00
Conor Patrick 872a320abc Fix credential order: need to start with most recent 2020-03-25 14:57:39 -04:00
Conor Patrick 3cbf7ec451 move credProtect checking to credential filtering step 2020-03-25 14:57:39 -04:00
Conor Patrick 748c552eea fix overflow error for 5th resident key 2020-03-25 14:57:39 -04:00
Conor Patrick 98f996fcfe save some ram 2020-03-25 14:57:39 -04:00
Conor Patrick 97eb6bba8a bug fix 2020-03-25 14:57:39 -04:00
Conor Patrick fdc5a68fcd update info/feature detection details 2020-03-25 14:57:39 -04:00
Conor Patrick 1c1005a0e8 add credprotect parameter to output 2020-03-25 14:57:39 -04:00
Conor Patrick 4831410111 add credProtect extension 2020-03-25 14:57:39 -04:00
Radoslav Gerganov 05bc8bee55 Check return values when parsing CTAP commands 2020-03-21 12:49:05 -04:00
Radoslav Gerganov 7112633779 Fix user presence test when pinAuth is empty
The check_retr macro is evaluating its argument twice, so when we do:

    check_retr( ctap2_user_presence_test(...) )

the user presence function is called twice and the user has to press the
button twice. This is regression introduced with commit 3b53537.
2020-03-21 12:48:05 -04:00
Radoslav Gerganov 79b43a90fd Implement commands for management of resident keys
Implement command 0x41 which is used by OpenSSH for reading RKs. It has
the following subcommands:
 * CMD_CRED_METADATA - get number of saved/remaining RKs
 * CMD_RP_BEGIN/CMD_RP_NEXT - iterate over the saved RPs
 * CMD_RK_BEGIN/CMD_RK_NEXT - iterate over the RKs for a given RP

Fixes issue #374 and issue #314
2020-03-21 11:59:22 -04:00
Conor Patrick ec7a6fd740 Update STABLE_VERSION 2020-03-16 15:04:45 -04:00
Conor Patrick f2d6698066 Update version.c 3.1.3 2020-03-16 14:59:01 -04:00
Somebodyisnobody 3c9315e34c Update README.md
Basic steps how to apply updates
2020-03-09 12:06:39 -04:00
Conor Patrick 8ed7157bfe bump 3.1.2 2020-02-27 15:50:46 -05:00
Conor Patrick 28a1b1cc06 limit possible recursions in tinycbor 3.1.2 2020-02-27 15:40:27 -05:00
Conor Patrick 5738bcc7a3 more strict checks in cbor parsing 2020-02-27 15:40:27 -05:00
Conor Patrick 4fb166631d remove SOLO_EXPERIMENTAL default 2020-02-18 11:18:08 -05:00
Conor Patrick 1b862d3b0c fix error return 2020-02-18 11:18:08 -05:00
Conor Patrick 094420b32b overwrite if >256 is more clear 2020-02-18 11:18:08 -05:00
Conor Patrick 349cbc39f2 fix offset 2020-02-18 11:18:08 -05:00
Conor Patrick e294cb3458 replace counter instead of increment for large increment 2020-02-18 11:18:08 -05:00
Conor Patrick da31f984dd add version check 2020-02-18 11:18:08 -05:00
Conor Patrick 9d3e8c06fc subsequent button presses do not need to wait long 2020-02-18 11:18:08 -05:00
Conor Patrick b378bbf61d Update building.md 2020-02-18 10:53:47 -05:00
Conor Patrick 04b89a9739 Update customization.md 2020-02-18 10:38:53 -05:00
Conor Patrick 0d28a7bcf6 Update customization.md 2020-02-18 10:03:19 -05:00
Conor Patrick aeafd09007 only use .flag section for hw builds 2020-02-17 13:41:05 -05:00
Conor Patrick 8b6148ac90 bump 3.1.1 2020-02-13 17:32:26 -05:00
Conor Patrick 15a4fdfa66 remove unused code in bootloader 3.1.1 2020-02-13 17:17:23 -05:00
Conor Patrick e713daba26 add temporary command to force flash locking 2020-02-13 17:17:23 -05:00
Conor Patrick b78f2cd2e7 keep initialize last_addr and reject if it doesnt change 2020-02-13 17:17:23 -05:00
Arno Onken 601c98000a Correct path for gencert tools and use python3 2020-02-12 14:52:53 -05:00
Arno Onken ab1c9417b1 Fix certification information 2020-02-12 14:52:53 -05:00
Conor Patrick f6d96013e1 bump 3.1.0 2020-02-06 13:41:07 -05:00
Conor Patrick f74dba7ff0 enforce ascending writes in bootloader update 3.1.0 2020-02-06 13:05:57 -05:00