Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP First cut of the AIP 2.0 list of RFC versions to be included #579

Merged
merged 22 commits into from
May 27, 2021
Merged

Conversation

swcurran
Copy link
Member

@swcurran swcurran commented Jan 6, 2021

Per discussions in recent Aries WG calls, this PR lists the RFCs to be included in the next AIP, pinned at the latest commit in the repo. Flagged in the PR are the new RFCs added, and those that are still being discussed. Included are the goals that we used for including RFCs. Still to do:

  • finalize the "Under Consideration"
  • review the RFCs that have been included and are not "Accepted" to move them forward.
  • update the "Test Suite" section -- what to put in there.
  • Add any narrative that might (or might not) be needed about the AIP. I kind of feel that the RFCs/Versions speak for themselves and by simply being in the AIP, the rationale is implied.

And of course, there is the merging of the PR, and then the merging of a PR to make the AIP v2.0 "Accepted".

Signed-off-by: Stephen Curran <swcurran@gmail.com>
@swcurran swcurran added the WIP Work in Progress - Don't Merge label Jan 6, 2021

- From AIP 1.0: Aries Agents must be able to establish connections, exchange credentials and complete a connection-less proof-request/proof transaction.
- Aries agents must be able to reuse connections.
- RFCs 0434, 0023, 0519, 0360
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0360

I submitted a proposal to move away from did:key. A primary motivator there is to achieve better cryptographic agility with the ultimate goal of supporting NIST curves.

Supporting NIST curves is very important to us.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you going to present on this on Wednesday? This was up in the air when we adjourned before the holidays and you were investigating.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@swcurran I can lead a chat in wednesday's call. @dhh1128 is also interested.

Signed-off-by: Stephen Curran <swcurran@gmail.com>
@llorllale
Copy link
Contributor

We need a common way to ask for credentials and proofs. We should add RFCs 0510 and 0511 for this purpose (both propose using DIF Credential Manifest and Presentation-Exchange).

@llorllale
Copy link
Contributor

We also need a way to separate keys based on their purpose (key agreement vs authentication), and we also need to support standard NIST curves/algorithms together with their standardized JOSE envelopes. I propose we add RFC 0577 for this.

@dhh1128
Copy link
Member

dhh1128 commented Jan 19, 2021

We should add RFCs 0510 and 0511 for this purpose (both propose using DIF Credential Manifest and Presentation-Exchange).

I like the Presentation Exchange work quite a lot. However, I don't think it's stable enough to base this AIP on. I think we will have to do that in the next one.

I do not feel the same way about the Credential Manifest. The problem for me is that it's using a data format to do the job of a protocol. I want to discuss more.

