Spruce Developer Update #18

At Spruce, we’re letting users control their identity and data across the web. 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 recently posted a SIWE-specific March recap that can be found here:

Sign-In with Ethereum Digest - March
Sign-In with Ethereum offers a new self-custodial authentication option for users who wish to assume more control and responsibility over their own digital identity.

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 a Web3 wallet.

  • Work is underway on the Kepler capabilities subsystem, which will provide a storage layer and indexer for authorization material, enabling the invocation of stored delegations, the consistent replication of auth material, and the auditability of delegation and access.
  • Work is underway to add remote storage (S3 for now, but any other can be added in the future) to Kepler, focusing on the block store (raw user files) (kepler#96).
  • Orbits now follow the DID model, which is reflected by a change in their URIs, and the manifests (orbit metadata) are now the result of a DID resolution (kepler#83).
  • Kepler SDK improvements, making the dev experience seamless by simplifying the API, and hiding DIDs and ZCAPs (kepler-sdk#35).
  • Additions to cryptoscript: new static type system with schemas to fetch external data for validation (cryptoscript#2).
  • Resolved an issue in Kepler where Orbits were not fully dropped when the cache aged them out (kepler#97).

SpruceID

SpruceID is a decentralized identity toolkit that provides everything you need for signing, sharing, and verifying trusted information.

DIDKit

  • Enable external signing of verifiable presentations in DIDKit-WASM (ssi#406, didkit#274).
  • Reference Security Review by Trail of Bits (ssi#408, didkit#280).
  • Add conversion function for verifiable credential DateTime type (ssi#415 - Thanks vdods!)
  • Enable more error variants (ssi#410).
  • Increase strictness of credential subject type (ssi#409).
  • Expose URI string conversion function (ssi#417).
  • Address compiler warnings and style issues (ssi#418).
  • Update to use EcdsaSecp256k1RecoveryMethod2020 v2 context (ssi#414).
  • (testing) Create a single fat WASM package that can be used in node or with a bundler (didkit#208)

Standards and Community

  • Submitted Koblitz ECDSA Recovery Cryptosuite (EcdsaSecp256k1RecoverySignature2020) for mentioning in VCWG charter (vc-wg-charter#105).

Spruce lets users control their data across the web. If you're curious about integrating Spruce's technology into your project, come chat with us in our Discord: