SlideShare une entreprise Scribd logo
1  sur  20
https://lepidum.co.jp/ Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.
IETF89 報告
株式会社レピダム
前田 薫 (@mad_p)
http2 勉強会 #4 2014/03/20
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
IETF89概要
 ロンドン 2014/3/2~3/7
 httpbis WG 3/3, 3/5
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
draft-10, hpack-06
 2月に出た
 前回 (1月Interim報告)からの変更
 GOAWAY → GTFO キャンセル
 DATA, HEADERS, PUSH_PROMISE, CONTINUATION
フレームにPadding
 用途については後述
 END_MESSAGE → END_SEGMENT
 cookie用のHuffmanテーブル → キャンセル
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
WGのトピック
 Local Activity report (Jack + Hiro)
 実装、ドラフト、ALPNなど進捗
 issuesの議論
 Group Priority
 HPACK脆弱性
 Alt-Svc
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
issuesの議論
 #419 Settingsフレームは空でもよいことを明示
 HTTP/1.1からのアップグレード時のみ
SETTINGS_MAX_CONCURRENT_STREAMS
SETTINGS_INITIAL_WINDOW_SIZE が必須だったのも不要に
 #405 Server Authority と Same-Origin → HTTP/1.1に
合わせる
 #404 クライアントはgzip, deflate両方のサポートが
MUSTか? → gzipのみ
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
issues続き
 #386 Websocketサポート
 draft-hirano-websocket-over-http2
 :schemにサポート外スキームを指定された場合は?
 → streamエラー → コード新設
 #365 Header Table Emptyingが2バイトでもったいな
い件 → static table + 1 など検討されたが、no action
 #386 DNS SRV → http/2とは切り離す。実験/議論が
必要
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Priority Leveling
 Groupベース
 Priority → 0と255を特別という案
 Dependencyベース
 新レベルのinsertに問題 → inserフラグ
 どっちの戦略? 複雑すぎるのでは?
 → プロトコルが正しいかどうかではなく性能に関
わる話である
 → 複雑さはサーバー側、クライアントはシンプル
 ユースケースがもっと必要
 http/2に入らなければhttp/3に入れてもいい
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
HPACK脆弱性
 http2ハッカソン #1で議論したとおり
 ヘッダ圧縮率がオラクルとして働く
 低エントロピーでなければあまりコワクない
 クッキーはエントロピー高いがパスワードは?
 センシティブなヘッダは圧縮しない案
 ホワイトリスト方式かブラックリスト方式を議論
 圧縮するなフラグを用意(個別設定)で合意、セキュリ
ティ考察も追加
 却下された案
 MAX_CONCURRENT_STREAMを小さくすれば試行が少な
くなるという案、一定回数の失敗で忘れる案、一定確
率で圧縮しない案
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
designer meeting 3/8
 Mozilla Londonオフィスで開催
 Preliminary Minutes
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
designer meetingトピック
 issue検討続き
 Padding
 HPACK
 SRV/DNS
 Alt-Svc
 Priority Leveling →
 Proxy
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
issues続き
 #363 TLS renegotiations
 TLS接続後に特定URLでクライアント証明書を要求する場合が
ある。firefoxでは同一connectionでTLSネゴシエーションをや
り直す
 HTTP/2ではすでにこのconnectionで他のstreamが走っている
かもしれない
 → renegotiationを許さない方向で議論を続ける
 #362 BLOCKED frame提案
 フローコントロールのためブロックされていることを相手に
伝える
 デバッグも難しいしinteropもつらい
 この仕様が必要かどうかで長い議論
 → MLで議論継続
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Padding
 フレーム側の仕組としてPaddingを設ける
 HPACK側はpaddingなし
 flow-controlにどう影響するの? など議論
 BREACH/CRIMEアタックに対しては、観測結
果が確率的にしか得られないことで緩和
 ドラフト10ではPaddingによる攻撃への効果は限
