odoo/odoo · error · InvalidRegistrationResponse
Unsupported pub_area.parameters "{pub_area_param_type}" (TPM
Error message
Unsupported pub_area.parameters "{pub_area_param_type}" (TPM) What it means
Error "Unsupported pub_area.parameters "{pub_area_param_type}" (TPM)" thrown in odoo/odoo.
Source
Thrown at addons/auth_passkey/_vendor/webauthn/registration/formats/tpm.py:137
"Public key was not ECC key as indicated in pubArea (TPM)"
)
pubKeyCoords = b"".join([decoded_public_key.x, decoded_public_key.y])
if pub_area.unique.value != pubKeyCoords:
unique_hex = pub_area.unique.value.hex()
pub_key_xy_hex = pubKeyCoords.hex()
raise InvalidRegistrationResponse(
f'Unique "{unique_hex}" was not same as public key [x,y] "{pub_key_xy_hex}" (TPM)'
)
pub_area_crv = TPM_ECC_CURVE_COSE_CRV_MAP[pub_area.parameters.curve_id]
if pub_area_crv != decoded_public_key.crv:
raise InvalidRegistrationResponse(
f'PubArea curve ID "{pub_area_crv}" was not same as public key crv "{decoded_public_key.crv}" (TPM)'
)
else:
pub_area_param_type = type(pub_area.parameters)
raise InvalidRegistrationResponse(
f'Unsupported pub_area.parameters "{pub_area_param_type}" (TPM)'
)
# Validate that certInfo is valid:
cert_info = parse_cert_info(attestation_statement.cert_info)
# Verify that magic is set to TPM_GENERATED_VALUE.
# a.k.a. 0xff544347
magic_int = int.from_bytes(cert_info.magic, "big")
if magic_int != int(0xFF544347):
raise InvalidRegistrationResponse(
f'CertInfo magic "{magic_int}" was not TPM_GENERATED_VALUE 4283712327 (0xff544347) (TPM)'
)
# Concatenate authenticatorData and clientDataHash to form attToBeSigned.
attestation_dict = parse_cbor(attestation_object)
authenticator_data_bytes: bytes = attestation_dict["authData"]
client_data_hash = hash_by_alg(client_data_json)View on GitHub (pinned to 1e661df964)
Solutions
- The pubArea parameters type is unsupported. Use a TPM authenticator with standard RSA or ECC parameters.
When it happens
Trigger: Thrown at addons/auth_passkey/_vendor/webauthn/registration/formats/tpm.py:137 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of odoo/odoo@1e661df964 (2026-08-15).
Data as JSON: /api/errors/12e76e550a35593c.
Report an issue: GitHub.