Algoritmo COSE sconosciuto riscontrato. alg: -257

Ciao,

Uno dei miei utenti non riesce ad accedere con l’autenticazione a due fattori (2FA) utilizzando una chiave hardware.

Dopo aver premuto il pulsante sulla chiave durante l’accesso, Windows 10 richiede un PIN.
Dopo aver inserito il PIN, riceve l’errore “L’algoritmo utilizzato per la chiave di sicurezza non è riconosciuto”. Ho verificato e si tratta della chiave i18n webauthn.validation.unknown_cose_algorithm_error.

Il server registra questo come un errore:

Unknown COSE algorithm encountered. alg: -257. user_id: <redacted>. params: <ActionController::Parameters {"signature"=>"<redacted>", "clientData"=>"<redacted>", "authenticatorData"=>"<redacted>", "credentialId"=>"<redacted>"} permitted: false>

Una rapida ricerca su Google ha trovato solo questo:
https://review.discourse.org/t/fix-catch-error-when-unknown-cose-algorithm-is-supplied-for-security-key-8649/8074

Quindi probabilmente deve essere implementato, ma stranamente l’utente è riuscito a configurarlo sull’account?
Non sono sicuro di poterlo risolvere dal lato amministrativo del forum senza modifiche al codice.

Sto utilizzando l’installazione Docker standalone consigliata con la versione 2.7.0.beta3. Ho ricostruito il forum e aggiornato meno di un’ora fa prima di creare questo thread.

È strano. Possono accedere con 2FA e questa chiave hardware su altre applicazioni web? Qualche idea, @dan?

Puoi condividere il modello della chiave di sicurezza e la versione del browser?

Sarà interessante vedere quale algoritmo manca da:

Indovino che sia questo: Support EdDSA · Issue #48 · cedarcode/cose-ruby · GitHub EdDSA.

Se abbiamo il modello e il sistema operativo del dispositivo di sviluppo.

Forse si tratta di questa cosa? https://blockchain2fa.io/

Immagino si possano usare le blockchain per qualsiasi cosa.

Questa è una limitazione della libreria cose-ruby che utilizziamo, come ha fatto notare @sam. Supporta solo questi algoritmi:

Secondo il messaggio di errore, quella chiave di sicurezza utilizza l’algoritmo “-257”, che corrisponde a RS256 e non è raccomandato. Probabilmente è per questo motivo che la libreria non lo implementa.

Quale dispositivo stai cercando di utilizzare per l’autenticazione?