Application-Layer Protocol Negotiation

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索

Application-Layer Protocol Negotiation (ALPN) は、Transport Layer Security (TLS) の拡張の一つである。アプリケーション層でのプロトコルネゴシエーションに関する拡張であり、セキュア通信においてアプリケーション層がどの通信プロトコルを使用するのかを決定する際に、余分なラウンドトリップタイムの発生を避け、アプリケーション層のプロトコルに依らずにネゴシエーションを行うことを可能とする。ALPNはSPDYおよびHTTP/2で利用されている。

TLSの高速化を目的としてGoogle Chromeで従来有効化されていたTLS False Startにはバージョンロールバック攻撃が可能であるなどセキュリティ上の問題があることから、Googleは新たにNext Protocol Negotiation (NPN) を提唱し、Chrome 20以降ではNPNに対応しているサイトを除いてはTLS False Startを無効化した[1]

NPNは後にALPNによって置き換えられた[2]。2014年7月11日、ALPNは RFC 7301 として標準化された。

サポート[編集]

ALPNは以下のライブラリでサポートされている。

脚注[編集]

  1. ^ Langley, Adam (2012年4月11日). “False Start's Failure (11 Apr 2012)”. 2015年2月10日閲覧。
  2. ^ Langley, Adam (2013年3月20日). “» NPN and ALPN”. 2015年2月10日閲覧。
  3. ^ gnutls 3.2.0”. 2015年2月10日閲覧。
  4. ^ MatrixSSL - News” (2014年12月4日). 2015年2月10日閲覧。
  5. ^ NSS 3.15.5 release notes”. Mozilla Developer Network. Mozilla. 2015年2月10日閲覧。
  6. ^ OpenSSL 1.0.2 release notes”. The OpenSSL Project. The OpenSSL Project (2015年1月22日). 2015年2月10日閲覧。
  7. ^ LibreSSL 2.1.3 released” (2015年1月22日). 2015年2月10日閲覧。
  8. ^ Download overview - PolarSSL” (2014年4月11日). 2015年2月10日閲覧。

外部リンク[編集]