WebAuthnP256.sign
Signs a challenge using a stored WebAuthn P256 Credential. If no Credential is provided, a prompt will be displayed for the user to select an existing Credential that was previously registered.
Imports
Named
import { WebAuthnP256 } from 'ox'
Examples
import { WebAuthnP256 } from 'ox'
const credential = await WebAuthnP256.createCredential({
name: 'Example',
})
const { metadata, signature } = await WebAuthnP256.sign({
credentialId: credential.id,
challenge: '0xdeadbeef',
})
{ metadata: { authenticatorData: '0x49960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97630500000000', clientDataJSON: '{"type":"webauthn.get","challenge":"9jEFijuhEWrM4SOW-tChJbUEHEP44VcjcJ-Bqo1fTM8","origin":"http://localhost:5173","crossOrigin":false}', challengeIndex: 23, typeIndex: 1, userVerificationRequired: true, }, signature: { r: 51231...4215n, s: 12345...6789n }, }
Definition
function sign(
options: sign.Options,
): Promise<sign.ReturnType>
Source: src/core/WebAuthnP256.ts
Parameters
options
- Type:
sign.Options
Options.
options.challenge
- Type:
0x${string}
The challenge to sign.
options.credentialId
- Type:
string
- Optional
The credential ID to use.
options.getFn
- Type:
(options?: CredentialRequestOptions) => Promise
- Optional
Credential request function. Useful for environments that do not support the WebAuthn API natively (i.e. React Native or testing environments).
options.rpId
- Type:
string
- Optional
The relying party identifier to use.
options.userVerification
- Type:
UserVerificationRequirement
- Optional
The user verification requirement.
Return Type
The signature.
Promise<sign.ReturnType>