internet-draft

Secure Contextsに関する localhost と、IETFでの新提案

Secure Contexts Service Workers、Web BluetoothといったAPIは、安全に使用するためにセキュリティ上の条件があります。 その条件がSecure Contextと呼ばれるコンテキストであり、W3CのSecure Contexts(URL)というドキュメントで定義されています。 このSec…

Site-Wide HTTP Headers とは

Mark Nottingham氏から、HTTPレスポンスヘッダをサイト全体で使いまわせるようにする 「Site-Wide HTTP Headers」 という仕様が提案されています。https://tools.ietf.org/html/draft-nottingham-site-wide-headers-00 例えば、Public-Key-PinsやStrict-Tran…

QUICの仕様を翻訳していく

2017年追記 2017年時点で、仕様は更新され、拡張仕様も出てきています。 asnokaze.hatenablog.com QUIC in ietf96 「Google の試験的トランスポート、QUIC のアップデート」などでも紹介されている、Googleが提案・実装してるQUIC。 すでに関連するドキュメ…

安全でない通信路でセットされたCookieの有効期限を短くする仕様

安全でない通信路で設定されたCookieについて有効期限を短くする「Expiring Aggressively Those HTTP Cookies」という仕様がMozillaのMartin Thomsonから提案されています。 Expiring Aggressively Those HTTP Cookies https://tools.ietf.org/html/draft-th…

HTTP/2における証明書に基づいたリアクティブなクライアント認証 その2

この記事は Secondary Certificate Authentication in HTTP/2 という仕様にマージされました 「HTTP/2における証明書に基づいたリアクティブなクライアント認証 その1」(2015-10-23) 「Reactive Certificate-Based Client Authentication in HTTP/2」 の dr…

Captive Portal Problem Statementについて

Captive Portalについて議論を行うcapport wgが出来、IETF95で初めてのミーティングが行なわれます。 Captive Portalとは、よくWi-Fi接続後にブラウザでWebベースの認証が別途要求されるアレです。このCaptive Portalが引き起こす問題について議論をするため…

Limited Use of Remote Keys(Lurk)についてのメモ

kazuhoさんのIETF95参加報告資料が参考になるかと思います(20160608追記) http://www.slideshare.net/kazuho/tls-lurk-ietf-95 2016年1月に、IETFで"Limited Use of Remote Keys(Lurk)"と言う議論が始まりました。 Lurkに関する議論はIETF95のBoFで議論され…

HTTP/2 GZIPPED_DATA フレームとは

このエントリは、 http2 advent calendar の 8 日目の穴埋めです。 HTTP/2にGZIPPED_DATAフレームという拡張フレームを追加する提案が提出されている。フレームの追加に伴って、エラーコード・Settingsも追加される。 HTTP/2 Gzipped Data https://tools.iet…

HTTPのためのTCPチューニング (Best Current Practice)

HTTPを効率よく使用するためにTCPのチューニングはかかせません。 Best Current Practiceカテゴリとして「TCP Tuning for HTTP (draft 00)」というInternet-Draftが提出されているので、ざっと目を通した。(割と適当) 大きく分けて下記の5つについて書かれ…

HTTP/2に「ORIGINフレーム」を追加する拡張仕様

