Post-quantum readiness

Aperta
#420 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
12/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva

Direzione di ricerca

The change lives in the Push API spec text: the PushSubscription interface and the "receiving a push message" algorithm, plus references to RFC 8291. Start by reading the linked webpush-pq sketches and the open issue there (martinthomson/webpush-pq#2) to see the proposed keying material. This is cryptographic design work that the IETF DISPATCH process will decide, so a first contribution would be a question or review comment, not a spec edit. Done means the maintainers have agreed on the scope of the spec changes.

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

Descrizione

The current cryptographic design loses many of the good properties we might like to have if a cryptographically-relevant quantum computer is created and applied to recovering secrets.

I've started sketches of designs for a replacement cryptographic message protection here: https://github.com/martinthomson/webpush-pq

My goal is to take these to the IETF DISPATCH process, as I think that the cryptographic review there is more likely to be robust. It is also easier to obsolete RFC 8291 with another IETF document.

The work for the Push API is pretty limited. Defining a new member in PushSubscription to carry new secrets or keying material is all that is needed, as well as updates to references and the "receiving a push message" algorithm.

It might make sense to use this opportunity to split out the declarative functions so that it is not necessary to opportunistically parse JSON for every message. The current design spends a lot of bytes on that, plus a bunch of wasted effort to probe for declarative messages. (Tracking that here.)

Lingua principale
HTML
Stelle
158
Fork
43
Merge medio
2g 6h
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/push-api

Tutte le issue di w3c/push-api

Issue simili

Altre issue su Cryptography

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.