Do not use Distinguished Name to convey protocol details

Aperta
#278 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
cryptography, markdown
Ambito
security

Direzione di ricerca

Read the certificate profile in index.bs at the linked lines 393–406, then compare its use of commonName and issuer Distinguished Name with the cited RFCs and browser certificate requirements. Determine the proposed SRVName and random issuer value changes and how the profile should express them. Done means the certificate guidance no longer uses those fields to convey protocol details and remains compatible with the stated requirements.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

security-tracker

The current certificate profile is incompatible with browser security requirements for verifying certificates, and uses fields known to cause interoperability issues.

Specifically, the following section demonstrates this: https://github.com/w3c/openscreenprotocol/blob/5488c7b7cce9c9c64ba97348a8deb0c6c50eb9bb/index.bs#L393-L406

  1. The commonName field is used to convey a form of "SRV-ID" (see https://tools.ietf.org/html/rfc6125 ).
    As captured at https://datatracker.ietf.org/doc/draft-ietf-uta-use-san/ , the use of DNS-IDs/SRV-IDs within the commonName causes both interoperability and security issues. If this is necessary as part of client validation, then using the SRV-ID (since this is not strictly a DNS-ID, due to underscores and SRV records), it's recommended to use the SRVName as captured within RFC 4985

  2. The issuer Distinguished Name is used to convey human-presentable language, which is counter to good practice.
    Multiple issues exist with DN, leading to a host of implementation issues. For example, field length limits that apply in the context of PKIX/RFC 5280 but that do not apply in context of X.509, or character encoding issues in which the UTF8String/PrintableString SHOULD of 5280 (and MUST of 3280) are ignored in favor of bespoke not-quite-T61String or BMPString (which may be perceived as having embedded NULs).

    While it's required that the Issuer have a non-empty Distinguished Name (a decision made during RFC 2459 to keep compat with the X.500 model of certificates that was largely not deployed), a better practice is simply to generate a random value.

    This is particularly important when considering a user may interact with multiple devices that share the same model-name, which can create ambiguity if any attempt is made to validate the certificate beyond the fingerprint comparison, which the random (non-human-readable) value would accomplish.

Lingua principale
Bikeshed
Stelle
115
Fork
21
Merge medio
5h 2m
PR unite (30g)
2

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di w3c/openscreenprotocol

Tutte le issue di w3c/openscreenprotocol

Issue simili

Altre issue su Security

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.