hyperledger / aries-rfcs

Hyperledger Aries is infrastructure for blockchain-rooted, peer-to-peer interactions
https://hyperledger.github.io/aries-rfcs/
Apache License 2.0
326 stars 217 forks source link

RFC 0592 Proof Request includes nonce that is also required for a proof proposal #766

Closed TimoGlastra closed 1 year ago

TimoGlastra commented 1 year ago

Present Proof v2 proposal and request both use hlindy/proof-req@v2.0 format. This is different from v1 where it used the protocol native presentation proposal.

One thing I've noticed is that the proof request specifies a nonce, however in the case of a holder making a proposal this doesn't make a lot of sense. The nonce should be provided by the verifier to prevent replay attacks.

By allowing the holder to propose a nonce we lose this. In AFJ we now just always generate a new nonce, but it's still quite odd that it's in the RFC.

Should we only allow the nonce for requests and not when used as a proposal?

swcurran commented 1 year ago

I think that a verifier would/should always create/use their own nonce in a presentation request. The use of the proof-req format in the proposal is just out of convenience, and does not/should not imply that the verifier would just blindly use an unchanged version of the proof request data structure in their proof. Further, by removing the nonce from the proposal, the two data structures become different, which means more specifying.

Perhaps a clarification that the nonce from the proposal should NOT be used in the request should be added?

TelegramSam commented 1 year ago

Appears resolved.