AuthenticatorAttestationResponse: thuộc tính attestationObject
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Thuộc tính attestationObject của giao diện AuthenticatorAttestationResponse trả về một ArrayBuffer chứa khóa công khai mới, cùng với chữ ký trên toàn bộ attestationObject bằng một khóa riêng tư được lưu trong authenticator khi nó được sản xuất.
Là một phần của lệnh gọi CredentialsContainer.create(), một authenticator sẽ tạo một cặp khóa mới cùng với một attestationObject cho cặp khóa đó. Khóa công khai tương ứng với khóa riêng tư đã tạo chữ ký attestation là thông tin đã được biết đến rộng rãi; tuy nhiên, có nhiều chuỗi khóa công khai attestation đã biết cho các hệ sinh thái khác nhau (ví dụ: attestation Android hoặc TPM).
Giá trị
Sau khi giải mã ArrayBuffer được mã hóa bằng CBOR, đối tượng JavaScript thu được sẽ chứa các thuộc tính sau:
authData-
Dữ liệu authenticator cho thao tác. Lưu ý rằng trong
AuthenticatorAssertionResponse,authenticatorDatađược lộ ra dưới dạng một thuộc tính trong đối tượng JavaScript (xemAuthenticatorAssertionResponse.authenticatorData), trong khi trongAuthenticatorAttestationResponse,authenticatorDatalà một thuộc tính trong một ánh xạ CBOR.Trường
AuthenticatorAssertionResponse.authenticatorDatagiống nhau được dùng bởi cảAuthenticatorAttestationResponselẫnAuthenticatorAssertionResponse. Khi được dùng trong attestation, nó chứa một trường tùy chọn làattestedCredentialData. Trường này không được bao gồm khi dùng trongAuthenticatorAssertionResponse. TrườngattestedCredentialDatachứacredentialIdvàcredentialPublicKey. fmt-
Một chuỗi văn bản cho biết định dạng của
attStmt. Đặc tả WebAuthn định nghĩa một số định dạng; tuy nhiên, các định dạng cũng có thể được định nghĩa trong các đặc tả khác và đăng ký trong sổ đăng ký IANA. Các định dạng do WebAuthn định nghĩa là:"packed""tpm""android-key""android-safetynet""fido-u2f""none"
attStmt-
Một attestation statement có định dạng được xác định bởi
"fmt". Hiện tại, hãy xem đặc tả WebAuthn để biết chi tiết về từng định dạng.
Ví dụ
Xem Creating a public key credential để có ví dụ chi tiết.
Thông số kỹ thuật
| Specification |
|---|
| Web Authentication: An API for accessing Public Key Credentials - Level 3> # dom-authenticatorattestationresponse-attestationobject> |
Khả năng tương thích với trình duyệt
Xem thêm
CredentialsContainer.create(): phương thức dùng để tạo một statement vớichallengemật mã mà chữ ký của authenticator được chứa trongattStmt, với tùy chọn truyền tảiattestationđược chỉ định.