Tachibana

ドキュメント › TLS / HTTPS

TLS / HTTPS ガイド

HTTPS は ドングル内で終端されます:Pico W が mbedTLS で TLS 1.2 ハンドシェイクを実行し、 復号したレスポンスをシリアルリンク上にストリームします。ホストコンピュータが暗号化されたトラフィックを目にすることはありません — これが 8 ビットマシン でも HTTPS サービスに到達できる理由です。

TLS でページを取得する

ATGEThttps://example.com

ATPOST コマンドはさらに HTTP/HTTPS の POST リクエストを可能にします。

証明書検証

デフォルトでは検証は オフAT$CV0、安全ではありません:任意のサーバ証明書が 受け入れられます)。信頼されたルートに対してサーバ証明書を検証するには:

AT$CA=                 then paste a CA in PEM form,
-----BEGIN CERTIFICATE-----
…                      finish with a line containing only a single "."
-----END CERTIFICATE-----
.
AT$CV1                 enable verification (ERROR if no CA is stored)
AT&W                   persist

CA を読み込み AT$CV1 を有効化すると、証明書がその CA に連鎖しない接続 (期限切れ、自己署名、未知のルート、ホスト名の不一致)は 拒否 されます。AT$CA? は 保存済み CA のサイズを報告し、AT$CA- はそれを削除します。

検証を素通りさせることはありません:CA が存在しない間、AT$CV1ERROR を返します — 信頼のアンカーなしに検証を有効化することはできません。

オンボードクロックがありません:証明書の 有効期限 はチェックされません。信頼は CA チェーンとホスト名(SNI)によって確立されます。

暗号処理が行われる場所

   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 は TLS に対して透過的です:常にすでに復号されたバイトだけを扱います。HTTPS の追加に LOCI 側の変更は不要 でした — 暗号処理はすべてこのファームウェア内にあります。USB-CDC 対応の どのホストでも同じように恩恵を受けます。

TLS コマンドまとめ

コマンド役割
ATGET https://…TLS でページを取得(ドングル内でハンドシェイク + 復号)。
ATPOSTHTTP/HTTPS の POST リクエスト。
AT$CA= / AT$CA? / AT$CA-CA(PEM)のアップロード / 照会 / 削除。
AT$CV0 / AT$CV1証明書検証の無効化 / 有効化。
AT&WCA と設定を NVRAM に保存。

README.md (§ TLS / HTTPS — 正式で最新の版は GitHub 上)から再掲。

← ドキュメント · AT コマンドリファレンス →