rp.name, user.name and user.displayName length limit does not state binary encoding #1994
Labels
i18n-needs-resolution
Issue the Internationalization Group has raised and looks for a response on.
stat:pr-open
type:technical
Milestone
The definitions of
PublicKeyCredentialEntity.name
andPublicKeyCredentialUserEntity.displayName
state thatand
but do not state what binary encoding the 64 byte limit applies to. Both reference § 6.4.1 String Truncation which states that
so presumably UTF-8 is intended, but again this is not explicitly stated - just that the truncation should respect UTF-8 considerations. CTAP2 explicitly states that UTF-8 is used, but not all authenticators use CTAP.
In fact IDL DOMStrings are explicitly sequences of 16-bit code units, which are more naturally represented by UTF-16 or UCS-2. So it could be argued that the length limit of
name
anddisplayName
varies depending on what encoding the authenticator happens to use. This makes it practically impossible (in theory, even if in practice most probably (?) use UTF-8) for an RP to determine if a user input is likely to be truncated or not.Proposed Change
The length limit for
PublicKeyCredentialEntity.name
andPublicKeyCredentialUserEntity.displayName
should explicitly state the binary encoding the limit applies to. For example:and
The text was updated successfully, but these errors were encountered: