Q1: RFC 8392とA2A CWT profileの責務を正しく分けた説明はどれか
Multiple ChoiceconstrainedなA2A profileがcompactなauthorization claimを必要とし,COSEで保護したCWTを使う予定です.
CBOR representation、COSE processing、claim validation、creator trust、downstream authorizationを分けて扱います。Section番号はRFC 8392を指します。
constrainedなA2A profileがcompactなauthorization claimを必要とし,COSEで保護したCWTを使う予定です.
A2A message schemaはfield 4にCWTを置くと定義しています.fieldにはuntagged COSE_Sign1 objectがあり,receiverはschema上の位置からtypeを認識できます.
CWTはvalidなCBOR mapで,COSE_Sign1 signatureも検証済みです.A2A profileはaudがこのresourceを示し,expが有効期間内であることを要求しますが,validatorはどちらも未確認です.authorizationには両条件が必要です.
A2A profileはprivate claim 500をrequiredなoperation classと定義し,値を認識できないrequestをrejectします.一方のimplementationは理解しますが,もう一方はgenericなunknown-claim ruleで無視します.interoperableなauthorizationが判定基準です.
5台のdeviceが同じsymmetric COSE MAC keyを共有しています.MACed CWTはiss=device-Aと主張し,MAC検証にも成功します.authorization ruleは他のgroup memberではなくdevice-Aがclaimを作成したevidenceを要求します.
A2A gatewayがCWTを検証し,aud=gatewayを確認して,subとoperationを含むplain JSONだけをresource-owning backendへ転送します.backendはauthenticated gateway connectionでJSONを受け取りますが,CWTもaudience,issuer,validation timeを覆うgateway assertionも受け取りません.backend policyはこのbackend operation向けのevidenceを要求します.
汎用CBOR libraryがexp claimをepoch numberへCBOR tag 1を付けてencodeする。CWT profileが必要なのは新規claimではなく、RFC 8392の標準exp claimである。
producerはclaim key 7をCBOR text string "token-123"としてencodeする。receiverはregistered cti claimを想定し、replay-state lookupへ使う。
recipientはCOSE_Encrypt0 CWTのdecryptionに成功した。plaintextはCOSE_Sign1 tagで始まるが、実装はinner signatureを検証せず、そのpayloadをclaimsとしてauthorizeする。
A2A profileはsigner privacyと、nested CWTからsignatureをstripする攻撃への保護を必要とする。editorはRFC 8392が1つのnesting orderを一律にmandateすると主張する。