Changelog
Sonr's testnet rails are configured
We recently deployed the Mars upgrade which reincorporates the Highway protocol with the Blockchain. The Highway protocol utilizes the latest web technologies to wrap around blockchain methods in order to allow clients to have a more streamlined experience in limited environments.
A New Decentralized Service Primitive
We are excited to announce the completion of our On-Chain Service Management feature, including a Service Record API that enables developers to seamlessly integrate their websites with Sonr Auth. This update brings added convenience and functionality to our platform. Here's a summary of the key enhancements:
- On-Chain Service Management: Our platform now supports on-chain service management, enabling developers to securely and efficiently manage their services through blockchain transactions.
- Service Record API: We have introduced a Service Record API that allows developers to easily integrate their websites with Sonr Auth, providing users with a more streamlined and secure authentication experience.
- Blockchain Transaction Methods: The new update includes blockchain transaction methods for managing service interactions, further leveraging the security and transparency of the decentralized ledger technology.
This update represents a significant step in our ongoing efforts to provide a secure, scalable, and user-friendly platform for decentralized identity and digital asset management. We remain committed to enhancing and expanding our offerings to better serve the needs of our users and developers.
DID Authentication Integrated with PassKeys
In this release, we have introduced a new mint mechanism that mints tokens only during successful MPC wallet generation events. This approach incentivizes validator nodes in the Sonr system to actively participate in account generation. Validators are required to generate a minimum of 20 accounts every 100 blocks to prevent their stake from being slashed. Clients requesting new account creation receive credential creation options from the public REST API for their service origin and claim preconfigured wallet addresses. Additionally, we have implemented numerous bug fixes and improvements to enhance the overall user experience and security of the Sonr platform. Read on to discover the complete list of updates.
Features
Multiple Algorithm Support
- Added support for multiple algorithms for registering credentials (credential.go, params.go)
- Added support for EdDSA algorithm (params.go)
New Endpoints and Functions
- Added a
GetOldestUnclaimed
andListAllUnclaimed
endpoint (did.go) - Added a
GetCredentialCreationOptions
function (record.go) - Added a
GetServiceAssertion
endpoint (routes.go)
Wallet and Identity Improvements
- Changed the parameters for
NewWebauthnCreationOptions
to include an alias instead of a UUID (params.go) - Added a
webAuthentication
struct (session.go) - Added an Assign function to the WalletClaims interface (claims.go)
- Added
AlsoKnownAs
field to DID document (claims.go)
Mint Mechanism and Coin Distribution
- Added a call to MintCoins in the EndBlock function of AppModule
Bug Fixes
Status Code and Error Message Updates
- Changed status code from 500 to 404 if unclaimed wallet is not found and added more information to the error message (service.go)
- Changed status code from 403 to 403 and added more information to the error message if attestion verification fails (service.go)
- Changed status code from 500 to 500 and added more information to the error message if controller creation fails (service.go)
- Changed status code from 500 to 500 and added more information to the error message if JWT creation fails (service.go)
Basic Token Utility Economics Merged
We are pleased to announce the completion of Client Storage Buckets implementation over IPFS and Highway Protocol. This update brings enhanced functionality and increased security to our platform. Here's a brief overview of the key features:
- Highway Protocol Integration: We have integrated the Highway Protocol, a peer-to-peer networking solution that facilitates secure, efficient, and reliable communication among nodes in the network.
- UCAN Spec Integration: The User Controlled Authorization Network (UCAN) specification has been integrated into our platform, allowing users to delegate control and access to their IPFS resources securely.
- DID Document-based Token Issuance: We have incorporated Decentralized Identifiers (DIDs) into our token issuance process, allowing for a more secure and streamlined management of user identities and their associated digital assets.
This update marks an important milestone in our ongoing commitment to provide a secure, scalable, and user-friendly platform for decentralized identity and digital asset management. We look forward to continuing to enhance and expand our offerings in the future.
UCAN ❤️ Sonr
The UCAN Specification by the Fission Labs team was a stunningly seamless integration within the Sonr DID Spec. Documents can Issue/Verify Claims and create Attestation/Origin Tokens - all while using JWKs as an authorization header for the Vault API endpoints. We plan to utilize the recent WebTransport implementation by the Libp2p team for the upcoming motor.js.
Bitcoin and Ethereum Signature Support
The final software upgrade for our DevNet chain has been deployed, and we're all in on transitioning to TestNet! This release builds on the "rebuilt from scratch" announced on January 17, 2023.
➡ Highlights
- IPFS Gateway and Resolver Deployed!
- UCAN Storage Encryption
- Tightened x/identity and Cosmos SDK Integration
- Standardized Type Definitions
- Cosmos Signature Authentication (Next Step IBC)
- ...and introducing ETHAccount, and BTCAccount interfaces!
➡ Generic Blockchain Accounts
There's little dispute that we will live in a Multi-Chain future. The Sonr MPC protocol offers a Decentralized Solution to the traditional onboarding mechanism in Web3, greatly alleviating user friction points. Our latest release has begun migrating our Account Interface to allow for custom transaction signing implementations. This includes the initial development of accounts for BitCoin and Ethereum.
So far, we have incorporated the following hashing functions:
- Keccak-256 (Ethereum)
- SHA-256 (Bitcoin)
- BLAKE-3 (Sonr Authentication)
What's Next?
The primary focus of our next upgrade (Venus) is to coordinate the launch of our Testnet to the general developer audience. We anticipate reaching this goal by the end of March - Early April. Outside of what's on our roadmap, we will be prioritizing these initiatives:
- IBC Integration and Cosmos Hub Testnet Interactions
- Interchain Account Support with DIDDocuments
- Rosetta Client Implementation for Generic Accounts
- Upgrade Motor API to support x/identity
Full Changelog
Improvements
- Build Account Abstraction for Network Fine-Tuning
- Interface cryptotypes.pubkey over Share Config
- Separate Vault, Auth Service for UCAN/MPC
- Use Bitswap for PubKey Varints Encoding
- Allow DID Service to operate as a Relaying party
- Create protocol implementation under x/identity
- Provide Server Context to underlying WebAuthn Service
- Use Blockchain Keeper State to Query Accounts
- Integrate Nebula Design System
- Implement API Playground for Core Cosmos Modules
- Inherit IPFS API and IPFS Node methods for Motor
Features
- Introduce OrbitDB for structured IPFS Storage
- Create Wallet Store Interface
- Add WalletConfig to DID Controller Interface
- IPFS NACL Secret Box Encryption
- Introduce OrbitDB for structured IPFS Storage
- Create Wallet Store Interface
- Add WalletConfig to DID Controller Interface
- IPFS NACL Secret Box Encryption
- Support UCAN Token Generation Over Account
- Implement x/identity PubKey MultiCodec
- Add Challenge and Authentication Methods
- Add Alias/Domain Registration Methods
- Enable Proposal Based Upgrades
Chores
- Add Method to return SignerData from AccountConfig.
- Create Enum Types for Common Token Denominations
- Build Conversion Ramp for Credentials
- Utilize CosmoVisor for Upgrades
- Backup Genesis File on Network Upgrades
- Migrate Generation to buf.gen.yaml
- Add Generation Script for Types
- Integrate Upgrade Module
- Merge Docs Repo with Blockchain Repo for Mint
- Transfer CI/CD Pipeline from GitHub Actions to Buddy.Works
Bug Fixes
- Publish IPFS Gateway to Sonr.Space API Endpoints
- Restrict IPFS HTTP API Access to Validator Nodes
- Publish the latest types to the registry on GitHub Actions Tag
Sonr's MPC Algorithm gets 180x more efficient
We are excited to announce the (soft launch) of our latest module for our Cosmos Blockchain. Sonr is a self-sovereign data platform that enables developers to build user-centric, privacy-preserving applications, all secured by a Cosmos-powered blockchain.
Sonr utilizes DID documents, Webauthn, IPFS, and multi-party computation, to provide a fully decentralized mechanism for identity and crypto asset management. This allows developers to create user-friendly and secure applications while ensuring users maintain control of their data and assets.
The x/identity module results from the culmination of multiple existing elements in the Sonr component stack. By leveraging the default P2P nature, we were able to optimize our "Decentralized-Wallet-As-A-Service" significantly.
- 180% Faster - *Execution Time dropped on all tests from roughly 40s to >2s (huge news!!)*
- 150M+ Encryption Parameters - Secure IPFS Storage
- Much better Web Support - Libp2p over gRPC, HTTP, and WebTransport
Features
- Implement x/Identity Module Query Methods
- Implement x/Identity Keeper gRPC Message Service
- Support CGGMP Algorithm
- Build Host Interface for MPC Online Network
- Create Motor Interface for Interacting with Remote P2P Peer
- Design and Implement Next.js Login/Register Panel for WebAuthn
- Design and Implement Flutter Dashboard View for Account Management
- Integrate Libp2p JS to Interact with Vault Methods over gRPC
- Enable Pubsub and IPLD on Highway Node
- Build Offline Implementation of Point Network for MPC
Improvements
- Add Docs API Playground for Core Cosmos Modules
- Inherit IPFS API and IPFS Shell methods for Motor
- Utilize Kubo as Library for Sonr Highway Protocol
- Integrate Libp2p Pubsub for Broadcast Communication
- Build gRPC Server with Libp2p Host for Vault System
- Utilize GPT-3 for Generating Docs Glossary Terms
- Create Vercel Serverless Functions to Store Docs
- Enable Namespaced Routing Discovery for All Nodes
Chores
- Utilize CosmoVisor for Upgrades
- Merge Docs Repo with Blockchain Repo for Mint
- Remove Deprecated Protocols
- Remove Pseudo Network Interface
- Upgrade Module to v0.46.x
- Remove Isolated Process Generation
- Build Protocol Initialization Sequence
- Migrate Node Interface to Utilize IPFS CoreAPI for Embedded Node
- Add x/Identity API Playground to Docs
- Add Ecosystem to Links in Docs
- Deploy Private IPFS Cluster
Bug fixes
- Fix DID Document Resolution Tests
- Fix DID Specific Query Methods
- Transfer CI/CD Pipeline from GitHub Actions to Buddy.Works
- Remove Deprecated Modules
- Remove IPFS Shell Reference for Add/Get with Node