wolfSSL のTLS1.3/DTLS1.3サポート
TLS 1.3はインターネットの標準化団体IETFが制定したイ

場合は同じセキュリティパラメータを使うことになりましンターネットセキュリティ標準の最新バージョンです。
TLS

た。これは非常に単純な方法ですが、サーバー間で状態を1.2が制定されてから10年がたち、その間インターネット共有する必要がありました。TLS 1.3では、これまでのTLSの発展には目覚しいものがありました。一方で、高まるセのチケットシステムを再活用する形で、画期的に進歩しまキュリティリスクの脅威や、増加する一方のネットワークした。ハンドシェイク完了後に、サーバーはクライアントトラフィックのために、多くの矛盾や無理を重ねているのに対して新しいセッションチケットを送るようにします。

が現状でした。

この、クライアントに対するひとかたまりのデータである新しい標準TLS 1.3は、そうした課題を一掃しこれからのチケットは、以前のセッションIDのように鍵を探すデータ

IoT時代のセキュリティを支える新しい標準です。
セキュリベースとして利用することができます。ただしこのデータ

ティ専門ベンダーであるwolfSSLは、早くからこの課題に取は、前の接続に対応する、自身で暗号化、認証された値とり組み、商用版TLSライブラリとして世界で初めてTLS 1.3することができます。つまり、サーバーは状態を持たないをサポートしました。という事になります。

DTLS (Datagram Transport Layer Security) はUDB (User
Datagram Protocol) のような安定性の保証されないプロト
コル上でセキュリティを実現するためのプロトコルです。
TLS1.3での知見を生かし、DTLSに適用したプロトコルが最後に、この仕様はプロトコルの安全性を証明すべく暗号化の専門家によって評価されてきました。どんなセキュリティの証明も完全ではありえませんが、以前あったような再ネゴシエーション、プロトコルバージョンのダウングレ

DTLS1.3です。

ーディング、圧縮、CBCやパディングに対する攻撃などはTLS1.3の優位性改善され、プロトコルは全体的により強い攻撃耐性を実現

最新バージョンのTLS仕様に切り替えることで、さまざましています。

な利点を享受することができます。

TLS1.2 と TLS 1.3、どこが違うか？

これまでの仕様と大きく異なる点の一つとして、フルハン

TLS 1.3では、セキュリティとスピードの向上が約束されてドシェイク時の往復回数の削減があります。TLSの旧版のいます。しかし、TLS 1.2からTLS 1.3への変更は、これらプロトコルでは、クライアントがサーバーにアプリケーシの改善をどのように実現しているのでしょうか？以下に、ョンデータを送出する前に２往復を必要としていました。

改善がどのように達成されたか、TLS 1.2と1.3の相違点をTLS1.3では１往復ですみます。さらに、サーバーはクライあげてみます。

アントに対する最初のハンドシェイクメッセージのレスポ

TLS 1.3は、RFC8446として2018年8月に正式に発行されまンスとして、アプリケーションデータを送ることも可能にした。wolfSSLは、世界で初めてTLS 1.3をサポートした商なりました。これはネットワークの遅れがあっても、安全用SSL/TLSライブラリです。

な接続を確立するのに要する時間への影響が少なくなるということです。
もう1つの違いは、TLS 1.3のセッション再開です。これまでのTLSでは、クライアントはサーバーがキャッシュを探すためのセッションIDを持っていました。もしマッチしたØ

共通鍵暗号アルゴリズムでは、全ての古いアルゴリズムは取り除かれ、TLS 1.3で残っているアルゴリズ
ムはすべて、AEAD (Authenticated Encryption withAssociated Data) で認証された暗号化を使用しセキュリティ強度は大幅に向上します

wolfSSL Japan 合同会社 (ウルフエスエスエル)〒108-6028 東京都港区港南 2-15-1 品川インターシティ A 棟 28 階
E メール: info@wolfssl.jp ウェブサイト: wolfssl.jp

ØØ

ゼロRTT (0-RTT) モードにより、再セッション確立時TLS 1.3サポートを指定するために、wolfSSL コンテクス間が大幅に短縮されます。一部のセキュリティ特性

ト (WOLFSSL_CTX) を生成する際に、新しいクライアンを犠牲にすることで、一部のアプリケーションデー

ト/サーバメソッドとして次のようなメソッドが追加されタの接続設定では往復回数を削減できるようになりました。

ました

WOLFSSL_METHOD *wolfTLSv1_3_server_method(void);

ServerHello以後のすべてのハンドシェイクは暗号化、セキュリティ強度が大幅に向上しますØ

HMACベースのExtract-and-Expand Key Derivation

また、次のようなメソッドでTLS1.3に限定せず相手によっFunction（HKDF）をプリミティブとして使用し、鍵て可能な最新バージョンを選択することも可能です。

導出関数が再設計されましたØ

ハンドシェイク状態遷移は、より一貫性があり余分なメッセージを取り除くよう再構成され、潜在的脆弱性が排除されましたØ

ECCは基本仕様に入り、複数の新しい署名アルゴリズムが含まれています。楕円曲線のポイントフォー
マットネゴシエーションは、各楕円曲線の単一ポイントフォーマットを使用することで削除されましたØ

圧縮、
カスタムDHEグループ、およびDSAが削除され、RSAパディングでPSSが使用されますØØ

WOLFSSL_METHOD *wolfTLSv1_3_client_method(void);

WOLFSSL_METHOD *wolfSSL_server_method(void);
WOLFSSL_METHOD *wolfSSL_client_method(void);
wolfSSLサンプルクライアントとサーバーで簡単にTLS1.3機能を使うことができます。たとえばwolfSSLサンプ
ルクライアントをTLS 1.3、暗号スイートTLS13-AES128GCM-SHA256 でサーバに接続する場合は、次のように、”-v” オプションに “4” を指定します。
$ ./examples/server/server -v 4

バージョンネゴシエーション検証メカニズムは、TLS$ ./examples/client/client -v 4

拡張のバージョンリストを使用します

サンプルクライアントは外部サーバーに接続することもでセッション再開については、サーバー側の状態の有きます。例えば、wolfSSLサイトにTLS1.3で接続する場合は無にかかわらず旧バージョンTLSのPSKベースの暗号次のように指定します。

スイートから、1つの新しいPSK交換方式に統一され$ ./examples/client/client -v 4 -h www.wolfssl.com -p

ました

443 -g -A ./certs/wolfssl-website-ca.pem

wolfSSLのTLS1.3を試してみる

このコマンドで ”-h”はホスト、”-g”はHTTP GET要求、”-A”はサーバー認証のためのCA証明書を指定します。

TLS 1.3を利用するには、以下のように./configureコマン

このバージョンでは、TLS1.3 の暗号スイートとして下記

ドで “–enable-tls13” オプションを指定するだけです：のものをサポートしています：
TLS13-AES128-GCM-SHA256$ unzip wolfssl-5.x.x.zip

TLS13-AES256-GCM-SHA384$ cd wolfssl-5.x.x

TLS13-CHACHA20-POLY1305-SHA256$ ./configure

TLS13-AES128-CCM-SHA256$ makeTLS13-AES128-CCM-8-SHA256

TLS 1.3/DTLS1.3のサポートについてさらに詳しい情報は、 info@wolfssl.jp までお問い合わせください。

wolfSSL Japan 合同会社 (ウルフエスエスエル)〒108-6028 東京都港区港南 2-15-1 品川インターシティ A 棟 28 階
E メール: info@wolfssl.jp ウェブサイト: wolfssl.jp