定的であることも言及している
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
HPACK
 ハフマンでのEOS
 paddingしないならEOS必要ないよね
 →でも後でまたpaddingしようと思ったらそのとき必要になるよね?
 → どうでもいい派が多数。興味ある人がランチ中に議論
 クッキーだけ別テーブル(base64)という案は?
 十分なinterestがなかった → 廃案
 Kazuの指摘があるけれどStaticだけではダメか?
 長い時間かかってgzip並の圧縮率になったわけで、データに基づいた結果
だよ
 → そのデータある? → いやもうない
 Robertoとの個人的な会話: HPACK効率を測るためのデータセットがほ
しいよね
 feedback loopに注意。HPACKを修正する → 送信されるデータが変わる →
最適なパラメータも変わる
 server-pushについては、実装がない → いまデータがない
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
SRV/DNS
 http/1.1を話すことなく、エンドポイントが
http/2を話すかどうか知りたい → DNSのSRV
レコードでできないかという案
 仕様化するには未成熟
 Alt-Svcとうまく合わなければならない
 → 文書を作る
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Alt-Svc (Alternative Service)
 http://tools.ietf.org/html/draft-nottingham-httpbis-alt-svc-03
 同一のサービスが他のエンドポイントでも
提供されることを示す仕組み
 サーバーからクライアントに、プロトコル、ホ
スト、ポートを教える
 HTTP/1.1レスポンスヘッダ Alt-Svc
 Alt-Svc: "h2"=8000, "h2t"=443
 HTTP/2 ALTSVC frame
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Alt-Svcのユースケース
 HTTP/1.1 からのアップグレード
 #315 http:// スキームだけどTLS使いたい
 #349 Load Asymmetry(ロードバランシング)
 他のポートへリダイレクト
 SNI (TLS Server Name Indication)未対応クライ
アントの隔離
 Alt-Svcを理解するならSNIもわかるだろう → 高
性能サーバーへリダイレクト
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Alt-Svc関連issues
 #315 http:// over TLS
 プロキシまでHTTP/TCPで行き、プロキシからサー
バーまでをTLSで行くことを許すか
 http2にしたいが「:scheme」ヘッダはHTTP/1.1にはない
 サーバーから見ればアタックに見える
 end-2-endでTLSになった後httpアクセス行ったらどうか?
 #421 mixed scheme → 明示的許可を記述
 #426 unsupported scheme → エラー新設
 payload semantics
 draft-ietf-httpbis-p2-semantics-26
 http2エラーコードとhttpステータスコードの関係
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Proxy
 長ーい議論があって正直追いつけなかった
 proxies: HTTP2ではHTTP/1.1以上のことは何も言わない
 proxiesの役割について
 user agentの「確認」について
 opportunistic encryptionについて
 captive portalの振りをする悪人がいると検出できない
 HTTP/1.1ではプロキシのディスカバリについては何も定義しなかった
 ユースケースが大事
 cacheingは難しい
 クライアントからこれ持ってそうだからハッシュくれ、みたいに言えないとねー
 credentialとGPSなどのプライバシーは分けて考えないと
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Proxyつづき
 5.8bil transactions (cisco)
 17% https
 1.8% of https connections → MITM
 serverから見るとリクエストがプロキシーされてようがMITM受けていようが
わからないのが問題
 会社やベンダーにroot CA certつっこまれる問題
 99%の人は証明書の問題を報告してほしくはない → 1%のリテラシーある人は
知りたい
 everything over httpsの世界をまず作って、それからだ
 CSSファイルは誰でも同じもの見るんだからキャッシュできるよね
 data integrityの話とserver authNの話は別? → いやどうだろう
 browser cacheだけ考えて、違うサイトのjquery.jsのハッシュがマッチしたら使
えるというのはscary
 script hash, script nonce: ハッシュとダイジェスト
Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
今後の予定
 4月 WG Last Call
 6月上旬、米東海岸で第6回interim
 6/5-6 Bostonが有力

Contenu connexe

Tendances

これからはじめるインフラエンジニア
これからはじめるインフラエンジニアこれからはじめるインフラエンジニア
これからはじめるインフラエンジニア
外道 父
 
