Module webauthn_rs_core::proto
source · Expand description
Protocol bindings
Re-exports
pub use crate::interface::*;
Modules
- Types related to attestation (Registration)
- Types related to authentication (Assertion)
- Types related to CBOR Object Signing and Encryption (COSE)
- Extensions allowing certain types of authenticators to provide supplemental information.
- Types that define options as to how an authenticator may interact with with the server.
Structs
- A descriptor of a credential that can be used.
- The set of extensions that were provided by the client during authentication
- https://w3c.github.io/webauthn/#dictdef-authenticationextensionsclientoutputs The default option here for Options are None, so it can be derived
- A container for binary that should be base64 encoded in serialisation. In reverse when deserializing, will decode from many different types of base64 possible.
- The data collected and hashed in the operation. https://www.w3.org/TR/webauthn-2/#dictdef-collectedclientdata
- A JSON serializable challenge which is issued to the user’s webbrowser for handling. This is meant to be opaque, that is, you should not need to inspect or alter the content of the struct - you should serialise it and transmit it to the client only.
- The desired options for the client’s use of the
credProtectextension - The inputs to the hmac secret if it was created during registration.
- The response to a hmac get secret request.
- Public key cryptographic parameters
- A client response to an authentication challenge. This contains all required information to asses and assert trust in a credentials legitimacy, followed by authentication to a user.
- The requested options for the authentication
- A client response to a registration challenge. This contains all required information to asses and assert trust in a credentials legitimacy, followed by registration to a user.
- The set of extensions that were registered by this credential.
- https://w3c.github.io/webauthn/#dictdef-authenticationextensionsclientoutputs The default option here for Options are None, so it can be derived
- Relying Party Entity
- Extension option inputs for PublicKeyCredentialRequestOptions
- A JSON serializable challenge which is issued to the user’s webbrowser for handling. This is meant to be opaque, that is, you should not need to inspect or alter the content of the struct - you should serialise it and transmit it to the client only.
- Extension option inputs for PublicKeyCredentialCreationOptions.
- Token binding
- User Entity
Enums
- The authenticator attachment hint. This is NOT enforced, and is only used to help a user select a relevant authenticator type.
- A COSE signature algorithm, indicating the type of key and hash type that should be used. You shouldn’t need to alter or use this value.
- Valid credential protection policies
- The result state of an extension as returned from the authenticator.
- Request in residentkey workflows that conditional mediation should be used in the UI, or not.
- The Relying Party’s requirements for client-side discoverable credentials.
- Defines the User Authenticator Verification policy. This is documented https://w3c.github.io/webauthn/#enumdef-userverificationrequirement, and each variant lists it’s effects.
Type Aliases
- A credential ID type. At the moment this is a vector of bytes, but it could also be a future change for this to be base64 string instead.