1* Version 1.13.0 (2023-02-20) 2 ** Support for linking against OpenSSL on Windows; gh#668. 3 ** New API calls: 4 - fido_assert_empty_allow_list; 5 - fido_cred_empty_exclude_list. 6 ** fido2-token: fix issue when listing large blobs. 7 ** Improved support for different fuzzing engines. 8 9* Version 1.12.0 (2022-09-22) 10 ** Support for COSE_ES384. 11 ** Support for hidraw(4) on FreeBSD; gh#597. 12 ** Improved support for FIDO 2.1 authenticators. 13 ** New API calls: 14 - es384_pk_free; 15 - es384_pk_from_EC_KEY; 16 - es384_pk_from_EVP_PKEY; 17 - es384_pk_from_ptr; 18 - es384_pk_new; 19 - es384_pk_to_EVP_PKEY; 20 - fido_cbor_info_certs_len; 21 - fido_cbor_info_certs_name_ptr; 22 - fido_cbor_info_certs_value_ptr; 23 - fido_cbor_info_maxrpid_minpinlen; 24 - fido_cbor_info_minpinlen; 25 - fido_cbor_info_new_pin_required; 26 - fido_cbor_info_rk_remaining; 27 - fido_cbor_info_uv_attempts; 28 - fido_cbor_info_uv_modality. 29 ** Documentation and reliability fixes. 30 31* Version 1.11.0 (2022-05-03) 32 ** Experimental PCSC support; enable with -DUSE_PCSC. 33 ** Improved OpenSSL 3.0 compatibility. 34 ** Use RFC1951 raw deflate to compress CTAP 2.1 largeBlobs. 35 ** winhello: advertise "uv" instead of "clientPin". 36 ** winhello: support hmac-secret in fido_dev_get_assert(). 37 ** New API calls: 38 - fido_cbor_info_maxlargeblob. 39 ** Documentation and reliability fixes. 40 ** Separate build and regress targets. 41 42* Version 1.10.0 (2022-01-17) 43 ** hid_osx: handle devices with paths > 511 bytes; gh#462. 44 ** bio: fix CTAP2 canonical CBOR encoding in fido_bio_dev_enroll_*(); gh#480. 45 ** winhello: fallback to GetTopWindow() if GetForegroundWindow() fails. 46 ** winhello: fallback to hid_win.c if webauthn.dll isn't available. 47 ** New API calls: 48 - fido_dev_info_set; 49 - fido_dev_io_handle; 50 - fido_dev_new_with_info; 51 - fido_dev_open_with_info. 52 ** Cygwin and NetBSD build fixes. 53 ** Documentation and reliability fixes. 54 ** Support for TPM 2.0 attestation of COSE_ES256 credentials. 55 56* Version 1.9.0 (2021-10-27) 57 ** Enabled NFC support on Linux. 58 ** Added OpenSSL 3.0 compatibility. 59 ** Removed OpenSSL 1.0 compatibility. 60 ** Support for FIDO 2.1 "minPinLength" extension. 61 ** Support for COSE_EDDSA, COSE_ES256, and COSE_RS1 attestation. 62 ** Support for TPM 2.0 attestation. 63 ** Support for device timeouts; see fido_dev_set_timeout(). 64 ** New API calls: 65 - es256_pk_from_EVP_PKEY; 66 - fido_cred_attstmt_len; 67 - fido_cred_attstmt_ptr; 68 - fido_cred_pin_minlen; 69 - fido_cred_set_attstmt; 70 - fido_cred_set_pin_minlen; 71 - fido_dev_set_pin_minlen_rpid; 72 - fido_dev_set_timeout; 73 - rs256_pk_from_EVP_PKEY. 74 ** Reliability and portability fixes. 75 ** Better handling of HID devices without identification strings; gh#381. 76 ** Fixed detection of Windows's native webauthn API; gh#382. 77 78* Version 1.8.0 (2021-07-22) 79 ** Dropped 'Requires.private' entry from pkg-config file. 80 ** Better support for FIDO 2.1 authenticators. 81 ** Support for Windows's native webauthn API. 82 ** Support for attestation format 'none'. 83 ** New API calls: 84 - fido_assert_set_clientdata; 85 - fido_cbor_info_algorithm_cose; 86 - fido_cbor_info_algorithm_count; 87 - fido_cbor_info_algorithm_type; 88 - fido_cbor_info_transports_len; 89 - fido_cbor_info_transports_ptr; 90 - fido_cred_set_clientdata; 91 - fido_cred_set_id; 92 - fido_credman_set_dev_rk; 93 - fido_dev_is_winhello. 94 ** fido2-token: new -Sc option to update a resident credential. 95 ** Documentation and reliability fixes. 96 ** HID access serialisation on Linux. 97 98* Version 1.7.0 (2021-03-29) 99 ** New dependency on zlib. 100 ** Fixed musl build; gh#259. 101 ** hid_win: detect devices with vendor or product IDs > 0x7fff; gh#264. 102 ** Support for FIDO 2.1 authenticator configuration. 103 ** Support for FIDO 2.1 UV token permissions. 104 ** Support for FIDO 2.1 "credBlobs" and "largeBlobs" extensions. 105 ** New API calls: 106 - fido_assert_blob_len; 107 - fido_assert_blob_ptr; 108 - fido_assert_largeblob_key_len; 109 - fido_assert_largeblob_key_ptr; 110 - fido_assert_set_hmac_secret; 111 - fido_cbor_info_maxcredbloblen; 112 - fido_cred_largeblob_key_len; 113 - fido_cred_largeblob_key_ptr; 114 - fido_cred_set_blob; 115 - fido_dev_enable_entattest; 116 - fido_dev_force_pin_change; 117 - fido_dev_has_uv; 118 - fido_dev_largeblob_get; 119 - fido_dev_largeblob_get_array; 120 - fido_dev_largeblob_remove; 121 - fido_dev_largeblob_set; 122 - fido_dev_largeblob_set_array; 123 - fido_dev_set_pin_minlen; 124 - fido_dev_set_sigmask; 125 - fido_dev_supports_credman; 126 - fido_dev_supports_permissions; 127 - fido_dev_supports_uv; 128 - fido_dev_toggle_always_uv. 129 ** New fido_init flag to disable fido_dev_open's U2F fallback; gh#282. 130 ** Experimental NFC support on Linux; enable with -DNFC_LINUX. 131 132* Version 1.6.0 (2020-12-22) 133 ** Fix OpenSSL 1.0 and Cygwin builds. 134 ** hid_linux: fix build on 32-bit systems. 135 ** hid_osx: allow reads from spawned threads. 136 ** Documentation and reliability fixes. 137 ** New API calls: 138 - fido_cred_authdata_raw_len; 139 - fido_cred_authdata_raw_ptr; 140 - fido_cred_sigcount; 141 - fido_dev_get_uv_retry_count; 142 - fido_dev_supports_credman. 143 ** Hardened Windows build. 144 ** Native FreeBSD and NetBSD support. 145 ** Use CTAP2 canonical CBOR when combining hmac-secret and credProtect. 146 147* Version 1.5.0 (2020-09-01) 148 ** hid_linux: return FIDO_OK if no devices are found. 149 ** hid_osx: 150 - repair communication with U2F tokens, gh#166; 151 - reliability fixes. 152 ** fido2-{assert,cred}: new options to explicitly toggle UP, UV. 153 ** Support for configurable report lengths. 154 ** New API calls: 155 - fido_cbor_info_maxcredcntlst; 156 - fido_cbor_info_maxcredidlen; 157 - fido_cred_aaguid_len; 158 - fido_cred_aaguid_ptr; 159 - fido_dev_get_touch_begin; 160 - fido_dev_get_touch_status. 161 ** Use COSE_ECDH_ES256 with CTAP_CBOR_CLIENT_PIN; gh#154. 162 ** Allow CTAP messages up to 2048 bytes; gh#171. 163 ** Ensure we only list USB devices by default. 164 165* Version 1.4.0 (2020-04-15) 166 ** hid_hidapi: hidapi backend; enable with -DUSE_HIDAPI=1. 167 ** Fall back to U2F if the key claims to, but does not support FIDO2. 168 ** FIDO2 credential protection (credprot) support. 169 ** New API calls: 170 - fido_cbor_info_fwversion; 171 - fido_cred_prot; 172 - fido_cred_set_prot; 173 - fido_dev_set_transport_functions; 174 - fido_set_log_handler. 175 ** Support for FreeBSD. 176 ** Support for C++. 177 ** Support for MSYS. 178 ** Fixed EdDSA and RSA self-attestation. 179 180* Version 1.3.1 (2020-02-19) 181 ** fix zero-ing of le1 and le2 when talking to a U2F device. 182 ** dropping sk-libfido2 middleware, please find it in the openssh tree. 183 184* Version 1.3.0 (2019-11-28) 185 ** assert/hmac: encode public key as per spec, gh#60. 186 ** fido2-cred: fix creation of resident keys. 187 ** fido2-{assert,cred}: support for hmac-secret extension. 188 ** hid_osx: detect device removal, gh#56. 189 ** hid_osx: fix device detection in MacOS Catalina. 190 ** New API calls: 191 - fido_assert_set_authdata_raw; 192 - fido_assert_sigcount; 193 - fido_cred_set_authdata_raw; 194 - fido_dev_cancel. 195 ** Middleware library for use by OpenSSH. 196 ** Support for biometric enrollment. 197 ** Support for OpenBSD. 198 ** Support for self-attestation. 199 200* Version 1.2.0 (released 2019-07-26) 201 ** Credential management support. 202 ** New API reflecting FIDO's 3-state booleans (true, false, absent): 203 - fido_assert_set_up; 204 - fido_assert_set_uv; 205 - fido_cred_set_rk; 206 - fido_cred_set_uv. 207 ** Command-line tools for Windows. 208 ** Documentation and reliability fixes. 209 ** fido_{assert,cred}_set_options() are now marked as deprecated. 210 211* Version 1.1.0 (released 2019-05-08) 212 ** MacOS: fix IOKit crash on HID read. 213 ** Windows: fix contents of release file. 214 ** EdDSA (Ed25519) support. 215 ** fido_dev_make_cred: fix order of CBOR map keys. 216 ** fido_dev_get_assert: plug memory leak when operating on U2F devices. 217 218* Version 1.0.0 (released 2019-03-21) 219 ** Native HID support on Linux, MacOS, and Windows. 220 ** fido2-{assert,cred}: new -u option to force U2F on dual authenticators. 221 ** fido2-assert: support for multiple resident keys with the same RP. 222 ** Strict checks for CTAP2 compliance on received CBOR payloads. 223 ** Better fuzzing harnesses. 224 ** Documentation and reliability fixes. 225 226* Version 0.4.0 (released 2019-01-07) 227 ** fido2-assert: print the user id for resident credentials. 228 ** Fix encoding of COSE algorithms when making a credential. 229 ** Rework purpose of fido_cred_set_type; no ABI change. 230 ** Minor documentation and code fixes. 231 232* Version 0.3.0 (released 2018-09-11) 233 ** Various reliability fixes. 234 ** Merged fuzzing instrumentation. 235 ** Added regress tests. 236 ** Added support for FIDO 2's hmac-secret extension. 237 ** New API calls: 238 - fido_assert_hmac_secret_len; 239 - fido_assert_hmac_secret_ptr; 240 - fido_assert_set_extensions; 241 - fido_assert_set_hmac_salt; 242 - fido_cred_set_extensions; 243 - fido_dev_force_fido2. 244 ** Support for native builds with Microsoft Visual Studio 17. 245 246* Version 0.2.0 (released 2018-06-20) 247 ** Added command-line tools. 248 ** Added a couple of missing get functions. 249 250* Version 0.1.1 (released 2018-06-05) 251 ** Added documentation. 252 ** Added OpenSSL 1.0 support. 253 ** Minor fixes. 254 255* Version 0.1.0 (released 2018-05-18) 256 ** First beta release. 257