NAT配下からIPv6でアクセスするEzoScapeはTeredo通信だった
NAT配下からIPv6でアクセスするEzoScapeはTeredo通信だったNAT配下からIPv6でアクセスするEzoScapeはTeredo通信だった
NAT配下からIPv6でアクセスするEzoScapeはTeredo通信だった
Shinichi Hirauchi
 
OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾
外道 父
 
Shadow Server on Fluentd at Fluentd Casual Talks #3
Shadow Server on Fluentd at Fluentd Casual Talks #3Shadow Server on Fluentd at Fluentd Casual Talks #3
Shadow Server on Fluentd at Fluentd Casual Talks #3
Naotoshi Seo
 
Pの付く言語の話
Pの付く言語の話Pの付く言語の話
Pの付く言語の話
Satoshi Hirata
 

Tendances (20)

爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
 
これからはじめるインフラエンジニア
これからはじめるインフラエンジニアこれからはじめるインフラエンジニア
これからはじめるインフラエンジニア
 
Webアプリケーションは難しい
Webアプリケーションは難しいWebアプリケーションは難しい
Webアプリケーションは難しい
 
NAT配下からIPv6でアクセスするEzoScapeはTeredo通信だった
NAT配下からIPv6でアクセスするEzoScapeはTeredo通信だったNAT配下からIPv6でアクセスするEzoScapeはTeredo通信だった
NAT配下からIPv6でアクセスするEzoScapeはTeredo通信だった
 
OSSラボ様講演 OpenStack最新情報セミナー 2014年6月
OSSラボ様講演 OpenStack最新情報セミナー 2014年6月OSSラボ様講演 OpenStack最新情報セミナー 2014年6月
OSSラボ様講演 OpenStack最新情報セミナー 2014年6月
 
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
 
OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾
 
Shadow Server on Fluentd at Fluentd Casual Talks #3
Shadow Server on Fluentd at Fluentd Casual Talks #3Shadow Server on Fluentd at Fluentd Casual Talks #3
Shadow Server on Fluentd at Fluentd Casual Talks #3
 
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
 
activerecord-turntable
activerecord-turntableactiverecord-turntable
activerecord-turntable
 
商用ミドルウェアのPuppet化で気を付けたい5つのこと
商用ミドルウェアのPuppet化で気を付けたい5つのこと商用ミドルウェアのPuppet化で気を付けたい5つのこと
商用ミドルウェアのPuppet化で気を付けたい5つのこと
 
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテックGTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
 
Inside mobage platform
Inside mobage platformInside mobage platform
Inside mobage platform
 
30分でわかる! コンピュータネットワーク
30分でわかる! コンピュータネットワーク30分でわかる! コンピュータネットワーク
30分でわかる! コンピュータネットワーク
 
DeNAインフラの今とこれから - 今編 -
DeNAインフラの今とこれから - 今編 -DeNAインフラの今とこれから - 今編 -
DeNAインフラの今とこれから - 今編 -
 
情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦
情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦
情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦
 
Webアプリ開発者のためのHTML5セキュリティ入門
Webアプリ開発者のためのHTML5セキュリティ入門Webアプリ開発者のためのHTML5セキュリティ入門
Webアプリ開発者のためのHTML5セキュリティ入門
 
ドリコム的Railsアプリ開発流儀
ドリコム的Railsアプリ開発流儀ドリコム的Railsアプリ開発流儀
ドリコム的Railsアプリ開発流儀
 
ひとりLT大会
ひとりLT大会ひとりLT大会
ひとりLT大会
 
Pの付く言語の話
Pの付く言語の話Pの付く言語の話
Pの付く言語の話
 

En vedette

New base 811 special 20 march 2016
New base 811 special 20 march 2016New base 811 special 20 march 2016
New base 811 special 20 march 2016
Khaled Al Awadi
 
The Business Office
The Business OfficeThe Business Office
The Business Office
Anna Juarez
 
P&O1 ICT Oefn zitting 3
P&O1 ICT Oefn zitting 3P&O1 ICT Oefn zitting 3
P&O1 ICT Oefn zitting 3
JefVoorspoels
 
Creatividad como ventaja competitiva
Creatividad como ventaja competitivaCreatividad como ventaja competitiva
Creatividad como ventaja competitiva
Tesla Gutierrez
 
