メンバー: 山本和彦

カテゴリー: Underpinning

タグ: tls, quic, http2, http3, Haskell

  1. 背景:IETFでは活発に新しいプロトコルが標準化されており、その仕様の正しさを検証することが望まれている
  2. 目的:最新のプロトコルを実装し、相互接続性を検証することで、プロトコルの標準化に貢献する。

概要

プログラミング言語Haskellを用いて、さまざまなネットワークプロトコルを実装し、相互接続性を検証している。

成果物

進捗

2024FY1Qの進捗

  • ネットワーク・ライブラリ群の安定化: tls/http2/http2-tls/quic/http3ライブラリに実装しているデバッグツールの機能を統一し、網羅的なテストを可能とした。このテストで新たに発見した複数のバグと、DNS への応用の際に発見したバグを取り、安定化させた
  • TLSの複数チケットへの対応: 複数のチケットを送ってくるTLSサーバに対応し、セッションの再開を安定化させた。その際発見した0-RTTのバグも修正した

2023FY4Qの進捗

  • tls ライブラリの0-RTT:ハンドシェイクの実装を非同期化し、クライアント側が送信する0-RTTデータを動的に決定可能にした。DNS over TLSで0-RTTを使用し、実用性を確かめた
  • quic ライブラリの安定化:New Connection ID フラッド攻撃へ対処した。DNSover QUICで0-RTTを使用し、実用性を確かめた

2023FY3Qの進捗

  • tls ライブラリ:大幅リファクタリング、TLS 1.0/1.1を削除、CBC暗号スイートを削除、テストの洗練化、channel binding の実装
  • tls-session-manager ライブラリ:セッションチケット方式を実装した
  • network-control ライブラリ:フロー制御の共通部分を抽出しライブラリとしてリリースした
  • quic ライブラリ:フロー制御の仕組みを刷新した。Path Challengeフラッド攻撃へ対処した
  • http2 ライブラリ:HTTP/2 rapid reset 攻撃へ対処した。DNSパイプラインへ効率よく対応するための機構を組み込んだ。フロー制御の仕組みを刷新した

2023FY2Qの進捗

  • quic ライブラリを安定化させた
  • http2 ライブラリと tls ライブラリを結合し簡単に利用するための http2-tls ライブラリをリリースした

2023FY1Qの進捗

  • http2 ライブラリを安定化させた
  • 暗号ライブラリ cryptonite が保守されなくなったので、フォークを crypton と名付け、各ライブラリを crypton へ移行した

PAGE TOP