ALPN

提供: セキュリティ
2014年11月2日 (日) 13:33時点におけるDaemon (トーク | 投稿記録)による版 (ページの作成:「ALPN (Application Layer Protocol Negotitation)とは、TLS拡張です。TLSハンドシェイクの後のアプリケーションレイヤーのプロトコ...」)

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索
スポンサーリンク

ALPN (Application Layer Protocol Negotitation)とは、TLS拡張です。TLSハンドシェイクの後のアプリケーションレイヤーのプロトコルをサーバとクライアントでネゴシエーションするために使用します。HTTP/2.0で、SSLハンドシェイクを行う場合に、ネゴシエーションすることが検討されています。

読み方

ALPN
えーえうぴーえぬ
Application Layer Protocol Negotitation
あぷりけーしょん れいやー ぷろとこる ねごしえーしょん

概要

ALPNは、OpenSSLの1.0.2(1.0.1から1.0.2) からサポートされています。

  • 使用できるプロトコルリストをクライアントが提示し、サーバが選択します。
  • 選択できるプロトコルがリストに存在しない場合、ハンドシェイクアラート(handshake alert)を通知して切断します。
  • Selected Protocol が暗号化されません。
  • プロトコルが決定してから、クライアント証明書が提出できます。
ALPN
クライアント 通信 サーバ
ClientHELLO + ALPN拡張,

プロトコルリストをサーバに送信 http/2.0,spdy/3.1,http/1.1

ServerHello + ALPN拡張

サーバ側でプロトコルを決定し、通知する spdy/3

TLS証明書、暗号化情報交換
HTTP/2.0で通信 ←→

関連項目




スポンサーリンク