- From: Mike West <mkwst@google.com>
- Date: Thu, 16 Aug 2018 08:23:27 +0200
- To: phk@phk.freebsd.dk
- Cc: HTTP Working Group <ietf-http-wg@w3.org>
- Message-ID: <CAKXHy=dfHCwZbotc8XUTBcpOYumLTcduzP6yRvP_eE8h99pggA@mail.gmail.com>
On Tue, Aug 14, 2018 at 2:07 PM Poul-Henning Kamp <phk@phk.freebsd.dk> wrote: > -------- > In message <CAKXHy= > d6EaSO-SKRTEVDWfBcgf_FoFBj2gN4xmrR5q79yxSpXw@mail.gmail.com>, Mike West > writes: > > >https://github.com/mikewest/http-state-tokens suggests that we should > >introduce a client-controlled, origin-bound, HTTPS-only session identifier > >for network-level state management. And eventually deprecate cookies. > > Well, pretty much exactly what I proposed early in the HTTP/2 cycle, > so I'm all for it. > Oh, great! Can you point me to the proposal? I'd love to read it. > I would dedicate the top bit of the session-id, still under client > control, to tell the server if this should be considered a ephemeral > or persistent session, to make it easier for the server to garbage > collect state. > > If the top bit is zero, this session is ephemeral and when the > browser leaves, the session ceases to exist. UX wise this would > typically be browsing in "private mode" or if "do not track" is > set. > Hrm. Some browser vendors attempt to hide the fact that a user is running in "private mode". Advertising it via the top bit of the identifier might butt up against that goal. But assuming we ran with this model, what heuristics would you expect servers to use when cleaning up session identifiers that are no longer in use? PS: 64 bits is not enough for everybody, in particularly not when > they are randomly generated by less than perfect implementations. > Make then 128 bit from the start. > After a discussion on Twitter <https://twitter.com/patricktoomey/status/1029318457957871616>, I ended up bumping this to 256 bits <https://github.com/mikewest/http-state-tokens/commit/2fc6f828c1641eaf78bf85a64aea1ef7507647c1>. I think there's probably more discussion to be had around exactly the right length and whether that's too long, but I agree that 64 isn't enough. -mike
Received on Thursday, 16 August 2018 06:24:02 UTC