Compare commits

..

3 Commits

Author SHA1 Message Date
Conor Patrick
ec52ca2605 refactor credmgmt 2020-03-27 10:43:26 -04:00
Conor Patrick
5d2acf19f1 change parsing TAG_CM to TAG_PARSE 2020-03-27 00:28:41 -04:00
Conor Patrick
6196481b7f allow depth-first-search and account for interleaved RK's 2020-03-27 00:28:23 -04:00
2 changed files with 6 additions and 5 deletions

View File

@@ -1 +1 @@
4.0.0
3.2.0

View File

@@ -461,7 +461,6 @@ static int ctap_make_extensions(CTAP_extensions * ext, uint8_t * ext_encoder_buf
// Generate credRandom
crypto_sha256_hmac_init(CRYPTO_TRANSPORT_KEY2, 0, credRandom);
crypto_sha256_update((uint8_t*)&ext->hmac_secret.credential->id, sizeof(CredentialId));
crypto_sha256_update(&getAssertionState.user_verified, 1);
crypto_sha256_hmac_final(CRYPTO_TRANSPORT_KEY2, 0, credRandom);
// Decrypt saltEnc
@@ -1587,15 +1586,18 @@ static int scan_for_next_rk(int index, uint8_t * initialRpIdHash){
if (initialRpIdHash != NULL) {
memmove(lastRpIdHash, initialRpIdHash, 32);
index = -1;
index = 0;
}
else
{
ctap_load_rk(index, &rk);
memmove(lastRpIdHash, rk.id.rpIdHash, 32);
index++;
}
do
ctap_load_rk(index, &rk);
while ( memcmp( rk.id.rpIdHash, lastRpIdHash, 32 ) != 0 )
{
index++;
if ((unsigned int)index >= ctap_rk_size())
@@ -1604,7 +1606,6 @@ static int scan_for_next_rk(int index, uint8_t * initialRpIdHash){
}
ctap_load_rk(index, &rk);
}
while ( memcmp( rk.id.rpIdHash, lastRpIdHash, 32 ) != 0 );
return index;
}