Kiril & Jana - Icesream show
Kiril & Jana -  Icesream showKiril & Jana -  Icesream show
Kiril & Jana - Icesream show
zak232
 

En vedette (15)

New base 811 special 20 march 2016
New base 811 special 20 march 2016New base 811 special 20 march 2016
New base 811 special 20 march 2016
 
N3 edicion4
N3 edicion4N3 edicion4
N3 edicion4
 
The Business Office
The Business OfficeThe Business Office
The Business Office
 
P&O1 ICT Oefn zitting 3
P&O1 ICT Oefn zitting 3P&O1 ICT Oefn zitting 3
P&O1 ICT Oefn zitting 3
 
éTica 1bim
éTica 1biméTica 1bim
éTica 1bim
 
ALVEOLO-16marzo
ALVEOLO-16marzoALVEOLO-16marzo
ALVEOLO-16marzo
 
Gg
GgGg
Gg
 
Advertising Hoarding All India
Advertising Hoarding All IndiaAdvertising Hoarding All India
Advertising Hoarding All India
 
SAO TIÊN PHONG SOFTWARE COMPANY
SAO TIÊN PHONG SOFTWARE COMPANYSAO TIÊN PHONG SOFTWARE COMPANY
SAO TIÊN PHONG SOFTWARE COMPANY
 
Un empujoncito
Un empujoncitoUn empujoncito
Un empujoncito
 
Refugiados leste – a caminho 1944-49
Refugiados leste – a caminho   1944-49Refugiados leste – a caminho   1944-49
Refugiados leste – a caminho 1944-49
 
2016 Dayton World Soccer Games - RESULTS
2016 Dayton World Soccer Games - RESULTS2016 Dayton World Soccer Games - RESULTS
2016 Dayton World Soccer Games - RESULTS
 
Creatividad como ventaja competitiva
Creatividad como ventaja competitivaCreatividad como ventaja competitiva
Creatividad como ventaja competitiva
 
Diagnóstico de los más capaces
Diagnóstico de los más capacesDiagnóstico de los más capaces
Diagnóstico de los más capaces
 
Kiril & Jana - Icesream show
Kiril & Jana -  Icesream showKiril & Jana -  Icesream show
Kiril & Jana - Icesream show
 

Similaire à httpbis WG IETF89レポート

OpenContrail days 2014 Spring めざせ超オンプレ(汗)
OpenContrail days 2014 Spring めざせ超オンプレ(汗)OpenContrail days 2014 Spring めざせ超オンプレ(汗)
OpenContrail days 2014 Spring めざせ超オンプレ(汗)
Junpei YOSHINO
 
Cloudera impala
Cloudera impalaCloudera impala
Cloudera impala
外道 父
 
キャパシティ プランニング
キャパシティ プランニングキャパシティ プランニング
キャパシティ プランニング
外道 父
 

Similaire à httpbis WG IETF89レポート (20)

IETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjpIETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjp
 
20191010 Blockchain GIG #5 石原様資料
20191010 Blockchain GIG #5 石原様資料20191010 Blockchain GIG #5 石原様資料
20191010 Blockchain GIG #5 石原様資料
 
IETF91 Honolulu httpbis WG Report
IETF91 Honolulu httpbis WG ReportIETF91 Honolulu httpbis WG Report
IETF91 Honolulu httpbis WG Report
 
IETF93 Prague報告Web関連+QUIC
IETF93 Prague報告Web関連+QUICIETF93 Prague報告Web関連+QUIC
IETF93 Prague報告Web関連+QUIC
 
Ietf95 capport
Ietf95 capportIetf95 capport
Ietf95 capport
 
GlusterFS Updates (and more) in 第六回クラウドストレージ研究会
GlusterFS Updates (and more) in 第六回クラウドストレージ研究会GlusterFS Updates (and more) in 第六回クラウドストレージ研究会
GlusterFS Updates (and more) in 第六回クラウドストレージ研究会
 
Ietf95 http2
Ietf95 http2Ietf95 http2
Ietf95 http2
 
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
 
