Class RegisteredCredential.RegisteredCredentialBuilder
- java.lang.Object
-
- com.yubico.webauthn.RegisteredCredential.RegisteredCredentialBuilder
-
- Enclosing class:
- RegisteredCredential
public static class RegisteredCredential.RegisteredCredentialBuilder extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RegisteredCredential.RegisteredCredentialBuilder.MandatoryStages
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RegisteredCredential
build()
RegisteredCredential.RegisteredCredentialBuilder
credentialId(@NonNull ByteArray credentialId)
The credential ID of the credential.RegisteredCredential.RegisteredCredentialBuilder
publicKeyCose(@NonNull ByteArray publicKeyCose)
The credential public key encoded in COSE_Key format, as defined in Section 7 of RFC 8152.RegisteredCredential.RegisteredCredentialBuilder
publicKeyEs256Raw(ByteArray publicKeyEs256Raw)
Specify the credential public key in U2F format.RegisteredCredential.RegisteredCredentialBuilder
signatureCount(long signatureCount)
The stored signature count of the credential.java.lang.String
toString()
RegisteredCredential.RegisteredCredentialBuilder
userHandle(@NonNull ByteArray userHandle)
The user handle of the user the credential is registered to.
-
-
-
Method Detail
-
publicKeyCose
public RegisteredCredential.RegisteredCredentialBuilder publicKeyCose(@NonNull @NonNull ByteArray publicKeyCose)
The credential public key encoded in COSE_Key format, as defined in Section 7 of RFC 8152. This method overwritespublicKeyEs256Raw(ByteArray)
.The return value of
RegistrationResult.getPublicKeyCose()
is a suitable argument for this method.This is used to verify the
signature
in authentication assertions.Alternatively, the public key can be specified using the
publicKeyEs256Raw(ByteArray)
method if the key is stored in the U2F format (ALG_KEY_ECC_X962_RAW
as specified in FIDO Registry §3.6.2 Public Key Representation Formats). This is mostly useful for public keys registered via the U2F JavaScript API.
-
publicKeyEs256Raw
public RegisteredCredential.RegisteredCredentialBuilder publicKeyEs256Raw(ByteArray publicKeyEs256Raw)
Specify the credential public key in U2F format. This method overwritespublicKeyCose(ByteArray)
.An alternative to
publicKeyCose(ByteArray)
, this method expects anES256
public key inALG_KEY_ECC_X962_RAW
format as specified in FIDO Registry §3.6.2 Public Key Representation Formats.This is primarily intended for public keys registered via the U2F JavaScript API. If your application has only used the
navigator.credentials.create()
API to register credentials, you should usepublicKeyCose(ByteArray)
instead.- See Also:
publicKeyCose(ByteArray)
-
credentialId
public RegisteredCredential.RegisteredCredentialBuilder credentialId(@NonNull @NonNull ByteArray credentialId)
The credential ID of the credential.- Returns:
this
.- See Also:
- Credential
ID,
RegistrationResult.getKeyId()
,PublicKeyCredentialDescriptor.getId()
-
userHandle
public RegisteredCredential.RegisteredCredentialBuilder userHandle(@NonNull @NonNull ByteArray userHandle)
The user handle of the user the credential is registered to.- Returns:
this
.- See Also:
- User Handle,
UserIdentity.getId()
-
signatureCount
public RegisteredCredential.RegisteredCredentialBuilder signatureCount(long signatureCount)
The stored signature count of the credential.This is used to validate the
signature counter
in authentication assertions.- Returns:
this
.- See Also:
- §6.1.
Authenticator Data,
AuthenticatorData.getSignatureCounter()
,AssertionResult.getSignatureCount()
-
build
public RegisteredCredential build()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-