wolfSSLはQUIC連携機能をサポートします

wolfSSLは今日のインターネットをけん引しているプロトコル群の開発を絶えずフォローしています。その中の一つ、QUICはTCPの後継プロトコルと一部からみなされているほど勢いがあります。Google、Fastly、Cloudflareなど多くの製品で既に使用されているのですから。

QUIC は、斬新な方法で TLSv1.3 の上に構築されており、QUIC プロトコル スタック内で wolfSSL を使用して HTTP/3 を配信できるようになりました。 wolfSSL チームは、人気の QUIC 実装である ngtcp2 への統合に貢献しました。 cURL は、まもなくコマンドラインと libcurl 統合で wolfSSL を使用した HTTP/3 を提供します。

HTTP/3 は QUIC の 1 つの用途に過ぎません(しかし主要ではあります)。 DNS クエリが登場し、名前解決プロトコルの頭字語「Do*」のリストに新しいトリプル「DoQ」が追加されます。その他の QUIC アプリケーションも、IETF で活発に開発されています。

API++

wolfSSL QUIC API は、他の *SSL ライブラリの対応する API と連携しているため、QUIC プロトコル スタックとの統合が容易になり、これまでに行った移植作業(投資)が無駄になりません。これは、OpenSSL が API の設計を促進するために使用されていた過去の慣習からの脱却です。ただし、OpenSSL は参加を拒否し、当面は QUIC サポートを提供しません。 新しい API が必要となったのは、QUIC プロトコルがセキュリティ設計を改善したためです。 QUIC は、アプリケーション データだけでなく、独自のプロトコル情報も強力な暗号化で保護します。そのパケットは、ミドルボックスに対してより不透明となります。

これにより、暗号化/復号は、TLS ライブラリの処理の「外部」で行う必要がでてきました。ただし、QUIC の設計者は、その設計と実装における TLSv1.3 の価値を十分に認識していました。

結果として、TLSv1.3 ハンドシェイク ネゴシエーション、暗号、およびセッションをフルに活用しながら、実際の暗号化/復号を引き継ぐプロトコルが生まれました。QUICが TLS ハンドシェイクからシークレットと鍵を引き継いで使用するのです。これらは、QUIC API が追加する機能です。

wolfSSL + QUIC == wolfSSL

QUIC連携機能を有効化してビルドしたwolfSSLもまたwolfSSLです。もともとのwolfSSLの機能は以前と同じように機能しますし、加えてWOLFSSL インスタンスまたはコンテキストで QUIC を有効にすることができます。また、同じアプリケーションに (D)TLS と QUIC セッションを混在させることができます。

ご質問は、info@wolfssl.jpまでお問い合わせください。テクニカルサポートについは、support@wolfssl.com までお寄せください。

原文:https://.com/wolfssl-quic-support/