Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CTAP2 definition fix #783

Merged
merged 2 commits into from
Feb 7, 2018
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 14 additions & 10 deletions index.bs
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,10 @@ spec: credential-management-1; urlPrefix: https://w3c.github.io/webappsec-creden
text: signal
text: same-origin with its ancestors; url: same-origin-with-its-ancestors

spec: Geolocation-API; urlPrefix: https://dev.w3.org/geo/api/spec-source.html
type: interface
text: Coordinates; url: coordinates_interface

spec: mixed-content; urlPrefix: www.w3.org/TR/mixed-content/
type: dfn
text: a priori authenticated
Expand All @@ -117,7 +121,7 @@ spec: WHATWG HTML; urlPrefix: https://html.spec.whatwg.org/

spec: FIDO-CTAP; urlPrefix: https://fidoalliance.org/specs/fido-v2.0-ps-20170927/fido-client-to-authenticator-protocol-v2.0-ps-20170927.html
type: dfn
text: CTAP canonical CBOR encoding form; url: message-encoding
text: CTAP2 canonical CBOR encoding form; url: ctap2-canonical-cbor-encoding-form

spec: FIDO-APPID; urlPrefix: https://fidoalliance.org/specs/fido-u2f-v1.2-ps-20170411/fido-appid-and-facets-v1.2-ps-20170411.html
type: dfn
Expand Down Expand Up @@ -270,9 +274,9 @@ A [=[RP]=] MUST behave as described in [[#rp-operations]] to obtain the security
## All Conformance Classes ## {#conforming-all-classes}

All [=CBOR=] encoding performed by the members of the above conformance classes MUST be done using the
[=CTAP canonical CBOR encoding form=].
[=CTAP2 canonical CBOR encoding form=].
All decoders of the above conformance classes SHOULD reject CBOR that is not validly encoded
in the [=CTAP canonical CBOR encoding form=] and SHOULD reject messages with duplicate map keys.
in the [=CTAP2 canonical CBOR encoding form=] and SHOULD reject messages with duplicate map keys.


# Dependencies # {#dependencies}
Expand All @@ -287,7 +291,7 @@ below and in [[#index-defined-elsewhere]].

: CBOR
:: A number of structures in this specification, including attestation statements and extensions, are encoded using the
[=CTAP canonical CBOR encoding form=] of the Compact Binary Object Representation (<dfn>CBOR</dfn>) [[!RFC7049]],
[=CTAP2 canonical CBOR encoding form=] of the Compact Binary Object Representation (<dfn>CBOR</dfn>) [[!RFC7049]],
as defined in [[!FIDO-CTAP]].

: CDDL
Expand Down Expand Up @@ -2582,7 +2586,7 @@ object=] for a given credential. It has the following format:
<td>variable</td>
<td>
The [=credential public key=] encoded in COSE_Key format,
as defined in Section 7 of [[RFC8152]], using the [=CTAP canonical CBOR encoding form=].
as defined in Section 7 of [[RFC8152]], using the [=CTAP2 canonical CBOR encoding form=].
The COSE_Key-encoded [=credential public key=] MUST contain the optional "alg" parameter and MUST NOT
contain any other optional parameters. The "alg" parameter MUST contain a {{COSEAlgorithmIdentifier}} value.
The encoded [=credential public key=] MUST also contain any additional required parameters stipulated by the
Expand Down Expand Up @@ -2621,7 +2625,7 @@ algorithm (ECDSA w/ SHA-256, see [[RFC8152]] [Section 8.1](https://tools.ietf.or
}
</pre>

Below is the above Eliptic Curve public key encoded in the [=CTAP canonical CBOR encoding form=], whitespace and line breaks
Below is the above Eliptic Curve public key encoded in the [=CTAP2 canonical CBOR encoding form=], whitespace and line breaks
are included here for clarity and to match the [[CDDL]] presentation above:

<pre class="example" highlight="json">
Expand Down Expand Up @@ -3967,8 +3971,8 @@ WebAuthn [=[RP]=].
:: None, except creating the authenticator extension input from the client extension input.

: Client extension output
:: Returns a JavaScript object that encodes the location information in the authenticator extension output as a Coordinates value,
as defined by [The W3C Geolocation API Specification](https://dev.w3.org/geo/api/spec-source.html#coordinates_interface).
:: Returns a JavaScript object that encodes the location information in the authenticator extension output as a {{Coordinates}} value,
as defined by [[Geolocation-API]].
<xmp class="idl">
partial dictionary AuthenticationExtensionsClientOutputs {
Coordinates loc;
Expand All @@ -3983,8 +3987,8 @@ WebAuthn [=[RP]=].

: Authenticator extension output
:: A
[The W3C Geolocation API Specification](https://dev.w3.org/geo/api/spec-source.html#coordinates_interface)
Coordinates record encoded as a CBOR map.
[[Geolocation-API]]
{{Coordinates}} record encoded as a CBOR map.
Values represented by the "double" type in JavaScript are represented as 64-bit CBOR floating point numbers.
Per the Geolocation specification, the "latitude", "longitude", and "accuracy" values are required
and other values such as "altitude" are optional.
Expand Down