&nbsp; | Format: BBS+ Signatures | :question: **Under Consideration**
Feature | [0454-present-proof-v2](https://github.com/hyperledger/aries-rfcs/tree/be4ad0a6fb2823bb1fc109364c96f077d5d8dffa/features/0454-present-proof-v2) | AIP V1.0, **Update to V2**
&nbsp; | Format: Indy AnonCreds | AIP V1.0, Updated
&nbsp; | Format: DIF Presentation Exchange | :question: **Under Consideration**
Copy link
Contributor

@llorllale llorllale Jan 20, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RFC 0510

@llorllale
Copy link
Contributor

@dhh1128

We should add RFCs 0510 and 0511 for this purpose (both propose using DIF Credential Manifest and Presentation-Exchange).

I like the Presentation Exchange work quite a lot. However, I don't think it's stable enough to base this AIP on. I think we will have to do that in the next one.

I do not feel the same way about the Credential Manifest. The problem for me is that it's using a data format to do the job of a protocol. I want to discuss more.

  • After yesterday's call we are all (including you) converging on presentation exchange as a proof request format - good
  • I think it is Credential Manifest that may not be stable enough yet. Spec work resumed today and the concepts and use cases are being drawn up again

Do you have a proposal for an interoperable credential request format?

@dhh1128
Copy link
Member

dhh1128 commented Jan 29, 2021

Do you have a proposal for an interoperable credential request format?

Yes. My proposal would be to rip out of credential manifest everything that isn't about describing the data of the credential to be issued. No asking the potential holder for data; no description of the issuer; no description of how the credential gets rendered in a UI. All of those things are poison pills to me, but if we could simplify the credential manifest to just what you described -- make it truly a "credential request format", then I would support it.

TelegramSam and others added 5 commits February 2, 2021 16:56
Signed-off-by: Sam Curren <telegramsam@gmail.com>
Signed-off-by: Sam Curren <telegramsam@gmail.com>
Signed-off-by: Sam Curren <telegramsam@gmail.com>
…added RFCs for credential format subtargets

Signed-off-by: Stephen Curran <swcurran@gmail.com>
@llorllale
Copy link
Contributor

@swcurran @dhh1128

did:peer is not on this list. What do we need to make that happen?

Can we agree on method 1?

@dhh1128
Copy link
Member

dhh1128 commented Mar 12, 2021

Can we agree on method 1?

I don't know who's got support for that method, and whether the support is for static mode only, or static + dynamic. Dynamic support for method 1 would require people to implement Aries RFC 0030. I think very few impls have tackled that, and I think that protocol is in need of updating.

Bottom line: I'd be happy to see it adopted, but I think it's a matter for the whole community to weigh in on, so I think we should put it to a vote on both email and a call.

Method 0 would be trivial for anyone who already supports did:key (seriously; it's just modifying a did:key impl to recognize the prefilx did:peer:0). Method 1 in static mode is slightly harder, but within impl reach for anyone who can spend a day coding. It's only when you get to Method 1 in dynamic mode that it gets more expensive to support.

@swcurran
Copy link
Member Author

@andrewwhitehead -- can you please weigh in on this when you get a chance? Thanks!

@swcurran swcurran added the AIP 2.0 Issues and PRs related to AIP 2.0 label Mar 14, 2021
@llorllale
Copy link
Contributor

@swcurran @dhh1128 @andrewwhitehead on adopting did:peer: #611

…are to be in AIP 2.0

Signed-off-by: Stephen Curran <swcurran@gmail.com>
@llorllale
Copy link
Contributor

I am concerned that we do not have RFC0348 - Transition Message Type to HTTPs in the core section of AIP 2.0.

@dhh1128
Copy link
Member

dhh1128 commented Mar 23, 2021

I am concerned that we do not have RFC0348 - Transition Message Type to HTTPs in the core section of AIP 2.0.

+1

@swcurran
Copy link
Member Author

I'll add it in. It should be fully executed by now.

@llorllale -- we are adding a config to the AATest Harness so that on startup a test agent knows what AIP they are using, so that we can have intelligent defaults for AIP 2.0 and eliminate some of the need for backward compatibility like this.

…ph on encryption envelope to AIP itself

Signed-off-by: Stephen Curran <swcurran@gmail.com>

#### DIDCOMMV2PREP: DIDComm v2 Prep
RFC Type | RFC/Link to RFC Version | Note
--- | --- | ---
Feature | [0334-jwe-envelope](https://github.com/hyperledger/aries-rfcs/tree/9363159d517afa3c17a79b5d8394e933c652de84/features/0334-jwe-envelope) | :question: **Under Consideration**
Feature | [0587-encryption-envelope-v2](https://github.com/hyperledger/aries-rfcs/tree/9363159d517afa3c17a79b5d8394e933c652de84/features/0587-encryption-envelope-v2) | :new
Feature | [0587-encryption-envelope-v2](https://github.com/hyperledger/aries-rfcs/tree/b982c24b9083dd5dddff6343dbf534cd1cfe36a6/features/0587-encryption-envelope-v2) | :new:<br>See envelope note below

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure if this belongs under DIDComm v2 Prep or deserves its own section, but the formalization of did:peer support in RFC 627 may now be worthy of mention?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, Daniel -- I'll get that added.

…IDs RFC

Signed-off-by: Stephen Curran <swcurran@gmail.com>
Signed-off-by: Stephen Curran <swcurran@gmail.com>

AIP 2.0 contains two RFCs that reference envelopes 0019-encryption-envelope and 0587-encryption-envelope-v2 (links above).
The important feature that Aries implementers should understand to differentiate which envelope format can or is being used by an agent is the
`accept` element of the DIDComm service endpoint. If the `accept` element is not present in the agents service endpoint, the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@swcurran

accept element of the DIDComm service endpoint

and the out-of-band message

…ormat-agnostic revocation additions; update to latest commit

Signed-off-by: Stephen Curran <swcurran@gmail.com>
Signed-off-by: Stephen Curran <swcurran@gmail.com>
…argets. Adding 0593 to BBS+

Signed-off-by: Stephen Curran <swcurran@gmail.com>
Feature | [0454-present-proof-v2](https://github.com/hyperledger/aries-rfcs/tree/d50fe1e38c9720344123146c31fbf7ad8e78b345/features/0454-present-proof-v2) | Update to V2 Protocol
Feature | [0557-discover-features-v2](https://github.com/hyperledger/aries-rfcs/tree/d50fe1e38c9720344123146c31fbf7ad8e78b345/features/0557-discover-features-v2) | :new:
Feature | [0627-static-peer-dids](https://github.com/hyperledger/aries-rfcs/tree/d50fe1e38c9720344123146c31fbf7ad8e78b345/features/0627-static-peer-dids) | :new:

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about RFC092: transport return route? @swcurran @TelegramSam

Copy link
Member Author

@swcurran swcurran left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved by a unanimous vote at the Aries WG B Call, 2021.05.26.

Requests applied in the final update:

  • Added RFC 0092 to the Mediator Coordination sub-target
  • Updated the links to the RFC versions to the latest commit in the repo
  • Added a link to each RFC in both AIP 1 and 2 to show the diffs between the versions

Merge it @TelegramSam !

Copy link
Contributor

@TelegramSam TelegramSam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updates match requested in WG meeting

@TelegramSam TelegramSam merged commit 41d27af into hyperledger:master May 27, 2021
@swcurran swcurran deleted the AIPv2 branch May 27, 2021 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AIP 2.0 Issues and PRs related to AIP 2.0 WIP Work in Progress - Don't Merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants