Spruce Developer Update #22
At Spruce, we’re letting users control their identity and data across the web. Every month, we release a developer update detailing our progress on our open source libraries and beyond. Check out our previous update here:
Here’s the latest from our development efforts:
Sign-In with Ethereum
Sign-In with Ethereum is a new form of authentication that enables users to control their digital identity with their Ethereum account and ENS profile instead of relying on a traditional intermediary.
- We've released v2.0.5 of our Sign-In with Ethereum TypeScript library which includes checks for code smells and backwards compatibility with legacy versions of the library in order to make the switch even easier. Using
validate()
will now throw a warning, prompting developers to make the upgrade fromvalidate
toverify
. - We've specified and implemented capgrok, or wallet-signable messages with capability delegations that are human- and machine-readable based on Sign-In with Ethereum. There will be an accompanying EIP related to this work drafted soon.
- We've finished work with a major wallet on a direct Sign-In with Ethereum integration, which should be announced soon. Additionally, we're finalizing work on how users can Sign-In with Ethereum on behalf of multisig wallets.
- Most of our efforts are currently focused on a product that will make working with Sign-In with Ethereum even easier for developers. Additionally, this initiative will also include enhancements to existing applications, and additional information on user interactions. Interested in testing this out early? Get in touch!
Kepler
Kepler is a decentralized storage network organized around data overlays called Orbits. Kepler allows users to Securely share their digital credentials, private files, and sensitive media to blockchain accounts, all using your Web3 wallet.
- Adopted the capgrok Sign-In with Ethereum message format for capability delegation in backend (kepler #124)
- Adopted the message format for capability delegation in the frontend-sdk (kepler-sdk #45)
SpruceID
SpruceID is a decentralized identity toolkit that provides everything you need for signing, sharing, and verifying trusted information.
We've updated our SpruceID documentation - check it out here:
DIDKit
- Our initial implementation of CacaoDelegationHolderBinding2022 is underway, with Sign-In with Ethereum, CACAOs, and capgrok.
- We've updated our usage of UCANs in our
ssi
library (ssi#455). - We're currently restructuring our
ssi
library to make it even easier for developers to import and use (ssi #457).
Rebase
- We've added a Rust-based SDK for constructing server-side witnesses for the issuance of VCs, and clients to interact with the witnesses. Additionally, we added a WASM-based SDK, wrapping around the new Rust SDK, for in-browser versions of these clients (Rebase #25).
- We've now published the WASM client to NPM.
- We've added simple documentation and updated the example code for our Rebase repository (Rebase #27).
Spruce lets users control their data across the web. Spruce provides an ecosystem of open source tools for developers that let users collect their data in one place they control, and show their cards however they want.
If you're curious about integrating Spruce's technology into your project, come chat with us in our Discord: