Mercurial > hg > ietf
annotate twt_review.txt @ 11:bc100f494ca0
nearly done, still struggling with o-umlaut
| author | Henry S. Thompson <ht@inf.ed.ac.uk> |
|---|---|
| date | Wed, 30 Apr 2025 16:12:05 +0100 |
| parents | |
| children | 9cb53ac26388 |
| rev | line source |
|---|---|
|
11
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
1 *Summary* |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
2 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
3 *Minor points* |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
4 [this actually borders on the 'substantive', see the discussion under |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
5 Appendix B. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
6 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
7 4.2.1 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
8 This bullet |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
9 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
10 "JSON-encode the array, producing [a] UTF-8 string" |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
11 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
12 looks simple, but ended up confusing me for over an hour. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
13 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
14 For the rest of things to work, you must mean "Serialize the array |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
15 to the corresponding utf-8-encoded byte sequence", but that's not |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
16 exactly trivial in the JSON-native context you've adopted in this |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
17 document. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
18 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
19 That is, at first I thought you should just include one extra |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
20 step in the Disclosure construction, example, namely what the |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
21 UTF-8 (byte) string looks like as (what RFC8259 calls) "UTF-8 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
22 encoded JSON text", immediately after the array creation |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
23 display: |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
24 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
25 ["_26bc4LT-ac6q2KI6cBW5es", "family_name", "Möbius"] (1) |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
26 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
27 "[\"_26bc4LT-ac6q2KI6cBW5es\", \"family_name\", \"M\u00c3\u00b6bius\"]" (2) |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
28 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
29 but that's really ugly and would be more likely to confuse than clarify. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
30 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
31 Note that in only the first 64bitURL Disclosure |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
32 samples that you offer decodes to my guess (2)! And indeed |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
33 what they _do_ decode to, that is |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
34 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
35 '["_26bc4LT-ac6q2KI6cBW5es", "family_name", "Möbius"]' # 4d c3 b6 62 69 75 73 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
36 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
37 '["_26bc4LT-ac6q2KI6cBW5es", "family_name", "M\\u00f6bius"]' |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
38 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
39 respectively, are non-trivially distinct, as in both Python and |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
40 node.js these, as strings, correspond to two _different_ |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
41 byte-sequences (the second is 4 bytes longer than the first and, |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
42 if both are decoded as utf-8, to 5 more characters). It's true |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
43 that they are both valid JSON texts, per RFC8259, but you have to |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
44 apply a JSON parser to them to get to indistinguishable JSON objects. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
45 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
46 Apologies for this lengthy attempt to show where I think you've |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
47 gotten in to trouble by specifying _algorithms_ in informal |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
48 english, while more-or-less assuming, I'm guessing, some library |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
49 functions in whatever language you're used to using. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
50 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
51 To address this problem, since you use "JSON-encode" a number of |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
52 times in later sections, I would _strongly recommend_ that you |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
53 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
54 a) Add the following to section 1.2, immediately after the |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
55 definition of *base64url*: |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
56 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
57 *JSON-encode* denotes the conversion of a JSON object to |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
58 "JSON text" and encoding that text in UTF-8, as defined in |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
59 RFC 8529. That is, mapping a JSON object to a UTF-8 byte |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
60 sequence which when decoded and parsed will reconstruct an |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
61 object indistinguishable from the original. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
62 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
63 b) Replace that problematic bullet, and the next, with |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
64 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
65 * JSON-encode the array, producing a UTF-8 encoded byte sequence. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
66 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
67 * base64url-encode the resulting byte sequence. The resulting |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
68 string is the Disclosure. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
69 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
70 c) Be careful never to use "string" when "(UTF-8) byte sequence" |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
71 is meant, starting in 4.2.2 with |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
72 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
73 The Disclosure string is created by JSON-encoding this array |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
74 and base64url-encoding the resulting byte sequence as |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
75 described in Section 4.2.1 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
76 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
77 d) In the second media type registration in 12.2 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
78 "represented as a JSON Object" -> |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
79 'represented as UTF-8 encoded "JSON text" as defined in RFC 8529' |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
80 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
81 e) Include RFC 8529 in the 13.1 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
82 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
83 Appendix B. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
84 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
85 The above problem resurfaces here, with confusion between three |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
86 possible interpretations, in the terms of RFC 8529, of what is |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
87 displayed: |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
88 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
89 * a JSON object, that is, structured data composed of |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
90 instances of the six primitive types which JSON can |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
91 represent. It is _not_ to be understood as string, byte |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
92 sequence or file contents; |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
93 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
94 * a possible JSON text for some JSON object. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
95 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
96 * a UTF-8 encoding of some JSON text, aka a "JSON encoding". |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
97 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
98 The first figure is labelled as a JSON object, which is OK. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
99 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
100 But it is indistinguishable from one of the possible |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
101 JSON texts corresponding to that object. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
102 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
103 The next figure purports to present two alternative "JSON |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
104 encodings", the second of which is problematic. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
105 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
106 Its first line appears indistinguishable from that shown for the |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
107 JSON object in the preceding figure, but is in fact different. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
108 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
109 In the first figure, construed as a "JSON text", the o-umlaut |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
110 glyph denotes a single Unicode character in a six-character |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
111 object member's value. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
112 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
113 Construed as depicting a JSON object, the o-umlaut denotes a |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
114 single Unicode code-point (U+00F6), either in the abstract or in |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
115 some implementation-dependent internal representation, part of an |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
116 object member value. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
117 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
118 However in the second figure, second alternative, the o-umlaut |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
119 corresponds to a _two_-byte UTF-8 sub-part of the JSON encoding of |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
120 that value as a seven-byte UTF-8 byte sequence, either in some |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
121 internal representation or an external stream or file. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
122 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
123 What to do? |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
124 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
125 *Nits* |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
126 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
127 4. "(for those who celebrate)" will be anywhere from obscure to |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
128 confusing for many readers from many cultures -- best to remove it. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
129 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
130 4.2.1. "an UTF-8" -> "a UTF-8" [overtaken by 4.2.1 above] |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
131 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
132 "However, the digest is calculated over the respective |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
133 base64url-encoded value itself, which effectively signs" |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
134 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
135 -> |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
136 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
137 "Because the digest is calculated over the respective |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
138 base64url-encoded value itself, this effectively signs" |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
139 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
140 4.3.1. I'd recommend |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
141 "The bytes of the digest MUST" -> "The bytes of the sd_hash value MUST" |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
142 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
143 6. I have decoded a few of the Disclosures and they're fine, but you |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
144 might want to ask a friendly 3rd party to double-check all the |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
145 Disclosures and digests, at least here and in Appendix A. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
146 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
147 9. "Security considerations in this section help achieve the |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
148 following properties:" |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
149 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
150 This confused me for a while. I think what you mean to say here |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
151 is something like |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
152 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
153 This spec aims to provide two security guarantees: |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
154 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
155 *Selective Disclosure*: ... |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
156 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
157 *Integrity*: ... |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
158 |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
159 The following sub-sections show how the various aspects of the |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
160 design presented here combine to achieve this. |
|
bc100f494ca0
nearly done, still struggling with o-umlaut
Henry S. Thompson <ht@inf.ed.ac.uk>
parents:
diff
changeset
|
161 |
