Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Basic Signature Validation - Possible? #99

Open
cyberphone opened this issue Apr 5, 2021 · 3 comments
Open

Basic Signature Validation - Possible? #99

cyberphone opened this issue Apr 5, 2021 · 3 comments

Comments

@cyberphone
Copy link

cyberphone commented Apr 5, 2021

Pardon my "n00b" status when it comes to FIDO servers...

According to https://w3c.github.io/webauthn/images/fido-signature-formats-figure2.svg:
fido
the signed data consists of two parts.

Question: I have an application which depends on `clientDataHash'. Is there any way using your server (hopefully unmodified) and even better, the simulator as well that permit this? I.e. there would be no server-generated challenge, just signed data coming from a CTAP2 compatible client.

@max-smyth
Copy link

max-smyth commented Apr 5, 2021 via email

@cyberphone
Copy link
Author

cyberphone commented Apr 5, 2021

Thanx Max for the quick response!
My application is not compliant with WebAuthn but (hopefully) with FIDO2/CTAP2.

Imagine a FIDO2 client that hashes a JSON object like:

  {
     "toPay": "$100.00"
  }

Result: b6 f0 85 c7 9a 3b 06 06 85 3e 12 89 d0 3a c3 8d cc 6a cf c3 df f4 11 99 cb 2a cc 2f 5b 73 f1 bc

This would then be used as clientDataHash in a local FIDO2 signature process.

A verifier has the original JSON object and hashes it as well. Now it wants to know if the received signature validates. The signer is supposed to provide the information required to identify the key like userid.

The idea is creating a functional equivalent to an EMV card.

https://fido-web-pay.github.io/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants