29#ifndef FIDO_ASSERTION_H_
30#define FIDO_ASSERTION_H_
45 size_t &challenge_res_len);
79 size_t &challenge_res_len);
Class to initiate authentication(aka assertion in FIDO terminology) on client side by generating a si...
Definition: fido_assertion.h:74
bool sign_challenge()
Helper method to sign the challenge received from server side FIDO plugin during authentication,...
Definition: fido_assertion.cc:237
void get_signed_challenge(unsigned char **challenge_res, size_t &challenge_res_len)
Helper method to prepare challenge response to be passed to server.
Definition: fido_assertion.cc:244
bool prepare_assert(const unsigned char *challenge)
Helper method to prepare all context required to perform assertion.
Definition: fido_assertion.cc:227
fido_prepare_assert m_fido_prepare_assert
Definition: fido_assertion.h:82
A wrapper class to access fido2 library APIs to interact with the device.
Definition: fido_assertion.h:38
bool parse_challenge(const unsigned char *challenge)
Helper method to parse the challenge received from server during authentication process.
Definition: fido_assertion.cc:56
void set_scramble(unsigned char *scramble, size_t len)
Set method to set 32 bit random salt.
Definition: fido_assertion.cc:165
void set_rp_id(const char *rp_id)
Method to set the relying party name or id.
Definition: fido_assertion.cc:184
bool sign_challenge()
Method to obtains an assertion from a FIDO device.
Definition: fido_assertion.cc:97
void get_signed_challenge(unsigned char **challenge_res, size_t &challenge_res_len)
This method will extract authenticator data, signature from fido_assert_t struct.
Definition: fido_assertion.cc:144
void set_cred_id(unsigned char *cred, size_t len)
Set method to set credential ID.
Definition: fido_assertion.cc:175
const unsigned char * get_signature_ptr()
Method to get signature.
Definition: fido_assertion.cc:211
fido_assert_t * m_assert
Definition: fido_assertion.h:66
size_t get_authdata_len()
Method to get length of authenticator data.
Definition: fido_assertion.cc:202
fido_prepare_assert()
Construcutor to allocate memory for performing assertion (authentication)
Definition: fido_assertion.cc:39
~fido_prepare_assert()
Standard destructor.
Definition: fido_assertion.cc:44
size_t get_signature_len()
Method to get length of signature.
Definition: fido_assertion.cc:220
const unsigned char * get_authdata_ptr()
Method to get authenticator data.
Definition: fido_assertion.cc:193
void scramble(char *to, const char *message, const char *password)
Produce an obscure octet sequence from password and random string, received from the server.
Definition: password.cc:271