HTTP/2では、一定の条件が満たされれば異なるオリジンとの通信を一つのコネクション上で行うことが出来ます。サーバは、クライアントが要求したオリジンに対する権威がない場合は421 (Misdirected Request)を返します。 (条件等は、rfc7540#section-9.1参照…

サーバプッシュのための「Accept-Push-Policyヘッダ」とは

HTTP/2ではサーバプッシュと呼ばれる機能があります。サーバはクライアントからのリクエストを受信しなくても先んじてレスポンスを返すことができる仕組みになります。 たとえば、HTTP/1.1においてリソースをインライン化していた部分をサーバプッシュとして…

HTTP/2における証明書に基づいたリアクティブなクライアント認証 その1

draft 01で大きくな変更が加えられました。証明書を要求するフローは以下より大きく変わりました。ご注意ください (2016/01/27) 「HTTP/2における証明書に基づいたリアクティブなクライアント認証 その2」でdraft02について書きました(2016/05/04) HTTP/2に…

Cookieの属性を制限する Cookie Prefixesという仕様

"$Origin-"プレフィックスは削除され、"$Host-"プレフィックスが追加されました。 (2015/10/13追記)(2015/10/17 記事更新) 背景の、domain属性の指定に誤りがあったため修正しました。「domain=my-example.com」-> 「domain=example.com」(2015/10/14追記) d…

非セキュアなオリジンから'secure'クッキーの変更を廃止する提案

先日、HTTPSでsecure属性を付加した場合でも改変できると話が話題になりました。 クッキーの脆弱性が判明: HTTPS のセキュリティを突破する、攻撃が成り立ってしまう! HTTPSを使ってもCookieの改変は防げないことを実験で試してみた(2013/9/30) Cookies La…

Multipath TCPとL4バランシングのI-D

一年ほど前に書いた「MPTCP(MultiPath TCP)と負荷分散ってどうなんだろう」関連の話。 先日、まさに「Multipath TCP behind Layer-4 loadbalancers」と言うI-Dが出てました。iOSのsiriではMPTCPを使っているようですが、Appleの方もAuthorに含まれています。…

QUICの仕様(ドラフト)が公開されたので、概要を読む

QUICの仕様を翻訳していく http://d.hatena.ne.jp/ASnoKaze/20160725/1469374715 新しい仕様の翻訳を公開しました(2016/07/25) https://github.com/flano-yuki/my-quic-spec-translation QUIC: A UDP-Based Multiplexed and Secure Transport HTTP/2 Semanti…

TLS Jump Startとは

TLS Jump Start CloudFlareの方によって、TLS Jump Startという仕様が提案されている。 雑にですが簡単に斜め読みした(例のごとく間違い等あるかと思います) https://tools.ietf.org/html/draft-vkrasnov-tls-jumpstart-00 TLSの通信では初期接続時に複数…

RFC7694 HTTP Client-Initiated Content-Encoding

Client-Initiated Content-Encoding HTTP Client-Initiated Content-Encoding https://tools.ietf.org/html/draft-ietf-httpbis-cice-00 という、HTTPに関する拡張仕様が提案されており、4月にhttpbisのWGドラフトになっている。 Accept-Encodingヘッダをレ…

Origin Cookiesとは

Origin Cookies GoogleのMike West氏による、Cookieに対する拡張が提案されている。 draft-west-origin-cookies-01では、同一生成元ポリシーと同様なセキュリティポリシーでCookieを扱えるように、Cookie(RFC6265)に"Origin"属性を追加し、HTTPヘッダに"Orig…

ALPN HTTP Headerとは

TLS ALPNに関してはこちら TLS上でのプロトコルネゴシエーションの仕組み、NPNとALPN ALPN HTTP Header 現在、httpbis WGで提案されている「The Tunnel-Protocol HTTP Header Field」と言う仕様が、「The ALPN HTTP Header Field」に改称される見込みである…

Cache-Controlヘッダのstale-while-revalidateとは

20170215追記「Nginxがstale-while-revalidateに対応した」 http://d.hatena.ne.jp/ASnoKaze/20170211/1486820792 Chromeの「chrome://flags/」に「stale-while-revalidate キャッシュ指令を有効にする」と言うフラグがあったので、簡単に調べた。 「RFC5861…

MPEG‐DASHにおけるHTTP/2の使用、DASH-PUSHの提案

MPEG-DASHとHTTP/2 MPEG-DASH(Dynamic Adaptive Streaming over HTTP)と呼ばれるHTTP上で環境に合わせてビットレートを変更しながらストリーミングできる仕組みがある。このMPEG-DASHにHTTP/2を使うという話がいくつか出てきている。 たとえば、BBCの「Adapt…

CookieのFirst-Party-Only属性

draft 05より、「Same-site Cookies」という仕様に改称され、SameSite属性として属性が定義されました。 http://tools.ietf.org/html/draft-west-first-party-cookies-05 (2016/01/28) Googleの方による、CookieにFirst-Party-Only 属性を追加するという仕様…

SSLv3の使用が禁止される話

TLS WGでは「Deprecating Secure Sockets Layer Version 3.0(draft-ietf-tls-sslv3-diediedie-00 )」というI-DがWG Last Callになっています。 これは、SSLv3の使用を禁止するI-Dになります。 ざっと以下の様な事が書かれています。禁止されるという事実より…