RFC 8785 クイズ

暗号処理のためのdeterministicなJSON byte列

0 / 0

参照仕様

Q1: 通常のJSON serializationだけではshared signature inputとして不十分な理由はどれ?

単一選択
**解説:** A: 同じparsed dataでもこれらのlegal variationで異なるbyte列になりうる. B: RFC 8259はstringとnumberを定義する. C: parsingとcryptographic verificationは別のoperationである.

Q2: JCS implementationがcanonicalization前にrejectすべきinputはどれ?

単一選択
**解説:** A: canonicalizationがpropertyをsortするためinput orderはcanonicalでなくてよい. B: JCS input objectはduplicate property nameを含んではならない. C: arrayはobjectを含められそのobjectはrecursiveに処理される.

Q3: JCS outputではJSON token間のwhitespaceをどうする?

単一選択
**解説:** A: JCSはseparator spaceをemitしない. B: JCSはparsed dataを処理しsource formattingを保持しない. C: RFC 8785はJSON token間にwhitespaceをemitしないよう要求する.

Q4: JCSはJSON object propertyをどうorderする?

単一選択
**解説:** A: JCSはunsigned UTF-16 code-unit比較を使い全child objectをsortする. B: locale collationとescape表記ではspecifiedな共通orderにならない. C: insertion orderはJCS sorting ruleで置き換える.

Q5: JCSはarray element orderをどう扱う?

単一選択
**解説:** A: element orderの変更はJSON data modelを変える. B: arrayはrecursiveにscanされるがelement positionは変更しない. C: JCSはfixed element orderを持つarrayをsupportする.

Q6: JCS implementationはsigning前にstringへUnicode normalizationを適用してよい?

単一選択
**解説:** A: RFC 8785は意図的にUnicode normalizationを適用しない. B: visual similarityはparsed string dataを変更するruleではない. C: string dataの変更はcanonicalize対象valueを変えsignatureを壊しうる.

Q7: JCSはJSON numberをどうserializeする?

単一選択
**解説:** A: JCSはECMAScript serialization algorithmでnumber表記を固定する. B: JCSはparsed numeric valueをcanonicalizeしsource表記を保持しない. C: applicationはlarge numberをstringでmodelできるがJCSはJSON typeを勝手に変えない.

Q8: parsed valueにlone surrogateまたはInfinityがある. compliant JCS implementationはどうする?

単一選択
**解説:** A: silent replacementはdataを変更しsignature behaviorを曖昧にする. B: RFC 8785はinvalid Unicodeとnon-JSON numeric valueでerrorを要求する. C: JCSはnullへのlossy conversionを定義しない.

Q9: 2つのimplementationが同じJCS byteを生成した. 何を結論できる?

単一選択
**解説:** A: canonicalizationはauthorizationをgrantしない. B: JCSはcode pointを保持しnatural-languageの意味を解釈しない. C: JCSはdeterministic byteを提供するがclaim meaningとtrustはapplicationへ委ねる.

Q10: signed Agent Cardでapplication profileがなお定義すべきboundaryはどれ?

単一選択
**解説:** A: display stylingはcryptographic coverageを決めない. B: 全partyが同じlogical objectを構築しJCS周辺で同じacceptance ruleを適用する必要がある. C: deterministic byteはsigning keyをauthenticateしない.