Closed
Bug 976098
Opened 11 years ago
Closed 11 years ago
Call-me URLs should be opaque to users
Categories
(Hello (Loop) :: Server, defect)
Hello (Loop)
Server
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: abr, Assigned: alexis+bugs)
References
Details
Attachments
(1 file)
The temporary session URIs described in Bug 971994 shouldn't contain any user-extractable information. For the state-token approach, this implies that the information needs to be encrypted prior to having the HMAC applied.
See http://tools.ietf.org/html/draft-rescorla-stateless-tokens-01 for a detailed treatment of encrypted state tokens.
| Assignee | ||
Comment 1•11 years ago
|
||
Attachment #8384170 -
Flags: review?(ekr)
Comment 2•11 years ago
|
||
Comment on attachment 8384170 [details] [review]
link to github PR
Re-assigning to this rbarnes
Attachment #8384170 -
Flags: review?(ekr) → review?(rlb)
Updated•11 years ago
|
Attachment #8384170 -
Flags: review?(rlb) → review-
| Assignee | ||
Comment 3•11 years ago
|
||
This commit (on node) introduces support for GCM, but haven't been released in node yet.
https://github.com/joyent/node/commit/bf5bbe4512706c1d8f59850576e5abae8d3455e1
The current plan is to stick for now with token = IV || CBC(payload) || HMAC(CBC(payload)), and we could change that later on to support GCM.
| Assignee | ||
Comment 4•11 years ago
|
||
Comment on attachment 8384170 [details] [review]
link to github PR
We've updated the pull request addressing the comments.
Attachment #8384170 -
Flags: review- → review?(ekr)
| Assignee | ||
Comment 5•11 years ago
|
||
And yet another update there with your last comments, kind you get another look?
| Assignee | ||
Comment 6•11 years ago
|
||
Reassigning the reviewer since this blocks the rest of the stuff on the server.
| Assignee | ||
Updated•11 years ago
|
Attachment #8384170 -
Flags: review?(ekr) → review?(standard8)
Updated•11 years ago
|
Attachment #8384170 -
Flags: review?(standard8) → review+
Comment 7•11 years ago
|
||
One small change noted in PR. Need to check token length in decoding.
| Assignee | ||
Comment 8•11 years ago
|
||
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
| Assignee | ||
Comment 9•11 years ago
|
||
Eric, Richard, we seem to be doing something that already exists (e.g. ciphering / mac JSON tokens) described at http://self-issued.info/docs/draft-ietf-oauth-json-web-token.html#EncryptedJWTExample.
Can you point at the key differences with what we're currently doing, and why this is considered a better approach?
Comment 10•11 years ago
|
||
You could in principle re-use JWT here. The main benefit would be re-using the code. Note that we don't care in this case about interoperability.
There are a few draw-backs:
(1) JWT tokens would be appreciably longer than what's in there now, since a full JWT encodes the algorithms/key IDs (which are hard-coded here). You could mitigate this by trimming the header on encode() and re-adding it on decode(), at the cost of more complication in the set-up (need to generate the static header).
(2) JWT doesn't have any pre-existing claim types for the information that's in loop tokens. We would need to define one, and probably in a "Collision Resistant Namespace" (i.e., URL format) in order to avoid risks of replay/name collision. More token bloat.
Net of all that, it doesn't really seem worth the effort to me.
Comment 11•11 years ago
|
||
:alexis given the more recent comments, is this still considered Resolved/Fixed?
| Assignee | ||
Comment 12•11 years ago
|
||
It is, yes!
You need to log in
before you can comment on or make changes to this bug.
Description
•