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

Updates EIP-5573: Reflect changes in CACAO and UCAN specs #6654

Merged
merged 3 commits into from
Mar 17, 2023

Conversation

skgbafa
Copy link
Contributor

@skgbafa skgbafa commented Mar 8, 2023

This PR updates EIP-5573 to enable easier integration with CACAO and UCAN by:

  • replacing the tar and ext fields with att and prf
    • att containing URIs as keys and objects as values
      • each of these objects contains <namespace>/<name> ability strings as keys and an array of note-bene/restriction objects as values
        • ability strings are restricted to alphanumeric characters + .+*-_
      • note-bene objects can contain any JSON
    • prf containing an array of CIDs representing prior authorisations
  • requiring maps within the recap-object to have lexicographically ordered keys
  • updating the statement generation to segregate by resource and namespace
  • requiring that there be only one recap-uri per SIWE message that must appear as the final entry in the resource list
  • removing the namespace from the recap-uri

By matching the recap-object to the att and prf structure of ucan/cacao, interoperability between them becomes possible by treating a SIWE-recap as just one way of representing the same information, for signature verification purposes.

* updates eip5573 to reflect changes in CACAO and UCAN specs

* clearly define the meaning of lexicographic ordering

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* remove unnecessary comma

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* remove uri field from statement

* update recap-uri example

* clarify that recap uris go at the end of the resource list

* clarify comparison to OIDC/OAuth2

* specify how recap objects can be combined

* remove mention of namespace

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* better wording of recap purpose/niche

* specify b64 without padding

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* consistent spelling

* rename delegee -> Relying Party

* update example recap uri

* fix abstract wording a little bit

* use reference for b64url link

* fix references layout

* apply markdown linter

---------

Co-authored-by: Jacob <jacob.ward@spruceid.com>
Co-authored-by: Samuel Gbafa <skgbafa@gmail.com>
@skgbafa skgbafa requested a review from eth-bot as a code owner March 8, 2023 22:09
@github-actions github-actions bot added c-update Modifies an existing proposal s-draft This EIP is a Draft t-erc labels Mar 8, 2023
@eth-bot
Copy link
Collaborator

eth-bot commented Mar 8, 2023

All reviewers have approved. Auto merging...

@eth-bot eth-bot enabled auto-merge (squash) March 8, 2023 22:09
eth-bot
eth-bot previously approved these changes Mar 8, 2023
@github-actions
Copy link

github-actions bot commented Mar 8, 2023

The commit 87326ad (as a parent of b5c2662) contains errors.
Please inspect the Run Summary for details.

@github-actions github-actions bot added the w-ci Waiting on CI to pass label Mar 8, 2023
awoie
awoie previously approved these changes Mar 9, 2023
Copy link
Contributor

@awoie awoie left a comment

Choose a reason for hiding this comment

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

thanks, lgtm!

Copy link
Member

@Pandapip1 Pandapip1 left a comment

Choose a reason for hiding this comment

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

Fix the walidator issues.

auto-merge was automatically disabled March 14, 2023 15:15

Head branch was pushed to by a user without write access

@skgbafa skgbafa dismissed stale reviews from awoie and eth-bot via 884951c March 14, 2023 15:15
@eth-bot eth-bot enabled auto-merge (squash) March 14, 2023 15:15
@github-actions github-actions bot removed the w-ci Waiting on CI to pass label Mar 14, 2023
@awoie
Copy link
Contributor

awoie commented Mar 15, 2023

@Pandapip1 I believe walidator issues have been fixed. Please approve.

@obstropolos
Copy link
Contributor

Fix the walidator issues.

Noting completion here, thanks @chunningham / @skgbafa !

@skgbafa skgbafa requested a review from Pandapip1 March 16, 2023 18:00
@eth-bot eth-bot merged commit 6ce792f into ethereum:master Mar 17, 2023
axelcabee pushed a commit to axelcabee/EIPs that referenced this pull request May 6, 2023
)

* updates eip5573 to reflect changes in CACAO and UCAN specs (ethereum#7)

* updates eip5573 to reflect changes in CACAO and UCAN specs

* clearly define the meaning of lexicographic ordering

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* remove unnecessary comma

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* remove uri field from statement

* update recap-uri example

* clarify that recap uris go at the end of the resource list

* clarify comparison to OIDC/OAuth2

* specify how recap objects can be combined

* remove mention of namespace

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* better wording of recap purpose/niche

* specify b64 without padding

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* consistent spelling

* rename delegee -> Relying Party

* update example recap uri

* fix abstract wording a little bit

* use reference for b64url link

* fix references layout

* apply markdown linter

---------

Co-authored-by: Jacob <jacob.ward@spruceid.com>
Co-authored-by: Samuel Gbafa <skgbafa@gmail.com>

* change EIP to ERC, remove non-relative link (ethereum#8)

---------

Co-authored-by: chunningham <c.a.cunningham6@gmail.com>
Co-authored-by: Jacob <jacob.ward@spruceid.com>
GAEAlimited pushed a commit to GAEAlimited/EIPs that referenced this pull request Jun 19, 2024
)

* updates eip5573 to reflect changes in CACAO and UCAN specs (#7)

* updates eip5573 to reflect changes in CACAO and UCAN specs

* clearly define the meaning of lexicographic ordering

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* remove unnecessary comma

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* remove uri field from statement

* update recap-uri example

* clarify that recap uris go at the end of the resource list

* clarify comparison to OIDC/OAuth2

* specify how recap objects can be combined

* remove mention of namespace

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* better wording of recap purpose/niche

* specify b64 without padding

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* Update EIPS/eip-5573.md

Co-authored-by: Jacob <jacob.ward@spruceid.com>

* consistent spelling

* rename delegee -> Relying Party

* update example recap uri

* fix abstract wording a little bit

* use reference for b64url link

* fix references layout

* apply markdown linter

---------

Co-authored-by: Jacob <jacob.ward@spruceid.com>
Co-authored-by: Samuel Gbafa <skgbafa@gmail.com>

* change EIP to ERC, remove non-relative link (#8)

---------

Co-authored-by: chunningham <c.a.cunningham6@gmail.com>
Co-authored-by: Jacob <jacob.ward@spruceid.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c-update Modifies an existing proposal s-draft This EIP is a Draft t-erc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants