Commit e0f88c4
authored
Allow for shared secret to be created even if no PIN is set on the device (#146)
This is to support HMAC/PRF on such devices, which currently only worked
for devices with PIN or UV set (i.e. devices that could negotiate a
`pinUvAuthToken`).
Things of note:
- The requests now have a `needs_shared_secret()` function that is only
returning true for GetAssertion at the moment. I have not checked all
the other commands in detail, if they could potentially also require
this. If so, it would be easy to fill in (e.g. for Ctap2.2 where
MakeCredential could also do HMAC).
- In the `AuthTokenData`-store, `pinUvAuthToken` (and associated
permissions) are now optional. Luckily all this is hidden from the rest
of the library, as we already had an accessor-function for this that
returned an Option.
- The `user_verification_helper()` function is getting a bit more
complex, sadly. But I hope with all my comments, it's not too bad.
Making the naming of `Ctap2UserVerificationOperation`-variations more
explicit should also help.1 parent 94ee46d commit e0f88c4
File tree
10 files changed
+540
-75
lines changed- libwebauthn/src
- management
- ops/webauthn
- proto/ctap2
- model
- transport
- webauthn
10 files changed
+540
-75
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
199 | 199 | | |
200 | 200 | | |
201 | 201 | | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
202 | 206 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
335 | 335 | | |
336 | 336 | | |
337 | 337 | | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
338 | 342 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
318 | 318 | | |
319 | 319 | | |
320 | 320 | | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
321 | 325 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
193 | 193 | | |
194 | 194 | | |
195 | 195 | | |
196 | | - | |
| 196 | + | |
197 | 197 | | |
198 | 198 | | |
199 | 199 | | |
| |||
315 | 315 | | |
316 | 316 | | |
317 | 317 | | |
318 | | - | |
319 | | - | |
320 | | - | |
321 | | - | |
| 318 | + | |
322 | 319 | | |
323 | 320 | | |
324 | 321 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
209 | 209 | | |
210 | 210 | | |
211 | 211 | | |
| 212 | + | |
| 213 | + | |
212 | 214 | | |
213 | 215 | | |
214 | 216 | | |
215 | 217 | | |
216 | 218 | | |
217 | 219 | | |
218 | 220 | | |
219 | | - | |
| 221 | + | |
| 222 | + | |
220 | 223 | | |
221 | 224 | | |
222 | 225 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
441 | 441 | | |
442 | 442 | | |
443 | 443 | | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
444 | 458 | | |
445 | 459 | | |
446 | 460 | | |
| |||
0 commit comments