http2 勉強会 10 (IETF, TLS1.3, QUIC) まとめ #http2study
kazuho: バージョン番号の混乱: IETF97では1.3が多数派。ML上ではTLS4が優勢(SSL3より上の番号)、TLS 2017? #http2study
2016-11-28 20:23:51kazuho: スケジュール: WGLCなう。2016/12 ヘッダを3バイト削れるか試す。2017/02 セキュリティーレビューを待って制定? #http2study
2016-11-28 20:25:38kazuho: HTTPのリトライはどうか? HTTP仕様いわく、「べき等性のあるメソッドだけはリトライしてもよい。しかし現実としてブラウザはPOSTでもリトライしている #http2study
2016-11-28 20:27:50kazuho: 3つのsafety: retry-safety: クライアントにリトライさせない、idempotency: べき等、replay-safety: リプレイされても安全(難しい) #http2study
2016-11-28 20:28:41kazuho: retry-safety: リトライ攻撃の例: TLSを中継してTCP切断。nonceを使って防ぐのが通例。しかし1年後にリプレイされるとnonce忘れちゃってる #http2study
2016-11-28 20:29:40kazuho: replay-safetyを確保するには: 案1: session ticktに署名つきで有効期限を入れる。案2: フォームのhiddenに有効期限 #http2study
2016-11-28 20:30:22kazuho: 注意: TLS 1.2でのリプレイ回数はブラウザのリトライ回数だった。TLS 1.3ではたくさんリプレイされ得る #http2study
2016-11-28 20:30:53kazuho: まとめ: TLS 1.3はメジャーバージョンアップ。0-RTTはこわいこともあるのでサーバー側でオフにもできるように #http2study
2016-11-28 20:31:29kazu: TLS 1.2ではリネゴでクライアント認証するので、証明書は平文でなく守られるのでは? → kazuho: リネゴでも平文だったような… #http2study
2016-11-28 20:32:21jxck: 暗号系の部品が全部ある前提で1.2を忘れてTLS 1.3を実装するのはどれくらい大変? kazuho: 2500行くらいでコアができる。それプラス暗号ライブラリbindingなど #http2study
2016-11-28 20:33:57kazuho: TLS 1.3だけを相手にすると楽になる。大部分のextensionはそのまま使うので楽 #http2study
2016-11-28 20:34:50kazu: TLS 1.2と1.3を両方サポートしようとすると、extensionの意味が変わることがあって大変 #http2study
2016-11-28 20:34:54johan: QUICとは: Googleが作ったtransportプロトコル。UDPの上でmux。輻輳制御、TLS適用(quic crypto) #http2study
2016-11-28 20:46:58johan: innovationがUDP上で次々行われている。0RTT、connection migration、HOL reduction #http2study
2016-11-28 20:47:28johan: SCTP、MPTCPはどうなった? なぜわざわざQUICを? MPTCP: iOS OK、Androidダメ: middleboxに嫌われたり。TCPハンドシェクトが必要 #http2study
2016-11-28 20:48:55johan: SCTP: 4-wayハンドシェイクなのでもうダメです。heartbeatの調節ができない #http2study
2016-11-28 20:49:33johan: QUIC: 0-1 RTT。TCP+TLS: RTT。TCP FastOpen+TLS FastStart→1RTT、TCP FastOpen+TLS1.3→0RTT。QUICはTLS1.3を使う予定 #http2study
2016-11-28 20:50:44