ブロックチェーンPoCにおける開発リードタイム短縮のポイント
ブロックチェーンPoCにおける開発リードタイム短縮のポイントブロックチェーンPoCにおける開発リードタイム短縮のポイント
ブロックチェーンPoCにおける開発リードタイム短縮のポイント
 
QAエンジニアを通じて 弊社の開発環境がより良くなる日 〜 OpenSTF 編 〜
QAエンジニアを通じて弊社の開発環境がより良くなる日 〜 OpenSTF 編 〜QAエンジニアを通じて弊社の開発環境がより良くなる日 〜 OpenSTF 編 〜
QAエンジニアを通じて 弊社の開発環境がより良くなる日 〜 OpenSTF 編 〜
 
runC概要と使い方
runC概要と使い方runC概要と使い方
runC概要と使い方
 
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...
 
OpenContrail days 2014 Spring めざせ超オンプレ(汗)
OpenContrail days 2014 Spring めざせ超オンプレ(汗)OpenContrail days 2014 Spring めざせ超オンプレ(汗)
OpenContrail days 2014 Spring めざせ超オンプレ(汗)
 
1Uサーバーから始めるスケーラブルな「mCloud Project Server」
1Uサーバーから始めるスケーラブルな「mCloud Project Server」1Uサーバーから始めるスケーラブルな「mCloud Project Server」
1Uサーバーから始めるスケーラブルな「mCloud Project Server」
 
Cloudera impala
Cloudera impalaCloudera impala
Cloudera impala
 
20120525 mt websocket
20120525 mt websocket20120525 mt websocket
20120525 mt websocket
 
IETF96 Update oauth tokbind
IETF96 Update oauth tokbindIETF96 Update oauth tokbind
IETF96 Update oauth tokbind
 
20220412 IoTLT vol86 kitazaki v1
20220412 IoTLT vol86 kitazaki v120220412 IoTLT vol86 kitazaki v1
20220412 IoTLT vol86 kitazaki v1
 
キャパシティ プランニング
キャパシティ プランニングキャパシティ プランニング
キャパシティ プランニング
 
インフラエンジニアの楽しい標準化活動
インフラエンジニアの楽しい標準化活動インフラエンジニアの楽しい標準化活動
インフラエンジニアの楽しい標準化活動
 

Plus de Kaoru Maeda

Plus de Kaoru Maeda (15)

Emacs TypeScript
Emacs TypeScriptEmacs TypeScript
Emacs TypeScript
 
IETF103の話題から (HTML5 Conf 2018)
IETF103の話題から (HTML5 Conf 2018)IETF103の話題から (HTML5 Conf 2018)
IETF103の話題から (HTML5 Conf 2018)
 
IETF102 Report Authorization
IETF102 Report AuthorizationIETF102 Report Authorization
IETF102 Report Authorization
 
IETF97 Update oauth tokbind
IETF97 Update oauth tokbindIETF97 Update oauth tokbind
IETF97 Update oauth tokbind
 
http2study 20160423 IETF95 Report
http2study 20160423 IETF95 Reporthttp2study 20160423 IETF95 Report
http2study 20160423 IETF95 Report
 
From an Experience of Vulnerability Reporting
From an Experience of Vulnerability ReportingFrom an Experience of Vulnerability Reporting
From an Experience of Vulnerability Reporting
 
HTTP/2: ぼくたちのWebはどう変わるのか
HTTP/2: ぼくたちのWebはどう変わるのかHTTP/2: ぼくたちのWebはどう変わるのか
HTTP/2: ぼくたちのWebはどう変わるのか
 
IETF93プレ勉強会、ARTエリアの歩き方
IETF93プレ勉強会、ARTエリアの歩き方IETF93プレ勉強会、ARTエリアの歩き方
IETF93プレ勉強会、ARTエリアの歩き方
 
Tokbind-fido
Tokbind-fidoTokbind-fido
Tokbind-fido
 
IETF91報告arcmedia-mcic
IETF91報告arcmedia-mcicIETF91報告arcmedia-mcic
IETF91報告arcmedia-mcic
 
HTTP/2 Local activities in Japan
HTTP/2 Local activities in JapanHTTP/2 Local activities in Japan
HTTP/2 Local activities in Japan
 
HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜
 
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみた
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみたRubyコードゴルフ「ぐるぐる渦巻き」に参加してみた
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみた
 
Fizzbuzz in Complex Plane
Fizzbuzz in Complex PlaneFizzbuzz in Complex Plane
Fizzbuzz in Complex Plane
 
Lightning Talks日本上陸
Lightning Talks日本上陸Lightning Talks日本上陸
Lightning Talks日本上陸
 

httpbis WG IETF89レポート

  • 1. https://lepidum.co.jp/ Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved. IETF89 報告 株式会社レピダム 前田 薫 (@mad_p) http2 勉強会 #4 2014/03/20
  • 2. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ IETF89概要  ロンドン 2014/3/2~3/7  httpbis WG 3/3, 3/5
  • 3. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ draft-10, hpack-06  2月に出た  前回 (1月Interim報告)からの変更  GOAWAY → GTFO キャンセル  DATA, HEADERS, PUSH_PROMISE, CONTINUATION フレームにPadding  用途については後述  END_MESSAGE → END_SEGMENT  cookie用のHuffmanテーブル → キャンセル
  • 4. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ WGのトピック  Local Activity report (Jack + Hiro)  実装、ドラフト、ALPNなど進捗  issuesの議論  Group Priority  HPACK脆弱性  Alt-Svc
  • 5. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ issuesの議論  #419 Settingsフレームは空でもよいことを明示  HTTP/1.1からのアップグレード時のみ SETTINGS_MAX_CONCURRENT_STREAMS SETTINGS_INITIAL_WINDOW_SIZE が必須だったのも不要に  #405 Server Authority と Same-Origin → HTTP/1.1に 合わせる  #404 クライアントはgzip, deflate両方のサポートが MUSTか? → gzipのみ
  • 6. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ issues続き  #386 Websocketサポート  draft-hirano-websocket-over-http2  :schemにサポート外スキームを指定された場合は?  → streamエラー → コード新設  #365 Header Table Emptyingが2バイトでもったいな い件 → static table + 1 など検討されたが、no action  #386 DNS SRV → http/2とは切り離す。実験/議論が 必要
  • 7. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Priority Leveling  Groupベース  Priority → 0と255を特別という案  Dependencyベース  新レベルのinsertに問題 → inserフラグ  どっちの戦略? 複雑すぎるのでは?  → プロトコルが正しいかどうかではなく性能に関 わる話である  → 複雑さはサーバー側、クライアントはシンプル  ユースケースがもっと必要  http/2に入らなければhttp/3に入れてもいい
  • 8. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ HPACK脆弱性  http2ハッカソン #1で議論したとおり  ヘッダ圧縮率がオラクルとして働く  低エントロピーでなければあまりコワクない  クッキーはエントロピー高いがパスワードは?  センシティブなヘッダは圧縮しない案  ホワイトリスト方式かブラックリスト方式を議論  圧縮するなフラグを用意(個別設定)で合意、セキュリ ティ考察も追加  却下された案  MAX_CONCURRENT_STREAMを小さくすれば試行が少な くなるという案、一定回数の失敗で忘れる案、一定確 率で圧縮しない案
  • 9. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ designer meeting 3/8  Mozilla Londonオフィスで開催  Preliminary Minutes
  • 10. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ designer meetingトピック  issue検討続き  Padding  HPACK  SRV/DNS  Alt-Svc  Priority Leveling →  Proxy
  • 11. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ issues続き  #363 TLS renegotiations  TLS接続後に特定URLでクライアント証明書を要求する場合が ある。firefoxでは同一connectionでTLSネゴシエーションをや り直す  HTTP/2ではすでにこのconnectionで他のstreamが走っている かもしれない  → renegotiationを許さない方向で議論を続ける  #362 BLOCKED frame提案  フローコントロールのためブロックされていることを相手に 伝える  デバッグも難しいしinteropもつらい  この仕様が必要かどうかで長い議論  → MLで議論継続
  • 12. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Padding  フレーム側の仕組としてPaddingを設ける  HPACK側はpaddingなし  flow-controlにどう影響するの? など議論  BREACH/CRIMEアタックに対しては、観測結 果が確率的にしか得られないことで緩和  ドラフト10ではPaddingによる攻撃への効果は限 定的であることも言及している
  • 13. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ HPACK  ハフマンでのEOS  paddingしないならEOS必要ないよね  →でも後でまたpaddingしようと思ったらそのとき必要になるよね?  → どうでもいい派が多数。興味ある人がランチ中に議論  クッキーだけ別テーブル(base64)という案は?  十分なinterestがなかった → 廃案  Kazuの指摘があるけれどStaticだけではダメか?  長い時間かかってgzip並の圧縮率になったわけで、データに基づいた結果 だよ  → そのデータある? → いやもうない  Robertoとの個人的な会話: HPACK効率を測るためのデータセットがほ しいよね  feedback loopに注意。HPACKを修正する → 送信されるデータが変わる → 最適なパラメータも変わる  server-pushについては、実装がない → いまデータがない
  • 14. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ SRV/DNS  http/1.1を話すことなく、エンドポイントが http/2を話すかどうか知りたい → DNSのSRV レコードでできないかという案  仕様化するには未成熟  Alt-Svcとうまく合わなければならない  → 文書を作る
  • 15. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Alt-Svc (Alternative Service)  http://tools.ietf.org/html/draft-nottingham-httpbis-alt-svc-03  同一のサービスが他のエンドポイントでも 提供されることを示す仕組み  サーバーからクライアントに、プロトコル、ホ スト、ポートを教える  HTTP/1.1レスポンスヘッダ Alt-Svc  Alt-Svc: "h2"=8000, "h2t"=443  HTTP/2 ALTSVC frame
  • 16. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Alt-Svcのユースケース  HTTP/1.1 からのアップグレード  #315 http:// スキームだけどTLS使いたい  #349 Load Asymmetry(ロードバランシング)  他のポートへリダイレクト  SNI (TLS Server Name Indication)未対応クライ アントの隔離  Alt-Svcを理解するならSNIもわかるだろう → 高 性能サーバーへリダイレクト
  • 17. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Alt-Svc関連issues  #315 http:// over TLS  プロキシまでHTTP/TCPで行き、プロキシからサー バーまでをTLSで行くことを許すか  http2にしたいが「:scheme」ヘッダはHTTP/1.1にはない  サーバーから見ればアタックに見える  end-2-endでTLSになった後httpアクセス行ったらどうか?  #421 mixed scheme → 明示的許可を記述  #426 unsupported scheme → エラー新設  payload semantics  draft-ietf-httpbis-p2-semantics-26  http2エラーコードとhttpステータスコードの関係
  • 18. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Proxy  長ーい議論があって正直追いつけなかった  proxies: HTTP2ではHTTP/1.1以上のことは何も言わない  proxiesの役割について  user agentの「確認」について  opportunistic encryptionについて  captive portalの振りをする悪人がいると検出できない  HTTP/1.1ではプロキシのディスカバリについては何も定義しなかった  ユースケースが大事  cacheingは難しい  クライアントからこれ持ってそうだからハッシュくれ、みたいに言えないとねー  credentialとGPSなどのプライバシーは分けて考えないと
  • 19. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Proxyつづき  5.8bil transactions (cisco)  17% https  1.8% of https connections → MITM  serverから見るとリクエストがプロキシーされてようがMITM受けていようが わからないのが問題  会社やベンダーにroot CA certつっこまれる問題  99%の人は証明書の問題を報告してほしくはない → 1%のリテラシーある人は 知りたい  everything over httpsの世界をまず作って、それからだ  CSSファイルは誰でも同じもの見るんだからキャッシュできるよね  data integrityの話とserver authNの話は別? → いやどうだろう  browser cacheだけ考えて、違うサイトのjquery.jsのハッシュがマッチしたら使 えるというのはscary  script hash, script nonce: ハッシュとダイジェスト
  • 20. Copyright © 2004-2014 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ 今後の予定  4月 WG Last Call  6月上旬、米東海岸で第6回interim  6/5-6 Bostonが有力