v0.3.6 - ADR-036 Protobuf Signing Support
Key Additions
-
ADR-036 Arbitrary Signing Support
- Implemented
MsgSignData-based signing aligned with ADR-036 - Added
experimentalAdr36SignandexperimentalAdr36Verifymethods - Supports verification of ADR-036 signatures for arbitrary data
- Uses standard signing context:
accountNumber=0,sequence=0,chainId=""
- Implemented
-
New Protobuf-Based Signing Client
- Introduced
SigningProtobufStargateClientfor Protobuf-native transaction signing - Directly utilizes types from
cosmjs-types - Improves integration with modern Cosmos SDK chains and signature tooling
- Introduced
Signing Architecture Refactor
- Refactored existing
SigningStargateClientto use Protobuf-based logic - Updated
FirmaUtilsigning utilities to support new Protobuf workflows - Introduced new interfaces in
TxCommon.tsfor structured Protobuf signing - Enhanced type safety across signing methods with clearer TypeScript contracts
- Improved error handling and input validation throughout the signing process
Integration Testing
- Fully tested against Firma Station Web and Firma Station Mobile
- ✅ Arbitrary data signing and verification (ADR-036)
- ✅ Transaction signing and broadcasting
- ✅ QR Code-based signing
- ✅ Signature verification workflows
- All features confirmed to work across supported platforms
What's Changed
- feat: Implement ADR-036 Protobuf signing and improve signing architecture by @thismars in #16
- Update package-lock.json & tsconfig.json by @thismars in #17
Full Changelog: v0.3.5...v0.3.6