feat: add Cosmos proof type and metadata interface
Change description
This MR adds support for Cosmos blockchain ownership proofs by introducing a new CosmosMetadata
interface and updating the SignatureProof
interface to include the COSMOS
proof type. This enhancement enables users to prove ownership of Cosmos addresses using cryptographic signatures, expanding the SDK's blockchain support beyond existing networks like Ethereum, Bitcoin, Solana, and others.
The changes include:
-
New
CosmosMetadata
interface: Defines the structure for Cosmos-specific proof metadata containing public key information and signature data -
Updated
ProofTypes
enum: AddedCOSMOS = 'cosmos-ecdsa'
to the supported proof types -
Enhanced
SignatureProof
interface: Extended the type union to includeProofTypes.COSMOS
, allowing Cosmos signatures to be used for ownership verification
This addition maintains consistency with existing proof types and follows the established patterns for blockchain-specific metadata structures.
Type of change
-
New feature (adds functionality) -
Bug fix (fixes an issue) -
Chore (task that not add a new functionality or fix an issue)
Related issues
https://linear.app/notabene/issue/PAY-480/support-for-cosmos-signature-proofs
Checklists
Development
-
Lint rules pass locally -
Application changes have been tested thoroughly -
Docker Image was build correctly
Security
-
Security impact of change has been considered -
Code follows company security practices and guidelines
Network
-
Changes to network configurations have been reviewed -
Any newly exposed public endpoints or data have gone through security review
Code review
-
Merge request has a descriptive title and context useful to a reviewer. Screenshots or screencasts are attached as necessary -
"Ready for review" label attached and reviewers assigned -
Changes have been reviewed by at least one other contributor
Edited by Isaac Onuwa