FIDO_ASSERT_VERIFY(3)
π FIDO_ASSERT_VERIFY(3) π
okay bestie, gather round, because this is a library functions manual page and it's literally about verifying signatures and it's giving main character energy π
β¨ NAME β¨
fido_assert_verify β verifies the signature of a FIDO2 assertion statement π¦
no cap, that's the whole job. it checks the signature. that's it. that's the vibe.
β¨ SYNOPSIS β¨
#include <fido.h>
int
fido_assert_verify(const fido_assert_t *assert, size_t idx,
int cose_alg, const void *pk);
β¨ DESCRIPTION β¨
so the way that fido_assert_verify() works is: it verifies whether the signature contained in statement index idx of assert matches the parameters of the assertion. π
π«Ά real talk though β before you use fido_assert_verify() in a sensitive context, the reader is strongly encouraged to make herself familiar with the FIDO2 assertion statement process as defined in the Web Authentication (webauthn) standard. like, please. for your own good. i'm begging. π
here's a brief description, bestie:
fido_assert_verify() verifies whether the client data hash, relying party ID, user presence and user verification attributes of assert have been attested by the holder of the private counterpart of the public key pk of COSE type cose_alg β where cose_alg is COSE_ES256, COSE_ES384, COSE_RS256, or COSE_EDDSA, and pk points to a es256_pk_t, es384_pk_t, rs256_pk_t, or eddsa_pk_t type accordingly. β¨
so like, match your key type to your alg type, okay? they're a set. they go together. don't be messy about it. π
π please note that the first statement inasserthas anidxof0. zero. not one. we start at zero here. iconic behaviour, honestly.
β¨ RETURN VALUES β¨
the error codes returned by fido_assert_verify() are defined in <fido/err.h>. π
if statement idx of assert passes verification with pk, then FIDO_OK is returned. slay!! β
π₯
β¨ SEE ALSO β¨
go read those too, i promise they're relevant π
Debian πΈ July 15, 2022 β mwah, that's the version and the date, tysm for coming to my ted talk, verify those signatures responsibly bestie π ππ¦
π¦ where this page comes from
- alpine 3.22: libfido2-doc 1.16.0-r0 Β· BSD-2-Clause
- alpine 3.23: libfido2-doc 1.16.0-r2 Β· BSD-2-Clause
- alpine 3.24: libfido2-doc 1.16.0-r4 Β· BSD-2-Clause
- arch rolling: libfido2 1.17.0-1 Β· BSD-2-Clause
- centos-stream 10: libfido2-devel 1.14.0-7.el10 Β· BSD-2-Clause
- centos-stream 9: libfido2-devel 1.13.0-2.el9 Β· BSD
- centos-stream 9: libfido2-devel 1.13.0-2.el9 Β· BSD
- debian bookworm: libfido2-doc 1.12.0-2 Β· BSD-2-Clause
- debian trixie: libfido2-doc 1.15.0-1 Β· BSD-2-Clause
- fedora 43: libfido2-devel 1.16.0-3.fc43 Β· BSD-2-Clause
- fedora 43: libfido2-devel 1.16.0-3.fc43 Β· BSD-2-Clause
- fedora 44: libfido2-devel 1.16.0-5.fc44 Β· BSD-2-Clause
- fedora 44: libfido2-devel 1.16.0-5.fc44 Β· BSD-2-Clause
- nixos 26.05: fido2-manage 0-unstable-2025-06-06
- nixpkgs unstable: fido2-manage 0-unstable-2025-06-06
- nixpkgs unstable: libfido2 1.17.0
- opensuse-leap 16.0: libfido2-devel 1.15.0-160000.3.2 Β· BSD-2-Clause
- opensuse-leap 16.0: libfido2-devel 1.15.0-160000.3.2 Β· BSD-2-Clause
- opensuse-leap 16.0: libfido2-devel 1.15.0-160000.3.2 Β· BSD-2-Clause
- opensuse-leap 16.0: libfido2-devel 1.15.0-160000.3.2 Β· BSD-2-Clause
- ubuntu noble: libfido2-doc 1.14.0-1build3 Β· BSD-2-Clause
- ubuntu questing: libfido2-doc 1.16.0-2
- ubuntu resolute: libfido2-doc 1.16.0-2build1 Β· BSD-2-Clause
- ubuntu stonking: libfido2-doc 1.17.0-2build1 Β· BSD-2-Clause
- π the page's license: BSD-2-Clause
- Copyright (c) 2018-2022 Yubico AB. All rights reserved
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms