Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Attestation evidence is size restricted because rustls caps Certificate handshake message at 64kb

Aperta
#75 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
35/100
Tipo di issue
Documentazione
Chiarezza
Da chiarire
Stato di attività
Tranquilla
Stack tecnologico
rust
Ambito
security

Direzione di ricerca

Inizia con il percorso dei certificati e dell’attestazione del crate attested-tls, quindi leggi la documentazione di CertificatePayloadTooLarge di rustls 0.23.37 e la discussione correlata in PR #65. Definisci come devono essere tracciate o documentate le dimensioni delle catene di certificati e delle evidenze; l’issue è risolta quando il budget di payload supportato è esplicito per le future aggiunte di evidenze.

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

Descrizione

The attested-tls crate puts attestation evidence (TDX quote or Azure vTMP attestation) into the TLS certificate via a x509 extension, which is verified during TLS handshake.

This evidence together with the certificate(s) must not exceed 64 kb due to a restriction imposed by Rustls.

https://docs.rs/rustls/0.23.37/rustls/enum.InvalidMessage.html#variant.CertificatePayloadTooLarge

When using a private CA, rather than self-signed, we also need to budget for the CA root cert in the certificate chain. So if guessing a certificate is around 1kb (usually its less), we have around 62kb for the payload. To be really safe we could avoid going over 60kb.

This is not an issue with are current evidence payloads, but important to bear in mind when adding additional data to the payload.

For example:

  • We propose to add collateral to the payload in https://github.com/flashbots/attested-tls/pull/65
  • We recently added 'platform metadata'. This is currently very small (less than 1 kb), but could be extended with future versions of attest.
  • Future versions of TDX are expected to significantly increase the evidence payload size. This is the biggest concern, but may not happen for a while, and the exact details are not yet known.
  • At some point we may add Platform Ownership Edorsements (POEs). Its debatable whether this would be part of the evidence payload, but worth bearing in mind.

Note that this issue is with Rustls, not with the TLS spec. I think the TLS spec is considerably more generous (16mb limit). The reason for adding this is to restrict memory allocation caused by unauthenticated remote inputs, as described here: https://github.com/rustls/rustls/commit/dfa926abf2728fa3b3ca0a8c33bbc61013fef9cc It is possible that it will change with future versions of Rustls.

For comparison, Go's crypto/tls caps Certificate at 256kb, and OpenSSL caps it at 100kb (but configurable).

Lingua principale
Rust
Stelle
6
Fork
3
Merge medio
2g 13h
PR unite (30g)
2

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

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 flashbots/attested-tls

Tutte le issue di flashbots/attested-tls

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.