Tachibana

Documentatie › TLS / HTTPS

TLS / HTTPS-gids

HTTPS wordt in de dongle beëindigd: de Pico W voert de TLS 1.2-handshake uit met mbedTLS en streamt vervolgens het ontsleutelde antwoord over de seriële verbinding. De hostcomputer ziet nooit versleuteld verkeer — dit is wat een 8-bits machine in staat stelt HTTPS-diensten te bereiken.

Een pagina over TLS ophalen

ATGEThttps://example.com

Het commando ATPOST maakt daarnaast HTTP/HTTPS POST-verzoeken mogelijk.

Certificaatverificatie

Standaard staat verificatie uit (AT$CV0, onveilig: elk servercertificaat wordt geaccepteerd). Om het servercertificaat te verifiëren tegen een vertrouwde root:

AT$CA=                 plak dan een CA in PEM-vorm,
-----BEGIN CERTIFICATE-----
…                      beëindig met een regel die alleen één "." bevat
-----END CERTIFICATE-----
.
AT$CV1                 verificatie inschakelen (ERROR als er geen CA is opgeslagen)
AT&W                   vastleggen

Met een CA geladen en AT$CV1 ingeschakeld wordt een verbinding waarvan het certificaat niet naar die CA leidt (verlopen, zelfondertekend, onbekende root, verkeerde hostnaam) geweigerd. AT$CA? meldt de opgeslagen CA-grootte; AT$CA- verwijdert hem.

Faalt nooit open: AT$CV1 geeft ERROR terug zolang er geen CA aanwezig is — je kunt verificatie niet inschakelen zonder een vertrouwensanker.

Er is geen ingebouwde klok: vervaldatums van certificaten worden niet gecontroleerd; vertrouwen wordt vastgesteld via de CA-keten en de hostnaam (SNI).

Waar de versleuteling zich bevindt

   Oric 8-bit            LOCI               Pico W modem              Internet
 ┌────────────┐  bus   ┌────────┐ USB CDC ┌────────────────┐  WiFi  ┌──────────┐
 │  host /    │◀──────▶│  LOCI  │◀───────▶│ PicoWiFiModemUSB│◀──────▶│  server  │
 │  software  │        │        │ serial  │   + mbedTLS     │  TLS   │ (HTTPS…) │
 └────────────┘        └────────┘         └────────────────┘        └──────────┘
                       └─ cleartext serial ─┘ └──── TLS terminated here ────┘

LOCI is transparant ten opzichte van TLS: hij verwerkt altijd alleen al ontsleutelde bytes. Het toevoegen van HTTPS vereiste geen wijziging aan de LOCI-kant — alle cryptografie zit in deze firmware. Elke host met USB-CDC-ondersteuning profiteert op dezelfde manier.

Overzicht TLS-commando's

CommandoRol
ATGET https://…Een pagina over TLS ophalen (handshake + ontsleuteling in de dongle).
ATPOSTHTTP/HTTPS POST-verzoek.
AT$CA= / AT$CA? / AT$CA-De CA (PEM) uploaden / opvragen / verwijderen.
AT$CV0 / AT$CV1Certificaatverificatie uit-/inschakelen.
AT&WCA en instellingen vastleggen in NVRAM.

Overgenomen uit de README.md (§ TLS / HTTPS — gezaghebbende, actuele versie op GitHub).

← Documentatie · AT-commandoreferentie →