Skip to content
This repository was archived by the owner on Aug 2, 2022. It is now read-only.

webauthn key & signature type #7012

Closed
spoonincode opened this issue Mar 28, 2019 · 4 comments
Closed

webauthn key & signature type #7012

spoonincode opened this issue Mar 28, 2019 · 4 comments
Labels
CONSENSUS Introduces a change that may modify consensus protocol rules on an existing blockchain. enhancement

Comments

@spoonincode
Copy link
Contributor

spoonincode commented Mar 28, 2019

Finish adding webauthn key & signatures to eosio. There are still some unresolved questions (now solved; answers in bold) that came out of the prototype:

  • where/how/if credential ID is stored - will not be stored as part of consensus; public storage discouraged regardless
  • JSON parsing vs not parsing - We need to parse JSON, the "tricks" we discussed internally will not work due to item 4 on this list
  • Compression of JSON or not - No
  • Validation of HTTPS origin in signature or not (a public key would have an origin it is scoped to) - Yes we need to validate this
  • Validation of user presence and/or user verification in signature (a public key would state some minimum level of verification requirement) - Doing this and maintaining the "symmetry" of recovered keys to the public keys in the authority is unwieldy, but it's probably useful to have this ability so will do it

Ideally all of these are answered before commencing work on the production implementation.

@spoonincode spoonincode added the CONSENSUS Introduces a change that may modify consensus protocol rules on an existing blockchain. label Mar 28, 2019
@spoonincode spoonincode self-assigned this Mar 28, 2019
@jafri
Copy link
Contributor

jafri commented Apr 1, 2019

If credential ID is not stored as part of consensus or public storage, how will credentials be synced between nodes?

@spoonincode
Copy link
Contributor Author

If credential ID is not stored as part of consensus or public storage, how will credentials be synced between nodes?

The public key that a credential ID references is part of consensus. It will be a PUB_WA_... thing. But the storage of the credential ID that is required to sign via the private key associated with that public key is left outside the scope of consensus.

@nksanthosh
Copy link
Contributor

EOSJS related changes will be tracked in EOSIO/eosjs#537

@spoonincode
Copy link
Contributor Author

#7421

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
CONSENSUS Introduces a change that may modify consensus protocol rules on an existing blockchain. enhancement
Projects
None yet
Development

No branches or pull requests

3 participants