(EC)DHEとPSKを同時に使用することができる点に留意。Parametersを確立するために二つのメッセージを送信する。個々の証明書に固有のものを除いて、暗号パラメータの決定に必要とされないClientHello拡張に対する応答。証明書ベースのクライアント認証が要求された場合、その証明書のために必要とされるパラメータ。クライアント認証が要求されない場合、このメッセージは省略される。4.3.2]最後に、クライアントとサーバは認証メッセージを交換する。TLSは認証が必要な時には常に同じメッセージの集合を使用する。エンドポイントの証明書および任意の証明前拡張。送出されなかった(したがって、クライアントは証明書におる認証が不要とみなされる)場合はクライアント側からは省略される。使用される場合、このメッセージは証明書ではなく、サーバの長期鍵(long-term-key)に対応する何らかの値を含む点に留意。そのCertificateメッセージ内の公開鍵を使ったハンドシェイク全体の間一つの署名。このメッセージは、サーバが証明書による認証をしていない場合、省略される。このメッセージは鍵の確認、エンドポイントのアイデンティティと交換された鍵への関連づけ、PSKモードに置いてはハンドシェイクの認証を提供する。Finishedを応答する。この時点で、ハンドシェイクは完了し、クライアントとサーバはアプリケーション層のデータを交換することができる。サーバはクライアントの認証メッセージを受信する前にアプリケーション・データを送信しても良いけれど、その時点で送るデータは、もちろん、認証されていない相手に送られる点に留意。拡張でハンドシェイクをリスタートしなければならなくなる。致命的アラートを送信しなければならない(MUST)。図2:パラメータミスマッチ時のフルハンドシェイクのメッセージ・フローハンドシェイク・トランスクリプトは初期のClientHello/HelloRetryRequestのやりとりを含んでいる。以下に説明するように、基本ハンドシェイクに対して幾つかの最適化のための変形を許している。することも可能である。得られる鍵に対応するPSK識別子をクライアントに送ることができる。クライアントは以後のハンドシェイクでPSKの使用をネゴシエイトするためにそのPSK識別子を使用することができる。サーバがそれを受け入れた場合、新しい接続のセキュリティ・コンテキストはオリジナルの接続に結び付けられる。セッション・チケット“RFC5077によって提供されていた。TLS1.3では両者は廃止される。交換と共に使用することができる。前方秘匿性を失うコストと引き換えに単体で使用することもできる。図3は、はじめのPSK確立とその後にそれを使用するハンドシェイクの一対のハンドシェイクを示す。メッセージを送信しない。拡張で応答することができる。IDとPSKと共に使用されるKDFハッシュアルゴリズムも規定されなければならない(MUST)。注:[RFC4086]で議論されているように、プロトコルの範囲外で管理された事前共有の秘密値を使用する場合は、鍵生成時に十分なエントロピーを使用することが重要な考慮事項である。共有秘密値をパスワードまたは他の低エントロピーのソースから得るのは安全でない。エントロピーの低い秘密値またはパスワードは、PSKバインダーに基づく辞書攻撃の対象となりうる。ディフィ-ヘルマン鍵の設立が使用された場合でも、指定されたPSK認証は強力なパスワードベースの認証された鍵交換とはならない。パスワードないし共有鍵に対するブルートフォース攻撃を実行することでハンドシェイクを観測できる攻撃者に対して防衛できない。dataの復号のために使用する。図4に示すように、0-RTTデータは単に1-RTTハンドシェイクに最初のフライトが追加されただけである。1-RTTハンドシェイクPSK再開と同じメッセージを使用する。0-RTTのセキュリティ特性はその他のTSLデータのそれらより弱い。:受け取ったPSKだけによる鍵で暗号化されているために、このデータは前方秘匿性がない。接続間でリプレイ攻撃で無いことの保証が無い。通常のTLS1.3の1-RTTでははサーバの乱数値によってリプレイ攻撃から防衛しているが、0-RTTデータはServerHelloに依存していないためより弱い保証しかない。クライアント認証、もしくはアプリケーション層プロトコルの内側で認証されたかと関連する。同様の警告がearly_exporter_master_secretにもあてはまる。0-RTTデータは、接続内で重複することはできない(つまり、サーバーは同じ接続で同じデータを2回処理しない)。攻撃者は0-RTTデータを1-RTTデータに見せかけることはできない(異なるキーで保護されているため)。E.5には、潜在的な攻撃の説明、第8章では、サーバーがリプレイの影響を制限するために使用できるメカニズムについて説明する。wolfSSL軽量SSL/TLSライブラリwolfSSLは組み込みシステム向けの軽量SSL/TLSライブラリです。既存のネットワークスタックにも容易にSSL/TLS層を追加することができます。最新プロトコルTLS1.3、DTLS1.2をサポートしています。wolfSSL製品ページwolfCrypt暗号エンジンwolfCryptは組み込みシステム向けのコンパクトな暗号アルゴリズムのライブラリです。楕円暗号、Curve25519など最新のアルゴリズムにも対応します。CMVP認証を取得しています(認証#3389)。FIPS認証版、wolfSSLの認証取得サービスについてはこちらのページを参照ください。FIPS認証版wolfMQTTIoTクライアントライブラリwolfMQTTはIoTデバイス向けのMQTTクライアントライブラリです。wolfSSLを併用することでSSL/TLSをサポートします。MQTT3.1に準拠し、すべてのパケットタイプ、QoSをサポートします。wolfMQTT製品ページご質問、ご不明点がありましたら、お気軽にお問い合わせください。reserved.サポートとヘルプサポートフォーラムサポートパッケージコンサルティングサービス脆弱性情報お問い合わせリファレンスアルゴリズム/プロトコルリファレンスプレゼンテーションイベント。