Michael Muré cc1d68be0c deps: downgrade libp2p
We only use go-libp2p for the crypto wrappers (github.com/libp2p/go-libp2p/core/crypto), and those have not changed in a while.

We don't need the most recent version of go-libp2p. On the other hand, a too recent version can easily mess with project that aim for an older version of libp2p (often transitively). This PR gives some leeway for version resolution.
2025-02-27 14:28:23 +01:00
2024-11-12 16:58:17 +01:00
2025-01-13 13:30:03 +01:00
2025-02-27 14:28:23 +01:00
2025-02-27 14:28:23 +01:00
2024-10-24 14:46:01 +02:00

This is a go library to help the next generation of web and decentralized applications make use of UCANs in their authorization flows.

User Controlled Authorization Networks (UCANs) are a way of doing authorization where users are fully in control. OAuth is designed for a centralized world, UCAN is the distributed user controlled version.

Resources

Specifications

The UCAN specification is separated in multiple sub-spec:

Not implemented yet:

Talks

Status

go-ucan currently support the required parts of the UCAN specification: the main specification, delegation and invocation.

Besides that, go-ucan also includes:

  • a simplified DID and did-key implementation
  • a token container with CBOR and CAR format, to package and carry tokens together, see SPEC
  • support for encrypted values in token's metadata

Getting Help

For usage questions, usecases, or issues reach out to us in our go-ucan Discord channel.

We would be happy to try to answer your question or try opening a new issue on Github.

UCAN Gopher

Artwork by Bruno Monts. Thank you Renee French for creating the Go Gopher

License

This project is licensed under the double license Apache 2.0 + MIT.

Description
User-Controlled Authorization Network (UCAN) tokens in go
Readme 2 MiB
Languages
Go 100%