feat: migrate to blume docs

This commit is contained in:
Prad Nukala
2026-09-02 16:53:38 -04:00
parent b1a622ea13
commit 432ef49207
163 changed files with 2327 additions and 9908 deletions
+1
View File
@@ -123,3 +123,4 @@ tmp-openapi-gen/**/*.json
.mcp.json .mcp.json
node_modules node_modules
.claude .claude
.blume/
-580
View File
@@ -1,580 +0,0 @@
---
title: Version History
sidebarTitle: Changelog
description: All notable changes to the Sonr blockchain
icon: "hourglass"
---
<Update label="2025-09-04" description="v0.13.3" tags={["DevOps", "Infrastructure", "Docker"]}>
Consolidate deployment infrastructure with Docker Compose and enhance build targets (#248)
- Unified backend services configuration (Highway, Redis, Caddy, IPFS, snrd)
- Implemented multi-stage Dockerfile build targets
- Enhanced Makefile with Docker management targets
- Introduced health check and readiness probe system
</Update>
<Update label="2025-09-04" description="v0.13.2" tags={["Authentication", "WebAuthn", "OIDC"]}>
Implement OpenID Connect provider with WebAuthn in bridge handlers (#244)
- Full WebAuthn passwordless authentication integration
- Implemented Self-Issued OpenID Provider (SIOP) v2
- Blockchain-based WebAuthn credential broadcasting
- Supports Authorization Code Flow with PKCE
</Update>
<Update label="2025-09-03" description="v0.13.0" tags={["Cryptography", "Security", "Testing"]}>
Fix cryptographic implementations and enable disabled tests (#243)
- Fixed and re-enabled previously disabled cryptographic tests
- Enhanced security validation for cryptographic modules
- Improved test coverage for core security components
</Update>
---
<Update label="2025-09-03" description="v0.12.11" tags={["WebAuthn", "Authentication"]}>
WebAuthn attestation and verification improvements (#242)
- Enhanced attestation verification logic
- Improved security checks for authentication ceremonies
- Refined credential validation mechanisms
</Update>
<Update label="2025-09-03" description="v0.12.10" tags={["Services", "Module", "Configuration"]}>
Implement Service module capability system and parameters (#241)
- Introduced comprehensive capability management for services
- Added robust parameter validation for service configurations
- Enhanced service module flexibility and security
</Update>
<Update label="2025-09-03" description="v0.12.9" tags={["DID", "WebAuthn"]}>
Complete DID module WebAuthn and parameter implementation (#240)
- Full W3C WebAuthn Level 2 compliance with passwordless authentication
- Implemented CBOR-based attestation parsing
- Multi-algorithm signature verification (ES256, RS256, EdDSA)
- Added 9 new DID module parameters with validation
</Update>
<Update label="2025-09-03" description="v0.12.8" tags={["DWN", "Security", "IPFS"]}>
Introduce key rotation events and IPFS status endpoint (#238)
- Vault key rotation with Motor plugin integration
- Consensus-based encryption using validator set
- HMAC-SHA256 validation for data integrity
- IPFS status query endpoint with health metrics
</Update>
<Update label="2025-09-02" description="v0.12.7" tags={["Module Configuration"]}>
Implement module parameter validation and defaults (#237)
- Comprehensive parameter validation for DID and SVC modules
- Default parameters with FIDO2-compliant WebAuthn settings
- Enhanced parameter validation for service limits and timeouts
</Update>
<Update label="2025-08-30" description="v0.12.6" tags={["Events", "Modules"]}>
Complete remaining event emissions for DID and DWN modules (#235)
- Implemented typed Protobuf events for all state-changing operations
- Added detailed event types with enhanced observability
- Updated event emission patterns to follow Cosmos SDK v0.50.14 best practices
</Update>
<Update label="2025-08-27" description="v0.12.5" tags={["Events", "Protobuf"]}>
Implement typed Protobuf events for x/did, x/dwn, and x/svc modules (#233)
- Typed events following Cosmos SDK's ADR-032 pattern
- Event-driven application support with CometBFT websockets
- Backward compatibility maintained with legacy events
</Update>
<Update label="2025-08-24" description="v0.12.4" tags={["IBC", "DEX"]}>
Integrate Interchain Accounts for cross-chain DEX functionality
- Enhanced cross-chain interoperability for trading
- IBC integration for decentralized exchange operations
</Update>
<Update label="2025-08-24" description="v0.12.3" tags={["ICA", "DEX"]}>
Implement ICA Controller system in x/dex module for cross-chain DEX operations (#221)
- Full Interchain Account Controller implementation
- Cross-chain DEX trading capability
- Enhanced IBC protocol support
</Update>
<Update label="2025-08-20" description="v0.12.1" tags={["Testing", "Starship"]}>
Replace InterchainTest with Starship-based E2E testing framework (#217)
- Modern testing infrastructure with Starship
- Improved E2E test reliability and speed
- Better multi-chain testing support
</Update>
<Update label="2025-08-18" description="v0.12.0" tags={["Cryptography", "JWK"]}>
Add support for additional elliptic curves and JWK verification (#216)
- Extended elliptic curve support beyond secp256k1
- JSON Web Key (JWK) verification implementation
- Enhanced cryptographic flexibility
</Update>
---
<Update label="2025-08-18" description="v0.11.4" tags={["WebAuthn", "FIDO2"]}>
Complete WebAuthn/FIDO2 implementation for passwordless authentication (#215)
- Full FIDO2 compliance with passwordless authentication
- Hardware security key support
- Biometric authentication integration
</Update>
<Update label="2025-08-17" description="v0.11.3" tags={["DID", "W3C"]}>
Complete DID keeper implementation with W3C compliance and WebAuthn authentication (#214)
- Full W3C DID specification compliance
- WebAuthn integration for DID authentication
- Enhanced identity management capabilities
</Update>
<Update label="2025-08-16" description="v0.11.2" tags={["UI", "Monorepo"]}>
Transform UI package to shadcn monorepo architecture for uniform styling (#213)
- Migrated to shadcn component architecture
- Consistent design system across applications
- Improved component reusability
</Update>
<Update label="2025-08-15" description="v0.11.1" tags={["Security", "Memory"]}>
Improve secure memory handling for enhanced security (#201)
- Zero-memory clearing for sensitive data
- Protected memory allocation for cryptographic operations
- Enhanced key material security
</Update>
<Update label="2025-08-15" description="v0.11.0" tags={["Cryptography", "Security"]}>
Implement comprehensive cryptographic security enhancements (#200)
- Major cryptographic subsystem overhaul
- Enhanced encryption algorithms
- Improved key management system
</Update>
---
<Update label="2025-08-15" description="v0.10.34" tags={["CLI", "Wallet"]}>
Implement CLI commands for wallet module (#198)
- Comprehensive wallet management via CLI
- Transaction signing and broadcasting commands
- Key management operations
</Update>
<Update label="2025-08-14" description="v0.10.33" tags={["UCAN", "Wallet"]}>
Implement UCAN permission validation for wallet transactions (#197)
- User-Controlled Authorization Networks integration
- Permission-based transaction validation
- Enhanced wallet security model
</Update>
<Update label="2025-08-14" description="v0.10.32" tags={["SDK", "Go"]}>
Implement Go client SDK with transaction signing and broadcasting (#196)
- Complete Go SDK for chain interaction
- Transaction building and signing utilities
- gRPC and REST endpoint support
</Update>
<Update label="2025-08-13" description="v0.10.31" tags={["Docker", "Testnet"]}>
Enable Docker-based testnet execution
- Simplified testnet deployment via Docker
- Containerized node operation
- Quick local testing environment
</Update>
<Update label="2025-08-13" description="v0.10.28" tags={["Monorepo", "pnpm"]}>
Implement monorepo structure with pnpm workspaces and changesets (#189)
- Modern monorepo architecture
- pnpm workspace management
- Automated versioning with changesets
</Update>
<Update label="2025-08-12" description="v0.10.27" tags={["WebAuthn", "Gasless"]}>
Implement WebAuthn gasless transactions with comprehensive protocol integration (#186)
- Gasless onboarding for new users
- WebAuthn-based transaction signing
- Eliminated token requirement for registration
</Update>
<Update label="2025-08-11" description="v0.10.25" tags={["WebAuthn", "Security"]}>
Implement gasless WebAuthn registration with comprehensive security audit (#182)
- Security-audited gasless registration flow
- Anti-abuse mechanisms
- Credential uniqueness enforcement
</Update>
<Update label="2025-08-09" description="v0.10.24" tags={["DWN", "Encryption"]}>
Implement consensus-based encryption for DWN module (#181)
- Validator-based encryption keys
- Consensus-driven key management
- Enhanced data privacy
</Update>
<Update label="2025-08-09" description="v0.10.23" tags={["VRF", "Context"]}>
Enhance init command with VRF keypair generation and SonrContext system (#180)
- Verifiable Random Function integration
- SonrContext for session management
- Enhanced initialization process
</Update>
<Update label="2025-08-09" description="v0.10.22" tags={["Testing", "Refactor"]}>
Move interchain tests to dedicated location (#178)
- Improved test organization
- Separated integration tests
- Better test maintainability
</Update>
<Update label="2025-08-08" description="v0.10.20" tags={["Motor", "WASM", "MPC"]}>
Refactor Motor WASM plugin as MPC-based UCAN source (#177)
- Multi-party computation integration
- WASM-based secure execution
- UCAN capability management
</Update>
<Update label="2025-08-08" description="v0.10.19" tags={["Documentation", "UCAN"]}>
Migrate documentation to Mintlify structure (#172) and migrate x/ucan module to internal library (#174)
- Documentation platform migration
- UCAN module refactoring
- Improved code organization
</Update>
<Update label="2025-08-06" description="v0.10.17" tags={["WebAuthn", "CLI"]}>
Implement WebAuthn CLI registration with gasless transactions (#168)
- CLI-based WebAuthn registration
- Browser integration for credential creation
- Gasless onboarding flow
</Update>
<Update label="2025-08-06" description="v0.10.16" tags={["DWN", "Security"]}>
Implement auto-create DWN vault with comprehensive security improvements (#161)
- Automatic vault provisioning
- Enhanced security measures
- Improved user onboarding
</Update>
<Update label="2025-08-05" description="v0.10.15" tags={["Highway", "WebSocket"]}>
Migrate Highway service to Echo framework with WebSocket/SSE and JWT auth (#159)
- Echo framework migration
- Real-time WebSocket support
- JWT authentication system
</Update>
<Update label="2025-08-05" description="v0.10.14" tags={["Highway", "Asynq"]}>
Complete Highway proxy server implementation with asynq and proto.Actor (#157)
- Asynq task queue integration
- Actor-based concurrency model
- Improved task processing
</Update>
<Update label="2025-08-05" description="v0.10.13" tags={["DWN", "Gasless"]}>
Refactor x/dwn vaults and introduce gasless transactions (#154)
- Vault system refactoring
- Gasless transaction support
- Enhanced user experience
</Update>
<Update label="2025-08-03" description="v0.10.12" tags={["Monorepo", "CI/CD"]}>
Monorepo restructure with internal packages and enhanced CI/CD (#151)
- Internal package architecture
- CI/CD pipeline improvements
- Better code organization
</Update>
<Update label="2025-08-02" description="v0.10.9" tags={["Testnet", "Infrastructure"]}>
Enhance testnet configuration with faucet and explorer settings (#145)
- Testnet faucet integration
- Block explorer configuration
- Improved developer experience
</Update>
<Update label="2025-08-01" description="v0.10.8" tags={["Deployment", "Infrastructure"]}>
Optimize deployment workflows and update infrastructure configuration (#141)
- Streamlined deployment process
- Infrastructure updates
- Performance optimizations
</Update>
<Update label="2025-08-01" description="v0.10.6" tags={["Starship", "Network"]}>
Introduce Starship network configurations for devnet and testnet (#139)
- Starship integration for local development
- Multi-network configuration support
- Simplified network management
</Update>
<Update label="2025-07-31" description="v0.10.3" tags={["Docker", "Build"]}>
Streamline Docker build for enhanced efficiency (#136)
- Optimized Docker build process
- Reduced image sizes
- Faster build times
</Update>
<Update label="2025-07-31" description="v0.10.2" tags={["Starship", "Development"]}>
Streamline starship configuration and local development (#135)
- Simplified Starship setup
- Enhanced local development workflow
- Better developer experience
</Update>
<Update label="2025-07-31" description="v0.10.1" tags={["CI/CD", "Wallet", "EVM"]}>
Major infrastructure and wallet improvements (#134, #131, #128, #127)
- Optimized CI/CD workflows with smart testing
- Fee grant integration with BasicAllowance
- EVM transaction support in wallet module
- External wallet linking as DID assertion methods
</Update>
<Update label="2025-07-21" description="v0.10.0" tags={["Security", "WASM"]}>
Implement secure key management with WASM enclaves (#126)
- WASM-based secure enclaves
- Hardware-level key protection
- Enhanced cryptographic isolation
</Update>
---
<Update label="2025-07-21" description="v0.9.22" tags={["Vault", "IPFS"]}>
Implement vault export/import with IPFS encryption (#125)
- IPFS-based vault backup
- Encrypted vault exports
- Decentralized storage integration
</Update>
<Update label="2025-07-20" description="v0.9.20" tags={["Transactions", "Release"]}>
Add transaction building framework and streamline release process (#123)
- Comprehensive transaction builder
- Automated release pipeline
- Improved developer tools
</Update>
<Update label="2025-07-20" description="v0.9.19" tags={["Testing", "CI"]}>
Add cross-module keeper integration tests and optimize CI performance (#122)
- Cross-module testing framework
- CI pipeline optimization
- Better test coverage
</Update>
<Update label="2025-07-20" description="v0.9.18" tags={["Service", "UCAN"]}>
Improve service validation and UCAN integration (#121)
- Enhanced service validation logic
- UCAN capability improvements
- Better error handling
</Update>
<Update label="2025-07-20" description="v0.9.17" tags={["DWN", "Service"]}>
Implement ServiceKeeper interface for x/dwn module (#120)
- Service abstraction layer
- Improved module interactions
- Enhanced modularity
</Update>
<Update label="2025-07-20" description="v0.9.16" tags={["DWN", "UCAN"]}>
Implement UCANKeeper interface for x/dwn module (#119)
- UCAN integration for DWN
- Capability-based permissions
- Enhanced authorization
</Update>
<Update label="2025-07-18" description="v0.9.15" tags={["Service", "UCAN"]}>
Implement UCANKeeper interface for x/svc module (#117)
- Service module UCAN support
- Permission management
- Improved security model
</Update>
<Update label="2025-07-18" description="v0.9.14" tags={["Service", "DID"]}>
Implement DIDKeeper interface for x/svc module (#116)
- DID integration for services
- Identity-based service management
- Enhanced authentication
</Update>
<Update label="2025-07-18" description="v0.9.11" tags={["Service", "Keeper"]}>
Implement ServiceKeeper interface methods in x/svc keeper (#113)
- Complete service keeper implementation
- Core service functionality
- Module integration
</Update>
<Update label="2025-07-18" description="v0.9.10" tags={["UCAN", "Error Handling"]}>
Implement UCANKeeper interface methods and centralize error handling (#112)
- UCAN keeper implementation
- Centralized error management
- Improved code maintainability
</Update>
<Update label="2025-07-18" description="v0.9.9" tags={["DID", "Signatures"]}>
Implement VerifyDIDDocumentSignature method with multi-algorithm support (#111)
- Multi-algorithm signature verification
- Ed25519, ECDSA, RSA support
- Enhanced DID security
</Update>
<Update label="2025-07-18" description="v0.9.8" tags={["Wallet", "Architecture"]}>
Implement wallet derivation and keeper interface architecture (#110)
- HD wallet derivation
- Keeper interface design
- Improved wallet architecture
</Update>
<Update label="2025-07-16" description="v0.9.6" tags={["Vault", "Interface"]}>
Introduce VaultKeeper interface for enhanced modularity (#99)
- Vault abstraction layer
- Improved code organization
- Better testability
</Update>
<Update label="2025-07-15" description="v0.9.5" tags={["DWN", "Vault"]}>
Enable DWN vault spawning via query API and add comprehensive tests (#98)
- Query-based vault creation
- Comprehensive test suite
- API improvements
</Update>
<Update label="2025-07-14" description="v0.9.4" tags={["Testnet", "DAO"]}>
Update testnet configuration for DAO governance (#84)
- DAO governance integration
- Testnet parameter updates
- Governance readiness
</Update>
<Update label="2025-07-09" description="v0.9.3" tags={["Vault", "Actor"]}>
Centralize vault actor system and optimize plugin management (#83)
- Actor system centralization
- Plugin optimization
- Performance improvements
</Update>
<Update label="2025-07-06" description="v0.9.0" tags={["DWN", "WASM"]}>
Refactor x/dwn module structure and integrate WebAssembly motor client (#81)
- Major DWN module refactoring
- WASM motor client integration
- Enhanced documentation
</Update>
---
<Update label="2025-07-05" description="v0.8.12" tags={["Analytics", "Documentation"]}>
Implement Rybbit analytics and update documentation site styling (#80)
- Analytics integration
- Documentation improvements
- Better user insights
</Update>
<Update label="2025-07-04" description="v0.8.11" tags={["UI", "Migration"]}>
Complete shadcn/TemplUI migration from NebulaUI (#79)
- UI library migration
- Modern component system
- Improved styling
</Update>
<Update label="2025-07-02" description="v0.8.2" tags={["Documentation", "Branding"]}>
Enhanced documentation landing page with custom branding (#69)
- Custom branding implementation
- Improved documentation UI
- Better user experience
</Update>
<Update label="2025-07-02" description="v0.8.0" tags={["Quality", "Linting"]}>
Integrate Trunk.io for code quality and linting (#65)
- Trunk.io integration
- Automated code quality checks
- Enhanced linting rules
</Update>
---
<Update label="2025-07-01" description="v0.7.0" tags={["DWN", "DIF"]}>
Implement DWN module with enclave signing and DIF specification (#64)
- Decentralized Web Node implementation
- DIF specification compliance
- Enclave-based signing
</Update>
---
<Update label="2025-07-01" description="v0.6.1" tags={["Protobuf", "Client"]}>
ES-client protobuf generation (#63)
- JavaScript client protobuf support
- Improved client SDK
- Better developer tools
</Update>
<Update label="2025-07-01" description="v0.6.0" tags={["API", "Documentation"]}>
Automated API Reference Generation for Cosmos Modules and Highway REST Service (#62)
- Automated API documentation
- REST service documentation
- Improved developer resources
</Update>
---
<Update label="2025-06-30" description="v0.5.1" tags={["TUI", "Dashboard"]}>
Enhance TUI Dashboard with real-time data visualization and testnet support (#59)
- Real-time data visualization
- Testnet dashboard support
- Enhanced monitoring
</Update>
<Update label="2025-06-30" description="v0.5.0" tags={["UCAN", "Handlers"]}>
Implement x/ucan msgServer handlers with capability templates (#55)
- UCAN message handlers
- Capability templates
- Authorization framework
</Update>
---
<Update label="2025-06-30" description="v0.4.1" tags={["UI", "Components"]}>
Integrate Nebula UI Component Library (#54)
- UI component library integration
- Reusable components
- Design consistency
</Update>
<Update label="2025-06-29" description="v0.4.0" tags={["DID", "WebAuthn", "Testing"]}>
W3C DID Controller with WebAuthn support and comprehensive testing improvements (#52)
- W3C DID controller implementation
- WebAuthn authentication
- Enhanced test coverage
</Update>
---
<Update label="2025-06-29" description="v0.3.0" tags={["UCAN", "Migration"]}>
Migrate UCAN capability definitions to x/ucan module (#49)
- UCAN module creation
- Capability migration
- Improved architecture
</Update>
---
<Update label="2025-06-28" description="v0.2.0" tags={["DNS", "UCAN"]}>
Implement DNS record verification with UCAN delegation for x/svc (#41)
- DNS verification system
- UCAN-based delegation
- Service authentication
</Update>
---
<Update label="2025-06-28" description="v0.1.0" tags={["Highway", "API"]}>
Implement Highway Service API Handlers (#39)
- Highway service implementation
- API handler creation
- Core service functionality
</Update>
<Update label="2025-06-26" description="v0.0.23" tags={["IPFS", "CI/CD", "Documentation"]}>
Major infrastructure and documentation improvements (#38, #37, #36)
- IPFS private network support
- Enhanced CI/CD workflows
- Comprehensive tokenomics documentation
- Client integration guide
- Research section with whitepapers
</Update>
<Update label="2025-06-22" description="v0.0.1" tags={["Initial", "Core"]}>
Initial release with core blockchain features
- Automated version bumping and changelog generation
- Highway service for enhanced authentication
- Database migration using goose
- CosmWasm VM for smart contracts
- IPFS Kubo v0.35.0 integration
- Decentralized web node runtime with WASM enclave
- Complete database schema for core entities
</Update>
-366
View File
@@ -1,366 +0,0 @@
{
"$schema": "https://mintlify.com/docs.json",
"theme": "maple",
"name": "Sonr Docs",
"logo": {
"light": "https://cdn.sonr.io/logos/docs/logo.svg",
"dark": "https://cdn.sonr.io/logos/docs/logo-dark.svg"
},
"favicon": "https://cdn.sonr.io/favicon.ico",
"colors": {
"primary": "#17c2FF",
"light": "#17c2FF",
"dark": "#279cff"
},
"icons": {
"library": "lucide"
},
"navigation": {
"dropdowns": [
{
"dropdown": "Documentation",
"description": "Sonr Fundamentals",
"icon": "lightbulb",
"pages": [
{
"group": "Getting Started",
"icon": "rocket",
"pages": [
"index",
"reference/install",
"changelog",
"faq"
]
},
{
"group": "Learn Concepts",
"icon": "lightbulb",
"pages": [
{
"group": "Sonr Blockchain",
"icon": "combine",
"pages": ["concepts/sonr", "modules/did/index", "modules/dwn/index", "modules/svc/index", "modules/dex/index"]
},
{
"group": "Gateway Services",
"icon": "radio-tower",
"pages": [
"concepts/hway",
"concepts/gasless-onboarding",
"concepts/webauthn-integration"
]
},
{
"group": "Light Clients",
"icon": "plug",
"pages": [
"concepts/motr",
"concepts/decentralized-auth",
"concepts/identity-generation",
"concepts/dwn-architecture"
]
},
{
"group": "Token Economics",
"icon": "coins",
"pages": [
"concepts/token",
"economics/values",
"economics/utility",
"economics/staking",
"economics/rewards",
"economics/governance",
"economics/distribution"
]
}
]
},
{
"group": "Build Apps",
"icon": "hammer",
"pages": [
{
"group": "Client SDKs",
"icon": "code",
"pages": [
"quickstart/react",
"quickstart/browser",
"quickstart/golang"
]
},
{
"group": "Service Management",
"icon": "globe",
"pages": [
"guides/register-records",
"guides/authorize-clients",
"guides/broadcast-transactions",
"guides/issue-payments",
"guides/establish-connection"
]
}
]
},
{
"group": "Validator Guides",
"icon": "shield-check",
"pages": [
"guides/onboarding",
"guides/development",
"guides/deployment",
{
"group": "Security Report",
"icon": "shield",
"pages": [
"reference/security/audit-report",
"reference/security/compliance",
"reference/security/cryptography",
"reference/security/vulnerabilities"
]
}
]
},
{
"group": "Next Steps",
"icon": "play",
"pages": []
}
]
},
{
"dropdown": "Reference",
"description": "API Reference",
"icon": "code",
"pages": [
{
"group": "CLI Commands",
"icon": "terminal",
"root": "cli-commands",
"pages": [
"reference/commands/snrd",
"reference/commands/snrd_auth",
"reference/commands/snrd_auth_register",
"reference/commands/snrd_genesis",
"reference/commands/snrd_genesis_add-genesis-account",
"reference/commands/snrd_genesis_collect-gentxs",
"reference/commands/snrd_genesis_export",
"reference/commands/snrd_genesis_gentx",
"reference/commands/snrd_genesis_init",
"reference/commands/snrd_genesis_migrate",
"reference/commands/snrd_genesis_validate",
"reference/commands/snrd_help",
"reference/commands/snrd_init",
"reference/commands/snrd_keys",
"reference/commands/snrd_keys_add",
"reference/commands/snrd_keys_delete",
"reference/commands/snrd_keys_export",
"reference/commands/snrd_keys_import",
"reference/commands/snrd_keys_list",
"reference/commands/snrd_keys_migrate",
"reference/commands/snrd_keys_parse",
"reference/commands/snrd_keys_show",
"reference/commands/snrd_migrate",
"reference/commands/snrd_node",
"reference/commands/snrd_prune",
"reference/commands/snrd_query",
"reference/commands/snrd_query_account",
"reference/commands/snrd_query_accounts",
"reference/commands/snrd_query_auth",
"reference/commands/snrd_query_bank",
"reference/commands/snrd_query_consensus",
"reference/commands/snrd_query_delegation",
"reference/commands/snrd_query_did",
"reference/commands/snrd_query_distribution",
"reference/commands/snrd_query_dwn",
"reference/commands/snrd_query_feegrant",
"reference/commands/snrd_query_gov",
"reference/commands/snrd_query_slashing",
"reference/commands/snrd_query_staking",
"reference/commands/snrd_query_svc",
"reference/commands/snrd_query_tendermint",
"reference/commands/snrd_query_tx",
"reference/commands/snrd_rollback",
"reference/commands/snrd_status",
"reference/commands/snrd_tendermint",
"reference/commands/snrd_tx",
"reference/commands/snrd_tx_bank",
"reference/commands/snrd_tx_consensus",
"reference/commands/snrd_tx_crisis",
"reference/commands/snrd_tx_did",
"reference/commands/snrd_tx_distribution",
"reference/commands/snrd_tx_dwn",
"reference/commands/snrd_tx_feegrant",
"reference/commands/snrd_tx_gov",
"reference/commands/snrd_tx_slashing",
"reference/commands/snrd_tx_staking",
"reference/commands/snrd_tx_svc",
"reference/commands/snrd_version"
]
},
{
"group": "Decentralized Exchange",
"icon": "arrow-right-left",
"tag": "x/dex",
"pages": [
{
"group": "HTTP Endpoints",
"tag": "Query",
"icon": "rss",
"pages": [
"api-reference/dex/get-dex-account",
"api-reference/dex/get-module-parameters",
"api-reference/dex/get-pool-information",
"api-reference/dex/get-remote-chain-balance",
"api-reference/dex/get-transaction-history",
"api-reference/dex/list-all-dex-accounts",
"api-reference/dex/list-orders"
]
},
{
"group": "GRPC Methods",
"tag": "TxMsg",
"icon": "plug",
"pages": [
"api-reference/dex/add-liquidity",
"api-reference/dex/cancel-order",
"api-reference/dex/create-dex-account",
"api-reference/dex/create-limit-order",
"api-reference/dex/execute-token-swap",
"api-reference/dex/remove-liquidity"
]
}
]
},
{
"group": "Decentralized Identifiers",
"icon": "contact-round",
"tag": "x/did",
"pages": [
{
"group": "HTTP Endpoints",
"tag": "Query",
"icon": "rss",
"pages": [
"api-reference/did/get-all-credentials-by-did",
"api-reference/did/get-did-document",
"api-reference/did/get-dids-by-controller",
"api-reference/did/get-module-parameters",
"api-reference/did/get-service-endpoint",
"api-reference/did/get-verifiable-credential",
"api-reference/did/get-verification-method",
"api-reference/did/list-all-did-documents",
"api-reference/did/list-verifiable-credentials",
"api-reference/did/resolve-did"
]
},
{
"group": "GRPC Methods",
"tag": "TxMsg",
"icon": "plug",
"pages": [
"api-reference/did/add-service-endpoint",
"api-reference/did/add-verification-method",
"api-reference/did/create-did-document",
"api-reference/did/deactivate-did",
"api-reference/did/issue-verifiable-credential",
"api-reference/did/link-external-wallet",
"api-reference/did/register-webauthn-credential-gasless",
"api-reference/did/remove-service-endpoint",
"api-reference/did/remove-verification-method",
"api-reference/did/revoke-verifiable-credential",
"api-reference/did/update-did-document",
"api-reference/did/update-module-parameters"
]
}
]
},
{
"group": "Decentralized Web Nodes",
"icon": "wallet",
"tag": "x/dwn",
"pages": [
{
"group": "HTTP Endpoints",
"tag": "Query",
"icon": "rss",
"pages": [
"api-reference/dwn/query-dwn-permissions",
"api-reference/dwn/query-dwn-protocols",
"api-reference/dwn/query-dwn-records",
"api-reference/dwn/query-encrypted-record-with-decryption",
"api-reference/dwn/query-encryption-system-status",
"api-reference/dwn/query-ipfs-node-status",
"api-reference/dwn/query-module-parameters",
"api-reference/dwn/query-specific-dwn-record",
"api-reference/dwn/query-specific-dwn-protocol",
"api-reference/dwn/query-specific-vault",
"api-reference/dwn/query-vaults-by-owner",
"api-reference/dwn/query-vrf-consensus-contributions",
"api-reference/dwn/retrieve-ipfs-content-by-cid"
]
},
{
"group": "GRPC Methods",
"tag": "TxMsg",
"icon": "plug",
"pages": [
"api-reference/dwn/configure-dwn-protocol",
"api-reference/dwn/delete-record-from-dwn",
"api-reference/dwn/grant-dwn-permission",
"api-reference/dwn/revoke-dwn-permission",
"api-reference/dwn/rotate-vault-encryption-keys",
"api-reference/dwn/update-dwn-module-parameters",
"api-reference/dwn/write-record-to-dwn"
]
}
]
},
{
"group": "Service Registry",
"icon": "shield-check",
"tag": "x/svc",
"pages": [
{
"group": "HTTP Endpoints",
"tag": "Query",
"icon": "rss",
"pages": [
"api-reference/svc/query-domain-verification-status",
"api-reference/svc/query-module-parameters",
"api-reference/svc/query-service-by-id",
"api-reference/svc/query-services-by-domain",
"api-reference/svc/query-services-by-owner"
]
},
{
"group": "GRPC Methods",
"tag": "TxMsg",
"icon": "plug",
"pages": [
"api-reference/svc/complete-domain-verification",
"api-reference/svc/initiate-domain-verification",
"api-reference/svc/register-service-with-verified-domain",
"api-reference/svc/update-module-parameters"
]
}
]
}
]
}
]
},
"footer": {
"socials": {
"discord": "https://sonr.io/discord",
"github": "https://github.com/sonr-io",
"twitter": "https://twitter.com/sonr_io",
"youtube": "https://youtube.com/@sonrhq",
"website": "https://sonr.io"
}
},
"integrations": {
"ga4": {
"measurementId": "G-FY0WZBSGH8"
}
}
}
+30 -28
View File
@@ -1,10 +1,12 @@
--- ---
title: "Frequently Asked Questions" title: "Frequently Asked Questions"
sidebarTitle: "FAQ"
description: "A Collection of commonly asked questions about Sonr" description: "A Collection of commonly asked questions about Sonr"
icon: "life-buoy" icon: "life-buoy"
sidebar:
label: "FAQ"
--- ---
<iframe <iframe
width="750" width="750"
height="422" height="422"
@@ -18,17 +20,17 @@ icon: "life-buoy"
## General ## General
<AccordionGroup> <Accordion>
<Accordion title="What Components make up the Sonr stack?"> <AccordionItem title="What Components make up the Sonr stack?">
**Network** -- We've built a global decentralized network that leverages our breakthrough identity module allowing for device based authentication, realtime content delivery, and true digital asset ownership. Users are provided the promised utility of Web3 without any lagging experience. **Network** -- We've built a global decentralized network that leverages our breakthrough identity module allowing for device based authentication, realtime content delivery, and true digital asset ownership. Users are provided the promised utility of Web3 without any lagging experience.
**Motor** -- The Sonr Motor node is an end to end client suite which provides all the features of our Network in an easily approachable SDK. Motor offers the easiest consumer onboarding experience in Web3 by stripping away seed phrases, and introducing multi-party computation for Quantum computing resistant encryption. **Motor** -- The Sonr Motor node is an end to end client suite which provides all the features of our Network in an easily approachable SDK. Motor offers the easiest consumer onboarding experience in Web3 by stripping away seed phrases, and introducing multi-party computation for Quantum computing resistant encryption.
**Blockchain** -- The Blockchain is the perfect marriage for Sonr's global decentralized network. With Cosmos, we can quickly and easily connect to other blockchains, providing our users with the ability to build interoperable experiences. IBC is the perfect specification for cross-chain communication, and GravityBridge provides us with the perfect way to bridge to Ethereum. Sonrs blockchain also provides developer with the peace of mind of knowing that user data is securely distributed across IPFS with a native bridge to Filecoin. **Blockchain** -- The Blockchain is the perfect marriage for Sonr's global decentralized network. With Cosmos, we can quickly and easily connect to other blockchains, providing our users with the ability to build interoperable experiences. IBC is the perfect specification for cross-chain communication, and GravityBridge provides us with the perfect way to bridge to Ethereum. Sonrs blockchain also provides developer with the peace of mind of knowing that user data is securely distributed across IPFS with a native bridge to Filecoin.
</Accordion> </AccordionItem>
<Accordion title="Whats preventing Web3 Mobile Apps from going mainstream?"> <AccordionItem title="Whats preventing Web3 Mobile Apps from going mainstream?">
There are several factors that may prevent the widespread adoption of web3 mobile apps. Some of the main challenges and barriers to the adoption of web3 mobile apps include: There are several factors that may prevent the widespread adoption of web3 mobile apps. Some of the main challenges and barriers to the adoption of web3 mobile apps include:
- Limited awareness and understanding of web3 and decentralized technologies among the general public - Limited awareness and understanding of web3 and decentralized technologies among the general public
- Limited adoption of decentralized technologies and infrastructure by developers and businesses - Limited adoption of decentralized technologies and infrastructure by developers and businesses
@@ -37,46 +39,46 @@ icon: "life-buoy"
- Regulatory uncertainty and potential legal challenges - Regulatory uncertainty and potential legal challenges
Overall, the adoption of web3 mobile apps is currently limited by a range of technical, market, and regulatory challenges. These challenges will need to be addressed in order for web3 mobile apps to become more widely used and adopted. Overall, the adoption of web3 mobile apps is currently limited by a range of technical, market, and regulatory challenges. These challenges will need to be addressed in order for web3 mobile apps to become more widely used and adopted.
</Accordion> </AccordionItem>
<Accordion title="Will DIDs replace traditional authentication in the future?"> <AccordionItem title="Will DIDs replace traditional authentication in the future?">
It is possible that DIDs (decentralized IDs) could eventually replace traditional forms of authentication, such as username and password combinations, in the future. DIDs are a key component of the decentralized identity (DID) ecosystem, which is being developed to provide individuals and organizations with control over their own digital identities and data. DIDs are designed to be secure, decentralized, and interoperable, and can be used to represent a wide range of identity-related information in a secure and decentralized way. It is possible that DIDs (decentralized IDs) could eventually replace traditional forms of authentication, such as username and password combinations, in the future. DIDs are a key component of the decentralized identity (DID) ecosystem, which is being developed to provide individuals and organizations with control over their own digital identities and data. DIDs are designed to be secure, decentralized, and interoperable, and can be used to represent a wide range of identity-related information in a secure and decentralized way.
The use of DIDs for authentication has several potential benefits over traditional forms of authentication. For example, DIDs can provide a more secure and decentralized way to authenticate users, as they are stored on a decentralized ledger (such as a blockchain) and can be accessed and verified by anyone with the appropriate permissions. This can help to improve the security and privacy of online authentication, and can reduce the risk of identity theft and other security threats. DIDs can also be more user-friendly and convenient for users, as they can be easily accessed and managed using a variety of different devices and applications. The use of DIDs for authentication has several potential benefits over traditional forms of authentication. For example, DIDs can provide a more secure and decentralized way to authenticate users, as they are stored on a decentralized ledger (such as a blockchain) and can be accessed and verified by anyone with the appropriate permissions. This can help to improve the security and privacy of online authentication, and can reduce the risk of identity theft and other security threats. DIDs can also be more user-friendly and convenient for users, as they can be easily accessed and managed using a variety of different devices and applications.
Overall, it is possible that DIDs could eventually replace traditional forms of authentication, but this will depend on the continued development and adoption of decentralized identity technologies and infrastructure. Overall, it is possible that DIDs could eventually replace traditional forms of authentication, but this will depend on the continued development and adoption of decentralized identity technologies and infrastructure.
</Accordion> </AccordionItem>
<Accordion title="How large is the Cosmos Ecosystem?"> <AccordionItem title="How large is the Cosmos Ecosystem?">
The exact size of the Cosmos ecosystem is difficult to determine, as it includes a wide range of projects, applications, and stakeholders. However, the Cosmos ecosystem is generally considered to be one of the largest and most active communities in the decentralized technology space, and it continues to grow and evolve over time. The exact size of the Cosmos ecosystem is difficult to determine, as it includes a wide range of projects, applications, and stakeholders. However, the Cosmos ecosystem is generally considered to be one of the largest and most active communities in the decentralized technology space, and it continues to grow and evolve over time.
The Cosmos ecosystem is focused on building an open, interoperable, and scalable ecosystem of decentralized networks and applications. This ecosystem is based on the Cosmos SDK, a framework for building blockchain applications, and the Inter-Blockchain Communication (IBC) protocol, which allows different blockchain networks to interoperate with each other. The Cosmos ecosystem also includes a range of tools, services, and resources that are designed to support the development and adoption of decentralized technologies and applications. The Cosmos ecosystem is focused on building an open, interoperable, and scalable ecosystem of decentralized networks and applications. This ecosystem is based on the Cosmos SDK, a framework for building blockchain applications, and the Inter-Blockchain Communication (IBC) protocol, which allows different blockchain networks to interoperate with each other. The Cosmos ecosystem also includes a range of tools, services, and resources that are designed to support the development and adoption of decentralized technologies and applications.
</Accordion> </AccordionItem>
<Accordion title="What was Tim Berners Lees Original Vision for the Internet?"> <AccordionItem title="What was Tim Berners Lees Original Vision for the Internet?">
Tim Berners-Lee, the inventor of the World Wide Web, has expressed a vision for the future of the internet that emphasizes decentralization, interoperability, and user control. In this vision, the internet would be a more open, transparent, and democratic platform, where users have more control over their own data and online experiences. Tim Berners-Lee, the inventor of the World Wide Web, has expressed a vision for the future of the internet that emphasizes decentralization, interoperability, and user control. In this vision, the internet would be a more open, transparent, and democratic platform, where users have more control over their own data and online experiences.
Berners-Lee has referred to this vision as the "POD" (Personal Online Data) model, and has described it as a way to "take back the web" from the large technology companies that currently dominate the internet landscape. In the POD model, users would be able to store their own data on personal servers or other decentralized storage systems, Berners-Lee has referred to this vision as the "POD" (Personal Online Data) model, and has described it as a way to "take back the web" from the large technology companies that currently dominate the internet landscape. In the POD model, users would be able to store their own data on personal servers or other decentralized storage systems,
and would be able to control who has access to that data. This would enable users to have more control over their own data and online experiences, and would help to reduce the concentration of power and control in the hands of a few large technology companies. and would be able to control who has access to that data. This would enable users to have more control over their own data and online experiences, and would help to reduce the concentration of power and control in the hands of a few large technology companies.
</AccordionItem>
</Accordion> </Accordion>
</AccordionGroup>
## Developers ## Developers
<AccordionGroup> <Accordion>
<Accordion title="Why build on Sonr?"> <AccordionItem title="Why build on Sonr?">
Sonr's decentralized, realtime network provides Web3 developers with a tool-set that to quickly deploy scalable Web3 applications, with verifiable data that can be reused and shared across all Sonr powered applications. Sonr's decentralized, realtime network provides Web3 developers with a tool-set that to quickly deploy scalable Web3 applications, with verifiable data that can be reused and shared across all Sonr powered applications.
- **Developer Experience** -- We believe application development should be as straight forward as possible. Sonr's SDK's is an all-in-one solution for developing applications for the Sonr network. We believe in consistency and openness, as our libraries are built on open standards. - **Developer Experience** -- We believe application development should be as straight forward as possible. Sonr's SDK's is an all-in-one solution for developing applications for the Sonr network. We believe in consistency and openness, as our libraries are built on open standards.
- **Composable by Design** -- Our protocols are flexible and are capable of wrapping custom protocols. These protocols are extendable and support merging, which allows for reusability and composability. - **Composable by Design** -- Our protocols are flexible and are capable of wrapping custom protocols. These protocols are extendable and support merging, which allows for reusability and composability.
</Accordion> </AccordionItem>
<Accordion title="Does Sonr have Wallet to Wallet Messaging?"> <AccordionItem title="Does Sonr have Wallet to Wallet Messaging?">
We utilize libp2p, DID documents, and MPC to have decentralized wallet-to-wallet messaging, you can follow these steps: We utilize libp2p, DID documents, and MPC to have decentralized wallet-to-wallet messaging, you can follow these steps:
1. Use the libp2p library to establish a peer-to-peer network between the two wallets. This will allow the wallets to communicate directly with each other, without going through a central server. 1. Use the libp2p library to establish a peer-to-peer network between the two wallets. This will allow the wallets to communicate directly with each other, without going through a central server.
@@ -88,34 +90,34 @@ icon: "life-buoy"
4. Use the libp2p library to send messages between the wallets, using the keys that were generated with MPC. These messages can be encrypted to ensure privacy, and can be signed to ensure authenticity. 4. Use the libp2p library to send messages between the wallets, using the keys that were generated with MPC. These messages can be encrypted to ensure privacy, and can be signed to ensure authenticity.
By following these steps, it is possible to utilize libp2p, DID documents, and MPC to create decentralized wallet-to-wallet messaging. This approach allows users to securely and privately communicate with each other, while also maintaining control over their own data and assets. By following these steps, it is possible to utilize libp2p, DID documents, and MPC to create decentralized wallet-to-wallet messaging. This approach allows users to securely and privately communicate with each other, while also maintaining control over their own data and assets.
</Accordion> </AccordionItem>
</AccordionGroup> </Accordion>
## Token ## Token
<AccordionGroup> <Accordion>
<Accordion title="What is the Total Supply of Tokens?"> <AccordionItem title="What is the Total Supply of Tokens?">
500M, See our Distribution [here](https://www.notion.so/Token-Supply-0578a472c3364718a8634efa8c290e4b). 500M, See our Distribution [here](https://www.notion.so/Token-Supply-0578a472c3364718a8634efa8c290e4b).
</Accordion> </AccordionItem>
<Accordion title="When is the Sonr Team anticipating on going to MainNet?"> <AccordionItem title="When is the Sonr Team anticipating on going to MainNet?">
Were gearing for a Summer 2023 Launch Were gearing for a Summer 2023 Launch
</Accordion> </AccordionItem>
<Accordion title="Do Developers receive Airdrops?"> <AccordionItem title="Do Developers receive Airdrops?">
Yes! Developers can receive AirDrops for submitting proposals or participating in Sonr sponsored events. Yes! Developers can receive AirDrops for submitting proposals or participating in Sonr sponsored events.
</Accordion> </AccordionItem>
<Accordion title="Whats the price of $SNR?"> <AccordionItem title="Whats the price of $SNR?">
The Sonr team cannot provide an anticipated price for $SNR due to the [SECs rules](https://cryptolawinsider.com/security-token/) on Securities. The Sonr team cannot provide an anticipated price for $SNR due to the [SECs rules](https://cryptolawinsider.com/security-token/) on Securities.
</Accordion> </AccordionItem>
</AccordionGroup> </Accordion>
+44 -44
View File
@@ -2,25 +2,25 @@
title: Features title: Features
description: The peer-to-peer identity and asset management system that makes Web3 as easy as Web2 through DID documents, WebAuthn, and IPFS—providing users with secure, portable decentralized identity description: The peer-to-peer identity and asset management system that makes Web3 as easy as Web2 through DID documents, WebAuthn, and IPFS—providing users with secure, portable decentralized identity
icon: "puzzle" icon: "puzzle"
sidebar:
label: "Features"
--- ---
# Introduction to Sonr :::note[Scope]
This document introduces Sonr's blockchain architecture, core components, and
integration patterns. It covers identity management, authentication, data
sovereignty, and cross-chain operations. This document does not cover
implementation details or code examples—see the Quick Start Guide for hands-on
tutorials.
:::
<Note title="Scope"> :::note[Audience]
This document introduces Sonr's blockchain architecture, core components, and **Developers** building Web3 applications who want simple integration
integration patterns. It covers identity management, authentication, data patterns. **Validators** interested in securing a next-generation blockchain
sovereignty, and cross-chain operations. This document does not cover network. **Users** seeking sovereign digital identity solutions.
implementation details or code examples—see the Quick Start Guide for hands-on Prerequisites: Basic understanding of web development (HTML/JavaScript) for
tutorials. developers; blockchain consensus for validators.
</Note> :::
<Note title="Audience">
**Developers** building Web3 applications who want simple integration
patterns. **Validators** interested in securing a next-generation blockchain
network. **Users** seeking sovereign digital identity solutions.
Prerequisites: Basic understanding of web development (HTML/JavaScript) for
developers; blockchain consensus for validators.
</Note>
## Summary ## Summary
@@ -63,16 +63,16 @@ Sonr provides:
## Core Architecture ## Core Architecture
<CardGroup> <CardGroup>
<Card title="Decentralized Identity (DID)" href="/blockchain/modules/did/"> <Card title="Decentralized Identity (DID)" href="/reference/modules/did">
W3C-compliant identity system using WebAuthn for passwordless authentication W3C-compliant identity system using WebAuthn for passwordless authentication
</Card> </Card>
<Card title="Decentralized Web Nodes (DWN)" href="/blockchain/modules/dwn/"> <Card title="Decentralized Web Nodes (DWN)" href="/reference/concepts/sonrmodules/dwn/">
Personal Vaults acting as user-controlled agents for blockchain interactions Personal Vaults acting as user-controlled agents for blockchain interactions
</Card> </Card>
<Card title="UCAN Authorization" href="/blockchain/modules/svc/ucan"> <Card title="UCAN Authorization" href="/reference/modules/svc">
Capability-based permissions replacing dangerous unlimited approve patterns Capability-based permissions replacing dangerous unlimited approve patterns
</Card> </Card>
<Card title="Service Registry" href="/blockchain/modules/svc/"> <Card title="Service Registry" href="/reference/modules/svc">
Stake-based trust system for service discovery and DNS verification Stake-based trust system for service discovery and DNS verification
</Card> </Card>
</CardGroup> </CardGroup>
@@ -109,7 +109,7 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
### Developer Resources ### Developer Resources
<CardGroup> <CardGroup>
<Card title="Browser Integration" href="/quickstart/browser"> <Card title="Browser Integration" href="/onboardingbrowser">
Browser integration patterns and WebAuthn examples Browser integration patterns and WebAuthn examples
</Card> </Card>
<Card title="Wallet Architecture" href="/highway/"> <Card title="Wallet Architecture" href="/highway/">
@@ -118,7 +118,7 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
<Card title="Payment Systems" href="/highway/wallets/sending-payments"> <Card title="Payment Systems" href="/highway/wallets/sending-payments">
Payment integration and transaction management Payment integration and transaction management
</Card> </Card>
<Card title="Service Registry" href="/blockchain/modules/svc/"> <Card title="Service Registry" href="/reference/modules/svc">
DNS verification and stake-based trust DNS verification and stake-based trust
</Card> </Card>
</CardGroup> </CardGroup>
@@ -130,16 +130,16 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
Validators secure four critical systems: Validators secure four critical systems:
<CardGroup> <CardGroup>
<Card title="Blockchain Core" href="/blockchain/"> <Card title="Blockchain Core" href="/reference/concepts/sonr">
Cosmos SDK with IBC for cross-chain operations Cosmos SDK with IBC for cross-chain operations
</Card> </Card>
<Card title="Network Architecture" href="/blockchain/network"> <Card title="Network Architecture" href="/reference/concepts/sonrnetwork">
Network topology and consensus mechanisms Network topology and consensus mechanisms
</Card> </Card>
<Card title="Highway Proxy" href="/highway/"> <Card title="Highway Proxy" href="/highway/">
HTTP bridge supporting WebAuthn authentication HTTP bridge supporting WebAuthn authentication
</Card> </Card>
<Card title="Token Economics" href="/blockchain/token/"> <Card title="Token Economics" href="/reference/concepts/sonrtoken/">
Tokenomics and staking mechanisms Tokenomics and staking mechanisms
</Card> </Card>
</CardGroup> </CardGroup>
@@ -166,10 +166,10 @@ Validators perform five key functions:
### Identity Management ### Identity Management
<CardGroup> <CardGroup>
<Card title="Identity System" href="/blockchain/modules/did/"> <Card title="Identity System" href="/reference/modules/did">
W3C DIDs with WebAuthn for digital sovereignty W3C DIDs with WebAuthn for digital sovereignty
</Card> </Card>
<Card title="DID Module" href="/blockchain/modules/did/"> <Card title="DID Module" href="/reference/modules/did">
Blockchain implementation of identity management Blockchain implementation of identity management
</Card> </Card>
</CardGroup> </CardGroup>
@@ -177,10 +177,10 @@ Validators perform five key functions:
### Data Sovereignty ### Data Sovereignty
<CardGroup> <CardGroup>
<Card title="DWN Module" href="/blockchain/modules/dwn/"> <Card title="DWN Module" href="/reference/concepts/sonrmodules/dwn/">
Personal Vaults for user-controlled data and agents Personal Vaults for user-controlled data and agents
</Card> </Card>
<Card title="Network Architecture" href="/blockchain/network"> <Card title="Network Architecture" href="/reference/concepts/sonrnetwork">
Network architecture and cross-chain features Network architecture and cross-chain features
</Card> </Card>
</CardGroup> </CardGroup>
@@ -188,10 +188,10 @@ Validators perform five key functions:
### Authorization System ### Authorization System
<CardGroup> <CardGroup>
<Card title="UCAN Module" href="/blockchain/modules/svc/ucan"> <Card title="UCAN Module" href="/reference/modules/svc">
Capability-based permissions for secure delegation Capability-based permissions for secure delegation
</Card> </Card>
<Card title="Service Module" href="/blockchain/modules/svc/"> <Card title="Service Module" href="/reference/modules/svc">
Registration, verification, and trust management Registration, verification, and trust management
</Card> </Card>
</CardGroup> </CardGroup>
@@ -199,7 +199,7 @@ Validators perform five key functions:
### Cross-Chain Features ### Cross-Chain Features
<CardGroup> <CardGroup>
<Card title="Network Protocol" href="/blockchain/network"> <Card title="Network Protocol" href="/reference/concepts/sonrnetwork">
Bridgeless transactions via InterchainAccounts Bridgeless transactions via InterchainAccounts
</Card> </Card>
<Card title="Payment Handler" href="/highway/wallets/sending-payments"> <Card title="Payment Handler" href="/highway/wallets/sending-payments">
@@ -214,13 +214,13 @@ Validators perform five key functions:
Build Web3 applications without blockchain complexity: Build Web3 applications without blockchain complexity:
<CardGroup> <CardGroup>
<Card title="Quick Start" href="/quickstart/"> <Card title="Quick Start" href="/onboarding">
Create your first Sonr application in 10 minutes Create your first Sonr application in 10 minutes
</Card> </Card>
<Card title="Browser Integration" href="/quickstart/browser"> <Card title="Browser Integration" href="/onboardingbrowser">
Real-world browser integration examples Real-world browser integration examples
</Card> </Card>
<Card title="CLI Tools" href="/quickstart/cli"> <Card title="CLI Tools" href="/onboardingcli">
Command line tools and utilities Command line tools and utilities
</Card> </Card>
</CardGroup> </CardGroup>
@@ -230,10 +230,10 @@ Build Web3 applications without blockchain complexity:
Secure the future of digital sovereignty: Secure the future of digital sovereignty:
<CardGroup> <CardGroup>
<Card title="Node Setup" href="/quickstart/validators"> <Card title="Node Setup" href="/deployment">
Complete validator installation guide Complete validator installation guide
</Card> </Card>
<Card title="Token Economics" href="/blockchain/token/"> <Card title="Token Economics" href="/reference/concepts/sonrtoken/">
Token distribution, staking, and governance Token distribution, staking, and governance
</Card> </Card>
<Card title="Security" href="/reference/security/"> <Card title="Security" href="/reference/security/">
@@ -246,10 +246,10 @@ Secure the future of digital sovereignty:
Experience true digital ownership: Experience true digital ownership:
<CardGroup> <CardGroup>
<Card title="Create Identity" href="/blockchain/modules/did/onboarding"> <Card title="Create Identity" href="/onboarding">
30-second setup with biometric authentication 30-second setup with biometric authentication
</Card> </Card>
<Card title="Use Your Vault" href="/blockchain/modules/dwn/"> <Card title="Use Your Vault" href="/reference/concepts/sonrmodules/dwn/">
Master your personal Web3 agent Master your personal Web3 agent
</Card> </Card>
<Card title="Security Guide" href="/reference/security/"> <Card title="Security Guide" href="/reference/security/">
@@ -259,13 +259,13 @@ Experience true digital ownership:
## Next Steps ## Next Steps
<Note title="Ready to Build?" type="success"> :::note[Ready to Build?]
**Developers**: Start with the [Quick Start Guide](/quickstart/) to build your first Sonr application. **Developers**: Start with the [Quick Start Guide](/onboarding) to build your first Sonr application.
**Validators**: Follow the [Node Setup Guide](/quickstart/validators) to join the network. **Validators**: Follow the [Node Setup Guide](/deployment) to join the network.
**Users**: [Create your identity](/blockchain/modules/did/onboarding) in under 30 seconds. **Users**: [Create your identity](/onboarding) in under 30 seconds.
</Note> :::
Explore the concepts above or dive into specific topics using the navigation menu. Join us in building the sovereign internet where identity belongs to individuals, not platforms. Explore the concepts above or dive into specific topics using the navigation menu. Join us in building the sovereign internet where identity belongs to individuals, not platforms.
@@ -1,31 +0,0 @@
---
title: Delegated Proof of Stake (DPoS)
description: A decentralized, secure, and efficient consensus mechanism.
---
Sonr leverages a Delegated Proof of Stake (DPoS) mechanism to optimize network security and user participation. DPoS imposes an opportunity cost for malicious behavior through slashing, but it also presents challenges that must be addressed for a sustainable design.
## Challenges in Staking Mechanisms
- **Token Value**: The token must have intrinsic value to incentivize staking.
- **Wealth Concentration**: Staking can give an outsized advantage to wealthy users.
- **Coordination Problems**: Staking mechanisms can be gamed by coordinated actors.
## Sonr's Approach to DPoS
We have designed our staking mechanism to address these challenges and create a sustainable and equitable system:
<CardGroup>
<Card title="Low Barrier to Entry">
The upfront capital required to stake is designed to not significantly
discourage participation.
</Card>
<Card title="Slashing for Malice">
If a stakeholder group makes decisions that materially harm the network,
their stake is slashed.
</Card>
<Card title="Incentivizing Positive Growth">
Stakeholders can make decisions that positively impact the future network
health and token price, promoting long-term growth.
</Card>
</CardGroup>
@@ -1,29 +0,0 @@
---
title: Network Architecture
description: A detailed look at Sonr's three-tier system design.
---
Our incorporation of embedded light nodes signifies a strategic move towards enhancing network robustness and efficiency. These nodes operate with a reduced resource footprint, ensuring a widespread and seamless network distribution. They form the bedrock of the infrastructure, interfacing directly with a series of validators. These validators are pivotal in maintaining the integrity and trustworthiness of the network, each playing an instrumental role in processing transactions and securing the network's protocol.
## Blockchain Services
Blockchain Services are instrumental in ensuring seamless interoperability and data exchange across the network.
<CardGroup>
<Card title="IBC Relayer">
The IBC Relayer stands at the forefront of inter-blockchain communication,
enabling different blockchain protocols to transfer and share information
effectively.
</Card>
<Card title="IPFS/Libp2p Routing">
IPFS/Libp2p Routing underpins the decentralized routing of information,
ensuring resilient and scalable data distribution across the network.
</Card>
</CardGroup>
## Interoperability Protocols
The overarching network architecture is designed with interoperability at its core, integrating protocols such as Matrix and Pinecone to facilitate communication and data exchange across disparate systems.
- **Matrix Protocol**: A new paradigm in secure, decentralized communication.
- **Pinecone Routing**: A novel approach to establishing network pathways, enhancing the efficiency and reliability of data transmission.
@@ -1,238 +0,0 @@
---
title: "WebAuthn Integration"
description: "Comprehensive guide to Sonr's WebAuthn/FIDO2 implementation for passwordless authentication"
icon: "key"
sidebarTitle: "WebAuthn Integration"
---
<Note>
This documentation covers the WebAuthn implementation in the Sonr blockchain,
providing a secure, passwordless authentication mechanism through
W3C-compliant WebAuthn protocols.
</Note>
## Overview
Sonr's WebAuthn implementation enables gasless onboarding and secure transaction authorization without requiring users to hold tokens initially. This document provides a comprehensive guide to understanding and using our WebAuthn client.
## Architecture
<Frame>
<img
src="https://cdn.sonr.io/diagrams/passkey-jwt.png"
alt="WebAuthn Architecture Diagram"
/>
</Frame>
The WebAuthn implementation is structured across three primary layers:
1. **Client Layer** (`client/auth/webauthn.go`)
- WebAuthnClient interface
- Registration and Authentication flows
- DID integration
2. **Internal WebAuthn Package** (`internal/webauthn/`)
- COSE key parsing
- CBOR encoding/decoding
- Attestation verification
- Signature verification (ES256/RS256)
3. **DID Module Layer** (`x/did/keeper/`)
- WebAuthn controller verifier
- Credential storage in DID documents
- Challenge generation and validation
## API Reference
### WebAuthnClient Interface
<CodeGroup>
```go
type WebAuthnClient interface {
// Registration Operations
BeginRegistration(ctx context.Context, opts *RegistrationOptions) (*RegistrationChallenge, error)
CompleteRegistration(ctx context.Context, challenge *RegistrationChallenge, response *AuthenticatorAttestationResponse) (*WebAuthnCredential, error)
// Authentication Operations
BeginAuthentication(ctx context.Context, opts *AuthenticationOptions) (*AuthenticationChallenge, error)
CompleteAuthentication(ctx context.Context, challenge *AuthenticationChallenge, response *AuthenticatorAssertionResponse, credentialID string) (*AuthenticationResult, error)
// Credential Management Methods...
}
```
</CodeGroup>
## Usage Examples
### Registration Flow
<CodeGroup>
```go Registration Example
func registerWebAuthn() error {
client := auth.NewWebAuthnClient()
ctx := context.Background()
// Begin registration
regOpts := &auth.RegistrationOptions{
UserID: "user123",
Username: "alice@example.com",
DisplayName: "Alice Smith",
UserVerification: "preferred",
}
challenge, err := client.BeginRegistration(ctx, regOpts)
if err != nil {
return err
}
// Complete registration
response := &auth.AuthenticatorAttestationResponse{
ClientDataJSON: clientDataJSON,
AttestationObject: attestationObject,
}
credential, err := client.CompleteRegistration(ctx, challenge, response)
return err
}
```
</CodeGroup>
### Authentication Flow
<CodeGroup>
```go Authentication Example
func authenticateWebAuthn(credentialID string) error {
client := auth.NewWebAuthnClient()
ctx := context.Background()
// Begin authentication
authOpts := &auth.AuthenticationOptions{
UserVerification: "required",
AllowedCredentials: []*auth.CredentialDescriptor{
{
Type: "public-key",
ID: []byte(credentialID),
},
},
}
challenge, err := client.BeginAuthentication(ctx, authOpts)
if err != nil {
return err
}
// Complete authentication
response := &auth.AuthenticatorAssertionResponse{
ClientDataJSON: clientDataJSON,
AuthenticatorData: authenticatorData,
Signature: signature,
UserHandle: userHandle,
}
result, err := client.CompleteAuthentication(ctx, challenge, response, credentialID)
return err
}
```
</CodeGroup>
## Security Considerations
### Supported Algorithms
<Tabs>
<Tab title="ES256">ECDSA with P-256 curve and SHA-256</Tab>
<Tab title="RS256">RSASSA-PKCS1-v1_5 with SHA-256</Tab>
</Tabs>
### Attestation Formats
<Callout type="info">
1. **none**: No attestation (development/testing) 2. **packed**:
Self-attestation or certificate chain 3. **fido-u2f**: Legacy U2F
authenticators 4. **android-safetynet**: Android device attestation
</Callout>
### Security Features
- **Challenge uniqueness**: Each challenge is unique and time-bound
- **Origin validation**: Ensures requests come from trusted origins
- **User verification**: Requires biometric or PIN when configured
- **Counter tracking**: Detects cloned credentials
- **Credential isolation**: Each DID has separate credential namespace
## Configuration
### Chain Parameters
<CodeGroup>
```json Configuration Example
{
"webauthn": {
"rp_id": "sonr.io",
"rp_name": "Sonr Network",
"timeout": 60000,
"user_verification": "preferred",
"attestation": "none",
"allowed_origins": [
"https://sonr.io",
"https://app.sonr.io"
]
}
}
```
</CodeGroup>
## Troubleshooting
<Accordion title="Common WebAuthn Issues">
- **"Invalid attestation format"**: Ensure authenticator supports the
configured format - **"Challenge mismatch"**: Verify challenge hasn't expired
- **"Origin validation failed"**: Check allowed origins list - **"User
verification required"**: Ensure authenticator supports verification
</Accordion>
## Contributing
### Development Setup
<CodeGroup>
```bash Setup Commands
# Clone repository
git clone https://github.com/sonr-io/sonr.git
# Install dependencies
make install
# Run WebAuthn tests
make test-webauthn
```
</CodeGroup>
## References
<Card
title="WebAuthn Specifications"
icon="link"
href="https://www.w3.org/TR/webauthn/"
>
Official W3C WebAuthn Specification
</Card>
<Card
title="FIDO2 CTAP"
icon="lock"
href="https://fidoalliance.org/specs/fido-v2.0/"
>
FIDO2 Client to Authenticator Protocol
</Card>
## License
Copyright 2024 Sonr Inc. Licensed under the Apache License, Version 2.0.
```
-221
View File
@@ -1,221 +0,0 @@
---
title: "Authorization with UCAN"
description: "Comprehensive guide to creating, validating, and managing User-Controlled Authorization Network (UCAN) tokens"
sidebarTitle: Client Authorization
icon: "badge-check"
---
# UCAN Token Operations
User-Controlled Authorization Networks (UCAN) provide a decentralized authorization mechanism that enables flexible, portable, and secure token-based access control.
## Overview
UCAN tokens are JWT-based authorization tokens that allow:
- Decentralized identity verification
- Granular access control
- Delegatable permissions
- Cryptographic proof of authorization
## Token Structure
A UCAN token consists of:
- Issuer DID
- Audience DID
- Capabilities (Attenuations)
- Proofs (Optional parent tokens)
- Time-based constraints
## Creating Origin Tokens
An origin token is the first token in a delegation chain:
```go
type NewOriginTokenRequest struct {
AudienceDID string // Target DID
Attenuations []map[string]any // Token restrictions
Facts []string // Additional claims
NotBefore int64 // Token activation time
ExpiresAt int64 // Token expiration time
}
// Example origin token creation
originToken := NewOriginTokenRequest{
AudienceDID: "did:sonr:example-recipient",
Attenuations: []{
{
"capability": "read",
"resource": "/storage/documents"
}
},
Facts: ["authenticated_user"],
NotBefore: time.Now().Unix(),
ExpiresAt: time.Now().Add(24 * time.Hour).Unix()
}
```
## Creating Attenuated Tokens
Attenuated tokens derive from existing tokens, further restricting capabilities:
```go
type NewAttenuatedTokenRequest struct {
ParentToken string // Previous token
AudienceDID string // New token recipient
Attenuations []map[string]any // Further restrictions
Facts []string // Additional claims
NotBefore int64 // Token activation time
ExpiresAt int64 // Token expiration time
}
// Example attenuated token
attenuatedToken := NewAttenuatedTokenRequest{
ParentToken: originTokenString,
AudienceDID: "did:sonr:delegated-user",
Attenuations: []{
{
"capability": "read",
"resource": "/storage/documents/public"
}
}
}
```
## Token Validation Workflow
```go
func ValidateUCANToken(token string) (bool, error) {
// 1. Parse the token
parsedToken, err := jwt.Parse(token, keyFunc)
if err != nil {
return false, err
}
// 2. Verify issuer DID
issuerDID := parsedToken.Claims["iss"]
if !isDIDValid(issuerDID) {
return false, errors.New("invalid issuer DID")
}
// 3. Check audience
audienceDID := parsedToken.Claims["aud"]
if !isCurrentUserAudience(audienceDID) {
return false, errors.New("token not intended for this audience")
}
// 4. Validate time constraints
if isTokenExpired(parsedToken) {
return false, errors.New("token has expired")
}
// 5. Check capabilities
capabilities := parsedToken.Claims["att"]
if !validateCapabilities(capabilities) {
return false, errors.New("insufficient capabilities")
}
// 6. Verify proofs (if present)
proofs := parsedToken.Claims["prf"]
if !validateProofChain(proofs) {
return false, errors.New("invalid proof chain")
}
return true, nil
}
```
## Capability Patterns
### Read Capabilities
```json
{
"capability": "read",
"resource": "/storage/documents",
"conditions": {
"max_size": "10MB",
"allowed_types": ["pdf", "txt"]
}
}
```
### Write Capabilities
```json
{
"capability": "write",
"resource": "/storage/documents",
"conditions": {
"max_files": 5,
"max_file_size": "50MB"
}
}
```
## Practical Examples
### Decentralized File Sharing
```go
// Create an origin token for file access
originToken := NewOriginTokenRequest{
AudienceDID: "did:sonr:collaborator",
Attenuations: []{
{
"capability": "read",
"resource": "/project/design-docs"
},
{
"capability": "write",
"resource": "/project/design-docs/comments"
}
},
ExpiresAt: time.Now().Add(30 * 24 * time.Hour).Unix()
}
// Later, create a more restricted token
limitedToken := NewAttenuatedTokenRequest{
ParentToken: originTokenString,
AudienceDID: "did:sonr:junior-designer",
Attenuations: []{
{
"capability": "read",
"resource": "/project/design-docs/public"
}
}
}
```
## Security Considerations
- Use the shortest possible token lifetime
- Implement granular capabilities
- Validate all tokens before use
- Rotate keys regularly
- Log and monitor token usage
## Performance Optimization
- Cache validated tokens
- Use efficient JWT parsing
- Implement token revocation lists
## Advanced Topics
- [DID Module](/blockchain/modules/did/)
- [DWN Architecture](/blockchain/modules/dwn/architecture)
- [Service Registry](/blockchain/modules/svc/)
## Error Handling
```go
type UCANError struct {
Code string
Message string
Details map[string]any
}
```
By leveraging UCAN tokens, you can create a flexible, secure, and decentralized authorization system that puts users in control of their access.
-411
View File
@@ -1,411 +0,0 @@
---
title: Transactions
description: Transaction types, fee structures, and token mechanics for SNR within the Sonr network
sidebarTitle: Broadcast Transactions
icon: "send"
---
## Overview
SNR token transactions power the revolutionary Sonr ecosystem, enabling gasless onboarding, stake-based service registration, and UCAN-authorized operations. The unique architecture allows for both traditional fee-based transactions and innovative gasless user experiences.
<Note>
Sonr features both traditional fee-based transactions and revolutionary
gasless operations like vault claiming, enabling zero-barrier user onboarding
while maintaining network security through economic incentives.
</Note>
## Transaction Types
### Basic Transfers
The foundation of the SNR economy consists of peer-to-peer token transfers:
<CardGroup>
<Card title="Simple Transfers">
Direct SNR transfers between addresses with minimal gas fees
</Card>
<Card title="Multi-send">
Batch transfers to multiple recipients in a single transaction
</Card>
<Card title="Scheduled Transfers">
Time-locked transfers with vesting or release conditions
</Card>
</CardGroup>
### Module-Specific Transactions
Each Sonr core module enables specialized transaction types with specific SNR token requirements:
#### Service Module (x/svc) Transactions
- **MsgRegisterService**: Register a new service with TLD domain verification and capability requests
- **MsgUpdateService**: Update service metadata or request additional permissions
- **DNS Verification**: Simple DNS TXT record verification for domain ownership
- **Stake Requirements**: Services must stake SNR tokens based on requested capabilities
#### DWN Module (x/dwn) Transactions
- **MsgClaimVault**: **Gasless** transaction for claiming user vaults during onboarding
- **Vault Configuration Updates**: Paid transactions for advanced vault settings and WASM runtime upgrades
- **Cross-Chain Operations**: SNR fees for multi-chain vault management and bridging
- **MPC Operations**: Transaction fees for multi-party computation within secure enclaves
#### UCAN Module (x/ucan) Transactions
- **MsgIssueRootCapability**: Request MPC threshold signing for root capability tokens
- **MsgSubmitThresholdShare**: Validators submit MPC shares for capability creation
- **MsgRevokeCapability**: Revoke previously issued capability tokens on-chain
- **Delegation Chain Processing**: Computational fees for validating complex authorization chains
#### DID Module (x/did) Transactions
- **DID Registration**: Fees for creating new decentralized identifiers
- **MsgLinkAuthentication**: Add WebAuthn credentials or other authentication methods
- **MsgLinkAssertion**: Link identity claims and verifications to DIDs
- **MsgExecuteTx**: Execute UCAN-authorized transactions on behalf of DIDs
## Fee Structure
### Dual Fee Model
Sonr implements a revolutionary dual fee model supporting both traditional gas fees and gasless operations:
```math
\text{Fee} = \begin{cases}
0 & \text{for gasless operations (vault claiming)} \\
\text{Base Cost} + (\text{Gas Used} \times \text{Gas Price}) & \text{for standard transactions}
\end{cases}
```
<Warning>
While basic vault claiming is gasless, advanced operations like service
registration, MPC signing, and cross-chain transactions require SNR tokens for
network security and spam prevention.
</Warning>
### Fee Components
<CardGroup>
<Card title="MPC Computation">
Multi-party computation costs for threshold signing and capability issuance
</Card>
<Card title="Stake-Based Security">
Service registration fees that are burned or sent to community pool
</Card>
<Card title="Cross-Chain Operations">
IBC and InterchainAccount transaction costs for bridgeless operations
</Card>
<Card title="Identity Operations">
DID registration, authentication linking, and credential management
</Card>
</CardGroup>
### Economic Mechanisms
The network implements sophisticated economic mechanisms:
1. **Gasless Subsidies**: Network subsidizes vault claiming for zero-barrier onboarding
2. **Stake-Based Pricing**: Service registration costs scale with capability requests
3. **MPC Rewards**: Validators earn additional fees for threshold signing participation
4. **Deflationary Pressure**: Service registration fees are burned, reducing total supply
## Transaction Lifecycle
### Gasless Vault Claiming Flow
```mermaid
graph LR
A[WebAuthn Creation] --> B[Client-Side Vault Config]
B --> C[Submit MsgClaimVault]
C --> D[Network Subsidy Check]
D --> E[Gasless Execution]
E --> F[Vault Active]
```
### Service Registration Flow
```mermaid
graph LR
A[DNS Verification] --> B[Stake Calculation]
B --> C[MsgRegisterService]
C --> D[Capability Request]
D --> E[MPC Signing]
E --> F[Root UCAN Issued]
```
### UCAN Authorization Flow
```mermaid
graph LR
A[Service Request] --> B[Capability Check]
B --> C[User Approval]
C --> D[UCAN Creation]
D --> E[Delegation Chain]
E --> F[Authorized Execution]
```
### Standard Transaction Processing
1. **UCAN Validation**: Check authorization tokens and delegation chains
2. **Module Routing**: Route to appropriate module (svc, dwn, ucan, did)
3. **MPC Coordination**: Multi-party computation for sensitive operations
4. **State Updates**: Update module-specific state and emit events
5. **Fee Distribution**: Distribute fees to validators, burn pool, and treasury
## Advanced Features
### UCAN-Powered Automation
Enable sophisticated authorization patterns:
<CardGroup>
<Card title="Capability Delegation">
Services receive granular, time-limited permissions from users
</Card>
<Card title="Agent Execution">
Motr Vaults execute pre-authorized actions without user intervention
</Card>
<Card title="Subscription Automation">
Recurring payments and service interactions through UCAN tokens
</Card>
</CardGroup>
### Multi-Party Computation Integration
Leverage MPC for secure operations:
- **Threshold Signing**: Validators collaborate to issue root capabilities
- **Key Sharding**: No single point of failure for vault key management
- **Secure Enclaves**: WASM-based computation with hardware security
- **Privacy Preservation**: Zero-knowledge proofs for sensitive operations
### Cross-Module Interactions
Transactions can interact with multiple Sonr modules in powerful combinations:
```typescript
// Example: Complete user onboarding with service registration
const tx = {
messages: [
// DID Module: Create decentralized identity
{
type: "did/MsgCreateDID",
creator: "sonr1abc...",
document: didDocument,
webauthnCredential: credential,
},
// DWN Module: Claim gasless vault
{
type: "dwn/MsgClaimVault",
creator: "did:sonr:alice123",
vaultConfig: vaultCID,
mpcThreshold: 3,
},
// Service Module: Register domain service
{
type: "svc/MsgRegisterService",
creator: "did:sonr:alice123",
domain: "alice-app.com",
capabilities: ["dwn:read", "dwn:write"],
stakeAmount: "5000usnr",
},
// UCAN Module: Request root capability
{
type: "ucan/MsgIssueRootCapability",
issuer: "did:sonr:alice123",
audience: "alice-app.com",
capabilities: ["service:register"],
},
],
fee: {
amount: [{ denom: "usnr", amount: "5000" }], // Only service registration fee
gasLimit: "500000",
},
memo: "Complete onboarding: Identity + Vault + Service + Capabilities",
};
// Example: Cross-chain payment automation
const paymentTx = {
messages: [
// UCAN: Validate payment authority
{
type: "ucan/MsgValidateCapability",
token: ucanPaymentToken,
requestedAction: "payment:send",
},
// DID: Execute authorized transaction
{
type: "did/MsgExecuteTx",
signer: "did:sonr:alice123",
targetChain: "osmosis-1",
transaction: swapTransaction,
authorization: ucanToken,
},
],
};
```
## Performance Optimization
### Module-Specific Batching
Optimize transactions by batching within module boundaries:
1. **DWN Operations**: Batch vault updates and data operations
2. **Service Operations**: Group domain verifications and capability requests
3. **UCAN Processing**: Batch capability validations and delegation chains
4. **Cross-Chain Coordination**: Bundle InterchainAccount operations
### Gasless Operation Prioritization
Sonr prioritizes gasless operations to enhance user experience:
<Check>
Gasless vault claiming is prioritized by validators to enable zero-friction
onboarding. Service registration and MPC operations use dynamic pricing based
on network demand and stake requirements.
</Check>
### MPC Coordination Efficiency
Multi-party computation operations are optimized for performance:
```typescript
// MPC threshold signing optimization
interface MPCOptimization {
parallelShares: boolean; // Generate shares in parallel
precomputedCommitments: boolean; // Cache commitments
batchSigning: boolean; // Sign multiple capabilities together
networkSharding: boolean; // Distribute computation load
}
```
## Security Considerations
### Module-Specific Security
- **DID Security**: WebAuthn hardware-backed authentication prevents identity theft
- **UCAN Validation**: Cryptographic proof chains ensure capability authenticity
- **Vault Isolation**: MPC key sharding prevents single points of failure
- **Service Reputation**: Stake-based trust system deters malicious actors
### Zero-Knowledge Privacy
Sonr implements privacy-preserving transaction patterns:
```typescript
// Privacy-preserving operations
interface PrivacyFeatures {
zkProofs: {
ageVerification: boolean; // Prove age without revealing birthdate
balanceProofs: boolean; // Prove sufficient funds without amounts
reputationProofs: boolean; // Prove service quality without data
};
selectiveDisclosure: {
didDocuments: boolean; // Share only necessary identity claims
vaultData: boolean; // Controlled data access permissions
paymentHistory: boolean; // Private transaction records
};
}
```
### Best Practices for Sonr Transactions
1. **UCAN Validation**: Always verify capability tokens before execution
2. **MPC Coordination**: Ensure threshold requirements are met
3. **Gasless Limits**: Monitor gasless operation quotas and fallbacks
4. **Cross-Chain Safety**: Validate IBC channel security and timeouts
## Fee Distribution
SNR transaction fees are distributed to align network incentives:
<CardGroup>
<Card title="Validators (35%)">
Block proposers and MPC threshold signers receive primary rewards
</Card>
<Card title="Burn Pool (25%)">
Service registration fees burned for deflationary pressure
</Card>
<Card title="Community Treasury (25%)">
Development and ecosystem growth funds
</Card>
<Card title="Gasless Subsidy (10%)">
Funds vault claiming and onboarding operations
</Card>
<Card title="IBC Relayers (5%)">
Cross-chain message delivery and InterchainAccount operations
</Card>
</CardGroup>
### Module-Specific Fee Sources
```typescript
// Fee sources by module
interface ModuleFees {
svc: {
domainRegistration: "25% to burn, 75% to validators";
capabilityRequests: "Deposit-based, refundable on completion";
stakeSlashing: "100% to community treasury";
};
dwn: {
vaultClaiming: "Gasless (subsidized by treasury)";
storageOperations: "Standard gas fees";
mpcOperations: "Premium fees for computation";
};
ucan: {
rootCapabilityIssuance: "MPC coordination fees";
delegationValidation: "Minimal computational costs";
revocations: "Standard gas fees";
};
did: {
didRegistration: "One-time identity creation fee";
credentialLinking: "WebAuthn integration costs";
crossChainExecution: "IBC and InterchainAccount fees";
};
}
```
## Future Enhancements
### Revolutionary Capabilities in Development
- **AI-Powered Automation**: Natural language transaction commands through Motr Vault agents
- **Predictive Authorization**: Pre-approve expected transactions based on user patterns
- **W3C Payment Handler**: Native browser integration for seamless Web2/Web3 payments
- **Subscription Automation**: Recurring payments through UCAN capability delegation
- **Privacy-First Operations**: Full zero-knowledge transaction processing
- **Hardware Enclave Integration**: Dedicated Sonr hardware for enhanced security
- **Cross-Chain DeFi**: Seamless DeFi operations across all supported chains
- **Social Recovery Networks**: Trustless account recovery through guardian systems
### Standards-Based Interoperability
Building on open standards for maximum compatibility:
```typescript
// Future standards integration
interface FutureStandards {
w3cCompliance: {
paymentHandlerAPI: "Native browser payment integration";
webauthnLevel3: "Enhanced biometric authentication";
didCore2: "Next-generation identity standards";
};
crossChainStandards: {
ibcV2: "Enhanced cross-chain capabilities";
cosmwasmCompatibility: "Universal smart contract execution";
evmIntegration: "Ethereum Virtual Machine support";
};
privacyStandards: {
zkStarks: "Scalable zero-knowledge proofs";
selectiveDisclosure: "W3C verifiable credentials";
confidentialComputing: "Hardware-backed privacy";
};
}
```
-48
View File
@@ -1,48 +0,0 @@
---
title: "Configuring a Validator Node"
sidebarTitle: "Command Line"
description: "Setup a validator node on the Sonar Network in your local environment"
icon: "terminal"
---
**1. Initialize a blockchain node**
```sh
sonrd init localnet
```
**2. Generate account keys**
```sh
sonrd keys add test-validator
```
**3. Add the account to the genesis file**
```sh
sonrd add-genesis-account $(sonrd keys show test-validator -a) 1000000000000000000000000000stake,1000000000000000000000000000snr
```
**4. Generate a genesis transaction**
```sh
sonrd gentx test-validator 1000000000000000000000000000stake --chain-id localnet
```
**5. Collect genesis transactions**
```sh
sonrd collect-gentxs
```
**6. Validate the genesis file**
```sh
sonrd validate-genesis
```
**7. Start the blockchain node**
```sh
sonrd start
```
-8
View File
@@ -1,8 +0,0 @@
---
title: Production Network Deployment
description: Complete guide for becoming a Sonr blockchain validator - from setup to operations
icon: "ship"
sidebarTitle: Deploy Network & Services
---
-8
View File
@@ -1,8 +0,0 @@
---
title: Local Development Setup
description: Complete guide for becoming a Sonr blockchain validator - from setup to operations
icon: "code"
sidebarTitle: Setup Your Environment
---
-305
View File
@@ -1,305 +0,0 @@
---
title: Distribution
description: SNR token distribution model, allocation strategy, and economic distribution mechanisms
sidebarTitle: "Supply & Distribution"
icon: "chart-pie"
---
## Overview
The SNR token distribution is designed to balance immediate network needs with long-term sustainability, ensuring fair allocation across stakeholders while maintaining sufficient reserves for ecosystem growth.
**Total Supply: 1,000,000,000 SNR**
<Note>
Token distribution follows a carefully planned vesting schedule to prevent
market manipulation and ensure aligned incentives across all participants.
</Note>
## Supply Dynamics
### Circulating Supply Factors
The circulating token supply depends on several key factors:
<CardGroup>
<Card title="Initial Circulation">
200M SNR at genesis (20% of total supply)
</Card>
<Card title="Minted Tokens">
New tokens created through inflation for rewards and subsidies
</Card>
<Card title="Vesting Releases">
Scheduled releases from locked allocations over time
</Card>
<Card title="Staked Tokens">
Tokens locked in staking reducing effective circulation
</Card>
</CardGroup>
### Token Velocity
Token velocity measures how frequently tokens change hands and directly impacts token value:
```math
\text{Token Value} = \frac{\text{Economic Activity}}{\text{Circulating Supply} \times \text{Velocity}}
```
## Allocation Strategy
### Core Allocations
The token distribution prioritizes long-term network health through strategic allocations:
1. **Community & Ecosystem** (35% - 350M SNR)
- Airdrop Program: 100M SNR (10%)
- Testnet Incentives: 50M SNR (5%)
- Staking Rewards Pool: 100M SNR (10%)
- Ecosystem Grants: 100M SNR (10%)
2. **Team & Advisors** (20% - 200M SNR)
- Team Allocation: 150M SNR (15%)
- Advisors: 50M SNR (5%)
3. **Investors** (25% - 250M SNR)
- Seed Round: 75M SNR (7.5%)
- Series A: 100M SNR (10%)
- Strategic Round: 75M SNR (7.5%)
4. **Foundation Treasury** (15% - 150M SNR)
- Operations: 75M SNR (7.5%)
- Reserve Fund: 75M SNR (7.5%)
5. **Validator Incentives** (5% - 50M SNR)
- Genesis Validators: 30M SNR (3%)
- Delegation Program: 20M SNR (2%)
### Vesting Schedules
<Warning>
All non-circulating allocations follow strict vesting schedules to ensure
gradual market entry and prevent supply shocks.
</Warning>
#### Team Vesting
- **Team**: 12-month cliff, 48-month linear vest
- **Advisors**: 6-month cliff, 24-month linear vest
- No transfers until cliff periods expire
#### Investor Vesting
- **Seed Round**: 6-month cliff, 36-month linear vest
- **Series A**: 3-month cliff, 24-month linear vest
- **Strategic Round**: 25% immediate, remainder over 18 months
#### Community Vesting
- **Airdrop**: 25% immediate, 75% over 12 months
- **Testnet**: Distribution over 6-month testnet period
- **Ecosystem Grants**: Project milestone-based releases
#### Foundation Vesting
- **Operations**: 10% at genesis, 90% over 5 years
- **Reserve Fund**: Minimum 3 years lockup, governance approval required
## Inflation Mechanism
### Reward Distribution
The network implements controlled inflation to incentivize participation:
<CardGroup>
<Card title="Validator Rewards">
Block rewards for consensus participation distributed pro-rata to stake
</Card>
<Card title="Highway Services">
Compensation for off-chain computation, storage, and routing services
</Card>
<Card title="Governance Rewards">
Incentives for proposal creation and voting participation
</Card>
</CardGroup>
### Inflation Schedule
**Year 1**: 15% inflation (aggressive growth)
- Focus on network bootstrapping
- High rewards for early adopters
**Year 2**: 12% inflation (continued expansion)
- Stabilization period begins
- Balanced growth incentives
**Year 3**: 9% inflation (stabilization)
- Network maturation
- Sustainable reward levels
**Year 4+**: 7% inflation (long-term sustainability)
- Minimal dilution
- Self-sustaining economics
## Economic Safeguards
### Anti-Manipulation Measures
1. **Vesting Cliffs**: Prevent immediate dumps from large holders
2. **Staking Lockups**: Reduce liquid supply through validator requirements
3. **Governance Delays**: Time-locked treasury withdrawals
4. **Slashing Penalties**: Discourage malicious validator behavior
### Supply Controls
The network implements several mechanisms to manage token supply:
- **Fee Burning**: 50% of transaction fees burned (deflationary)
- **Treasury Management**: Governance-controlled minting caps
- **Dynamic Rewards**: Adjustment based on network participation
- **Lock Incentives**: Higher rewards for longer staking periods
### Centralization Risks
- No single entity controls >20% at genesis
- Team tokens have longest vesting (4 years)
- Foundation treasury requires governance approval
- Validator set caps prevent concentration
### Market Stability
- Staggered vesting prevents supply shocks
- Fee burning provides deflationary pressure
- Utility demand from identity services
- Cross-chain value capture mechanisms
## Token Utility & Value Accrual
### Primary Utilities
<CardGroup>
<Card title="Network Security">
Staking for validation and delegation
</Card>
<Card title="Governance">
Voting on protocol upgrades and parameters
</Card>
<Card title="Transaction Fees">
Gas payments for network operations
</Card>
<Card title="Identity Services">
Premium features and API access
</Card>
</CardGroup>
### Value Accrual Mechanisms
1. **Fee Burning**: 50% of transaction fees burned (deflationary)
2. **Staking Yield**: 7-15% APR depending on network participation
3. **Identity Revenue**: Enterprise licensing fees distributed to stakers
4. **Cross-chain Value**: IBC transfer fees and bridge operations
### Staking Targets
- **Target staking ratio**: 65%
- **Validator set**: 50-100 active validators
- **Minimum stake**: 1M SNR (0.1% of supply)
- **Delegation minimum**: 1 SNR (accessible to all)
### Vesting Schedule Overview
| Category | Immediate | 6 Months | 12 Months | 24 Months | 36 Months | 48 Months |
|----------|-----------|----------|-----------|-----------|-----------|-----------|
| Airdrop | 25% | 50% | 75% | 100% | - | - |
| Team | 0% | 0% | 12.5% | 37.5% | 62.5% | 100% |
| Seed Investors | 0% | 0% | 16.7% | 50% | 83.3% | 100% |
| Series A | 0% | 25% | 50% | 100% | - | - |
| Foundation | 10% | 28% | 46% | 64% | 82% | 100% |
<Check>
The distribution model prioritizes network security, ecosystem growth, and
fair participant rewards while maintaining economic sustainability.
</Check>
## Distribution Timeline
### Pre-Launch (Months -6 to 0)
- Team allocation locked
- Investor funds raised
- Testnet incentives distributed
- Airdrop snapshot taken
### Genesis (Month 0)
- 200M SNR circulating supply
- Genesis validators receive allocation
- Foundation treasury initialized
- Staking rewards begin
### Year 1 (Months 1-12)
- Airdrop vesting releases 75M SNR
- Team cliff expires, vesting begins
- Series A completes vesting
- Ecosystem grants distributed
### Year 2-3 (Months 13-36)
- Seed round completes vesting
- Team reaches 62.5% vested
- Foundation operations fully unlocked
- Validator program matured
## Economic Incentives
### Genesis Validator Program
- **Genesis Validators**: 30M SNR (3%)
- 50 validators × 600,000 SNR each
- 24 months minimum staking lockup
- 99%+ uptime and governance participation required
### Delegation Program
- **Foundation Delegations**: 20M SNR (2%)
- 6-month renewable terms
- Performance-based allocation
- Support for high-performing validators
### Maturity Phase (Year 3+)
- Stabilized inflation rate
- Self-sustaining economics
- Community-driven allocation
## Success Metrics
### Year 1 Targets
- 50% of supply staked
- 50+ active validators
- 100k+ active addresses
- $10M+ in identity service revenue
### Year 3 Targets
- 65% of supply staked
- 75+ active validators
- 1M+ active addresses
- $100M+ total value locked
### Long-term Vision (5+ years)
- Self-sustaining network economics
- Deflationary token model
- Industry-standard identity infrastructure
- Billion-dollar ecosystem value
## Transparency Commitments
All token distributions are:
- Publicly verifiable on-chain
- Subject to regular audits
- Reported in quarterly updates
- Governed by smart contracts
-98
View File
@@ -1,98 +0,0 @@
---
title: "Governance"
sidebarTitle: "Protocol Governance"
description: "Governance is the process of making decisions on behalf of a group of people or organization"
icon: "landmark"
---
The Demand is rooted from participation in the governance process, determining upgrades to the protocol or allocation of resources, and supply is the result of the tokens eligible to participate in the governance process.
On Sonr we will be leveraging a **delegate stake** mechanism in order to **optimize buy-in** for users in the network. It imposes an **excess opportunity cost** if **slashing** is implemented.
**Seven elements of economic design for governance**
1. Scope of Decisions
2. Stakeholders
3. Policy Research & Development
4. Proposal Process
5. Information Distribution Systems
6. Decision Making Procedures
7. Implementation & Property Rights
## Yearly Governance Cycle
- Two General Elections for proposals yearly
- Proposals need at least 20% of all validator approval to move into general election
- 51% of General Vote required for proposal to pass
- Emergency Voting sessions can be called if requested by 51% of Governance Participants
### ☀️ Summer Cycle
| | Start Date | End Date |
| ----------------------------- | ---------- | -------- |
| Validator Vetting | 5/17 | 5/31 |
| Proposals Posted | 6/1 | |
| General Election of Proposals | 6/2 | 6/15 |
| Results Posted | 6/16 | |
### ❄️ Winter Cycle
| | Start Date | End Date |
| ----------------------------- | ---------- | -------- |
| Validator Vetting | 11/17 | 11/31 |
| Proposals Posted | 12/1 | |
| General Election of Proposals | 12/2 | 12/15 |
| Results Posted | 12/16 | |
## First Rollout Phase
These are the measures the core Sonr team will be undertaking prior and during test-net deployment.
### Establish Community
Build a loyal community of token holders that represent our platforms stakeholder groups.
- All of our existing token holders (this includes our founder and early investors) will be staking their Sonr Token in order to be incentivized to hold tokens and participate in voting
- We will be actively networking with DeFi projects, blockchain service providers, and etc. in order to participate
### Build Dashboards
We are under the process of creating a [dashboard](https://sonrscan.io) in order to provide key metrics to our stakeholders
- **Technology**: Pricing, total fees paid, total storage used, uptime
- **Governance**: Identities, proposal outcomes, community participation
### Polling System
Our initial polling system will be token weighted and not enforceable, in order to build engagement.
- Users will submit qualitative updates to the system and have them up/downvoted
- The core team will then assess the submissions and select viable community suggestions into upgrades
- Along side this, our team will locate and commission the development of a proposal for any technical upgrades without enforceable code proposals
- We will be able to provide clarity, external security, and in applicable cases the economic evaluation from the impacts of proposals to the community.
## Second Rollout Phase
Phase 2 will be underway in the months prior to main-net deployment, along with an extensive security audit.
### On-Chain Execution
We will be introducing an on-chain, executable code-based governance system in stages with majority rule voting.
**Stage 1:** Grants Program
- Incorporate community voting for grant recipient selection
- Allow users to submit proposals for grant allocation
**Stage 2:** Subsidies and Rewards
- Proposals to update subsidies and rewards can be submitted by Core Sonr Team or third parties
- Core Team will be responsible for considering funding security, and economic audits for proposals
**Stage 3:** Technical Upgrades
- These include pricing, security, and bug fixes
- Proposals will be spearheaded by the Sonr Team and/or its delegates
### Maintenance
When on-chain governance has come to fruition, the core Sonr team will be also maintaining the polling-based system with subsidized development to minimize barrier to entry. This will be incorporating governance within the Motor Nebula Widget itself.
-24
View File
@@ -1,24 +0,0 @@
---
title: "Rewards"
sidebarTitle: "Network Rewards"
description: "Incentivizing the Sonr Ecosystem"
icon: "gem"
---
In order to maximize buy-in and network availability for the Sonr ecosystem, we will be implementing an empirical Token Rewards mechanism. Rewards are a way to create inflation in order to dilute the token value, resulting in an affordable onboarding and operational experience for the end user. The goal behind Sonr Token rewards is to subsidize Highway based computation, in order to promote value creation and platform growth.
### Governance Participation
At the time of Main-net launch, phase one of the Sonr governance rollout will be implemented and will result in a set of rewards for participants.
**Submission of Proposals**
Users will be incentivized to submit blockchain improvement or grant proposals to be reviewed by voting participants. In order to prevent game from low quality and out of scope proposals, a clear-cut submission and evaluation process will be put into place on a public facing FAQ website.
- Proposers are required to stake before submission — _“Application Fee”_
**Proposal Voting**
In order to prevent innovation from halting on the Sonr ecosystem, we incentivize all staked users to participate in the polling process for community submitted proposals. Users are then rewarded for good-faith participation in voting, while also sustaining momentum.
- Existing Stakeholders are rewarded for good-faith participation in voting
-40
View File
@@ -1,40 +0,0 @@
---
title: "Staking"
sidebarTitle: "Staking Functions"
description: "Understand the staking mechanism on Sonr"
icon: "vault"
---
The clear path for the underlying application for staking is utilizing a Delegated Proof of Stake (DPoS) validation mechanism. Down the line Sonr will provide IPFS storage nodes, and governance participation in the staking model.
<Tip>
Demand = Obtain rewards, goods, or services through staking or locking up the token.
Supply = Tokens staked or locked up.
</Tip>
On Sonr we will be leveraging a **delegate stake** mechanism in order to **optimize buy-in** for users in the network. It imposes an **excess opportunity cost** if **slashing** is implemented.
With this being said, there are some challenges in implementing staking:
- The token must already have value
- Allocating power or influence via staking gives major edge to wealthy users
- They are frequently subject to gaming and coordination problems
However there is substantial benefit in incorporating a staking mechanism, with the following criteria met we can create a sustainable design:
1. The upfront capital required to stake should not significantly discourage them to stake
2. If a stakeholder group is making decisions that materially harm the network, they would be punished via slashing the stake.
3. Stakeholders can make decisions that positively impact the future network health and token price, therefore holding stake can promote positive Sonr growth
### Validator Nodes for Cosmos ASB
Sonr is a Cosmos powered blockchain which is powered by a TenderMint validation mechanism. The default consensus for TenderMint is DPoS and works with our current ABCI implementation for Transaction Verification. DPoS is a twist on Proof of Stake consensus that relies upon a group of delegates to validate blocks on behalf of all nodes in the network . Witnesses are elected by stakeholders at a rate of one vote per share per witness . Coin age is irrelevant. All coins that are mature will add the same staking weight (usually 1 in the wallet hover display) Results in stable, consistent interest only for active wallets and only with small inputs.
### IPFS Storage Nodes (excluding FileCoin)
When deploying standalone highway nodes, requiring minimum stake would be an additional method to enforce availability requirements. By having a stake we can ensure that the user deploying a node has a base level of buy-in within the ecosystem.
### Governance Participants
We will be incorporating a similar strategy to AlgoRand in our governance rollout. This is covered more extensively in the [Governance](https://www.notion.so/Governance-af1251b1b7aa41fab16c53dd9fe6ef63) section.
-201
View File
@@ -1,201 +0,0 @@
---
title: Utility
description: Use cases and utility functions of the SNR token including staking, governance, and network operations
sidebarTitle: "Network Utility"
icon: "cog"
---
## Overview
The SNR token serves as the native utility token of the Sonr network, enabling various functions from transaction processing to governance participation. Its multi-faceted utility design ensures sustained demand and value accrual.
<Note>
The SNR token's utility is designed to grow with the network, adding new use
cases as the ecosystem expands while maintaining core functions for network
security and operations.
</Note>
## Core Utilities
### 1. Means of Payment
The primary utility of SNR is facilitating transactions across the Sonr blockchain for user account management and application operations.
<CardGroup>
<Card title="Transaction Fees">
All on-chain operations require SNR for gas fees and computational resources
</Card>
<Card title="Service Payments">
Payment for Highway services, storage, and off-chain computation
</Card>
<Card title="Application Fees">
Developers pay SNR to register and update applications on the network
</Card>
</CardGroup>
### 2. Staking Mechanisms
SNR tokens enable network security and participation through various staking options:
#### Validator Staking
- **Minimum Stake**: Required SNR deposit to run a validator node
- **Delegated Staking**: Users can delegate SNR to validators for rewards
- **Slashing Protection**: Validators must maintain good behavior or risk stake loss
#### Service Node Staking
- **Highway Nodes**: Stake required for running Highway service nodes
- **IPFS Storage**: Minimum stake for operating storage infrastructure
- **Availability Guarantee**: Staking ensures node uptime and reliability
<Warning>
Staking locks tokens for a specified period, reducing circulating supply while
earning rewards for network participation.
</Warning>
### 3. Governance Participation
SNR tokens grant voting power in the decentralized governance system:
<CardGroup>
<Card title="Proposal Creation">
Stake SNR to submit governance proposals with anti-spam mechanisms
</Card>
<Card title="Voting Rights">
One token equals one vote in governance decisions
</Card>
<Card title="Participation Rewards">
Earn SNR for active governance participation and quality proposals
</Card>
</CardGroup>
## Module-Specific Operations
### Service Module (x/svc)
SNR tokens are required for service operations within the decentralized service marketplace:
- **Service Registration**: Pay SNR registration fees to claim unique TLD domains (e.g., `music.sonr`, `defi.sonr`)
- **Capability Requests**: SNR deposits for requesting root capabilities via MPC signing
- **Service Updates**: Fees for modifying service metadata or requesting additional permissions
- **TLD Management**: Economic safeguards prevent domain squatting through registration fees
<Note>
Service registration fees are burned or sent to the community pool based on
governance parameters, creating deflationary pressure.
</Note>
### DWN Module (x/dwn)
The DWN module enables revolutionary gasless onboarding while using SNR for advanced operations:
- **Gasless Vault Claiming**: Initial `MsgClaimVault` transactions require no SNR fees
- **Vault Configuration**: SNR fees for updating vault settings and WASM runtime upgrades
- **MPC Operations**: Transaction fees for multi-party computation within secure enclaves
- **Cross-Chain Operations**: SNR payments for bridging assets and multi-chain vault management
### UCAN Module (x/ucan)
Authorization operations require SNR for security and spam prevention:
- **Root Capability Issuance**: SNR fees for initiating MPC threshold signing requests
- **Revocation Processing**: Transaction fees for on-chain capability revocations
- **Delegation Chain Verification**: Computational costs for validating complex authorization chains
- **MPC Signing Participation**: Validator rewards for participating in multi-party computation
### DID Module (x/did)
Identity operations use SNR for registration and management:
- **DID Registration**: Fees for creating new decentralized identifiers
- **Authentication Linking**: SNR costs for adding WebAuthn credentials or other auth methods
- **Assertion Management**: Fees for linking/unlinking identity claims and verifications
- **Transaction Execution**: SNR payments for UCAN-authorized transactions on behalf of DIDs
## Economic Mechanisms
### Demand Drivers
The token's value is driven by multiple demand sources:
```math
\text{Demand} = \text{Transaction Volume} + \text{Staking Locked} + \text{Governance Participation}
```
<CardGroup>
<Card title="Network Growth">
More users and applications increase transaction demand
</Card>
<Card title="Staking Returns">
Attractive yields encourage long-term token locking
</Card>
<Card title="Utility Expansion">
New features and services create additional use cases
</Card>
</CardGroup>
### Supply Dynamics
Effective supply is reduced through:
- **Staking Lockups**: Validators and delegators lock tokens
- **Governance Stakes**: Proposal creation requires token deposits
- **Service Collateral**: Service providers stake SNR for TLD registration
- **Fee Burns**: Partial fee burning reduces total supply
## Developer Incentives
### Service Development
- **Service Registration Subsidies**: Reduced TLD domain costs for verified developers
- **Root Capability Grants**: Free MPC signing for approved service capabilities
- **Revenue Sharing**: Earn portion of service interaction fees through UCAN delegation
- **Integration Support**: Subsidized vault interaction costs for new services
### Infrastructure Provision
- **Validator Operations**: SNR staking rewards for consensus participation and MPC signing
- **MPC Node Operations**: Additional rewards for multi-party computation services
- **IPFS Storage**: Compensation for decentralized vault configuration storage
- **UCAN Verification**: Fees for running delegation chain validation services
<Check>
The SNR token creates a sustainable economic model where users, developers,
and infrastructure providers all benefit from network growth.
</Check>
## Future Utilities
### Enhanced Module Features
- **Advanced UCAN Features**: Zero-knowledge capability proofs and cross-chain validation
- **Vault Upgrades**: Seamless WASM runtime updates and social recovery mechanisms
- **Service Marketplace**: Categorized service discovery with reputation systems
- **Multi-sig Services**: Shared service ownership through DAO governance
### Cross-Chain Integration
- **IBC UCAN Verification**: Cross-chain capability validation fees
- **Multi-Chain Vault Operations**: Enhanced cross-chain asset management
- **Bridge Service Registration**: Specialized TLD domains for bridge operators
- **Interchain DID Resolution**: Cross-chain identity verification services
### Privacy and Security Enhancements
- **Privacy-Preserving MPC**: Enhanced secure multi-party computation features
- **Conditional Revocations**: Time or event-based capability revocations
- **Hardware Vault Support**: Integration with dedicated secure hardware
- **AI-Powered Workflows**: Natural language vault command processing
## Utility Summary
The SNR token's utility encompasses:
1. **Essential Operations**: Core network functions and transactions
2. **Security Provision**: Staking for network consensus and safety
3. **Governance Rights**: Democratic participation in protocol decisions
4. **Economic Incentives**: Rewards for valuable contributions
5. **Access Control**: Gateway to premium features and services
This comprehensive utility design ensures the SNR token remains central to the Sonr ecosystem's growth and sustainability.
-235
View File
@@ -1,235 +0,0 @@
---
title: Values
description: Value proposition and economic principles underlying the SNR token and its role in the ecosystem
sidebarTitle: "Core Values"
icon: "heart"
---
## Overview
The SNR token's value derives from fundamental economic principles, network utility, and carefully designed tokenomics. Understanding these value drivers helps participants make informed decisions about their involvement in the Sonr ecosystem.
<Note>
Token value = Fundamental Value + Token-Specific Non-Fundamentals +
Market/Industry Non-Fundamentals
</Note>
## Fundamental Value Drivers
### Economic Activity
The core value proposition stems from actual network usage across Sonr's core modules:
```math
\text{Fundamental Value} = \frac{\text{Economic Activity}}{\text{Circulating Supply} \times \text{Velocity}}
```
<CardGroup>
<Card title="Service Registration">
TLD domain fees and capability requests through the Service module
</Card>
<Card title="Identity Operations">
DID registration, authentication linking, and assertion management
</Card>
<Card title="Authorization Services">
UCAN issuance, revocation processing, and MPC signing operations
</Card>
<Card title="Vault Operations">
DWN configuration updates and cross-chain management beyond gasless claiming
</Card>
</CardGroup>
### Network Effects
Value increases exponentially with network growth:
1. **User Growth**: More vault claims and DID registrations increase identity network value
2. **Service Adoption**: More TLD registrations create a valuable service namespace
3. **Developer Integration**: Services leveraging UCAN authorization expand utility
4. **Validator Participation**: MPC signing nodes improve security and capability issuance
## Property Rights
The SNR token grants specific rights that create intrinsic value:
### Governance Rights
- **Protocol Decisions**: Vote on network upgrades and parameters
- **Treasury Management**: Control community fund allocation
- **Economic Policy**: Influence inflation and reward distribution
### Economic Rights
- **Staking Rewards**: Earn returns for securing the network
- **Fee Sharing**: Participate in protocol revenue distribution
- **Priority Access**: Enhanced service levels for token holders
### Network Access
- **Service Registration**: Required for claiming TLD domains and registering services
- **Identity Management**: Essential for DID operations and authentication linking
- **Capability Authorization**: Needed for UCAN issuance and delegation chain verification
- **Vault Configuration**: Access to advanced vault features beyond gasless claiming
<Check>
The combination of governance, economic, and access rights creates a
comprehensive value proposition for SNR holders.
</Check>
## Value Accrual Mechanisms
### Supply Reduction
Multiple mechanisms reduce effective token supply:
<CardGroup>
<Card title="Staking Lockups">
Validators and delegators lock tokens for rewards
</Card>
<Card title="Fee Burning">
Portion of transaction fees permanently removed
</Card>
<Card title="Governance Deposits">Tokens locked for proposal creation</Card>
<Card title="Service Registration">
TLD domain registration fees create deflationary pressure
</Card>
</CardGroup>
### Demand Growth
Sustainable demand drivers include:
1. **Organic Growth**: Natural increase in users and transactions
2. **New Use Cases**: Expanding utility through development
3. **Partnership Integration**: External protocols adopting SNR
4. **Premium Features**: Advanced services requiring SNR payment
## Economic Sustainability
### Revenue Model
The network generates sustainable revenue through module-specific operations:
- **Service Module**: TLD domain registration fees and capability request deposits
- **DID Module**: Identity registration, authentication linking, and assertion management fees
- **UCAN Module**: Root capability issuance and revocation processing fees
- **DWN Module**: Advanced vault configuration and cross-chain operation fees
- **Validator Operations**: MPC signing participation and consensus rewards
### Cost Structure
Efficient operations maintain profitability:
- **MPC Infrastructure**: Multi-party computation hardware and coordination costs
- **Module Development**: Ongoing improvements to Service, DID, UCAN, and DWN modules
- **Security Audits**: WASM runtime, capability verification, and cryptographic audits
- **Gasless Subsidies**: Network-funded vault claiming to remove onboarding barriers
## Market Dynamics
### Price Discovery
Token price reflects multiple factors:
<Warning>
While fundamental value provides a baseline, market sentiment and external
factors significantly influence short-term price movements.
</Warning>
### Non-Fundamental Factors
#### Token-Specific
- Marketing campaigns and viral growth
- Exchange listings and liquidity
- Partnership announcements
- Technical milestones
#### Market-Wide
- Cryptocurrency market cycles
- Regulatory developments
- Macroeconomic conditions
- Technology trends
## Value Propositions
### For Users
1. **Digital Sovereignty**: Control your DID and vault without intermediaries
2. **Gasless Onboarding**: Free vault claiming removes barriers to entry
3. **Seamless Authentication**: WebAuthn integration with hardware-backed security
4. **UCAN Authorization**: Granular, revocable permissions replace dangerous unlimited approvals
### For Developers
1. **Service Registration**: Claim unique TLD domains for decentralized services
2. **UCAN Integration**: Built-in authorization system with capability delegation
3. **Identity Infrastructure**: Native DID support with WebAuthn authentication
4. **Revenue Models**: Earn through UCAN-mediated service interactions and fee sharing
### For Validators
1. **MPC Signing Rewards**: Additional compensation for multi-party computation participation
2. **Capability Issuance**: Central role in root UCAN creation through threshold signing
3. **Network Security**: Staking rewards for consensus participation and vault protection
4. **Governance Influence**: Vote on protocol parameters and module improvements
### For Investors
1. **Module Expansion**: Growing utility across Service, DID, UCAN, and DWN modules
2. **Deflationary Pressure**: Service registration fees and transaction burns reduce supply
3. **Identity Network Effects**: Value compounds as more DIDs and services join the ecosystem
4. **Technical Innovation**: Cutting-edge MPC, WASM, and WebAuthn integration
## Comparative Advantages
### vs. Traditional Systems
- **No Intermediaries**: Direct value transfer
- **Global Access**: Permissionless participation
- **Transparency**: On-chain verification
- **User Control**: Self-sovereign identity
### vs. Other Blockchains
- **Native Authorization**: Built-in UCAN capability system replaces external auth
- **Gasless Onboarding**: Free vault claiming removes crypto barriers
- **MPC Security**: Multi-party computation eliminates single points of failure
- **WebAuthn Integration**: Hardware-backed authentication without seed phrase management
## Long-Term Value Thesis
### Sustainable Growth
The SNR token's value proposition centers on:
1. **Real Utility**: Actual usage drives demand
2. **Network Effects**: Growth compounds value
3. **Economic Alignment**: All participants benefit
4. **Technical Innovation**: Continuous improvement
### Value Metrics
Key indicators of fundamental value:
<CardGroup>
<Card title="Vault Claims">
Growing number of gasless vault registrations
</Card>
<Card title="Service Registrations">
TLD domain claims and capability requests
</Card>
<Card title="UCAN Issuance">
Authorization activity and delegation chains
</Card>
<Card title="MPC Participation">
Validator involvement in threshold signing
</Card>
</CardGroup>
<Note>
The SNR token represents ownership in a new paradigm of user-controlled
internet infrastructure, with value derived from real utility, network
effects, and sustainable economics.
</Note>
-158
View File
@@ -1,158 +0,0 @@
---
title: Sending Payments
description: A guide for sending payments and transactions on the Sonr blockchain network
icon: "credit-card"
---
Sending payments on the Sonr network is designed to be simple and secure, whether you are building a user-facing application or a backend service. This guide covers the different ways to initiate and manage payments.
## The Sonr Payment Model
Sonr payments are built on a capability-based system using UCANs. This means that instead of signing every transaction, users delegate permission to their Vault to execute payments within predefined limits.
<CardGroup>
<Card title="Programmable Payments" href="/blockchain/modules/svc/ucan">
Automate recurring payments and subscriptions with UCANs.
</Card>
<Card title="Cross-Chain Transfers" href="/blockchain/network">
Send assets to other blockchains seamlessly through IBC.
</Card>
<Card title="Token Economics" href="/blockchain/token/">
Learn about token distribution and transaction fees.
</Card>
</CardGroup>
## Sending a Simple Transfer
This example demonstrates how to send a simple transfer from a user's Vault in a browser application.
<Steps>
<Step>
### 1. Authenticate the User
First, ensure the user is authenticated and you have a valid session.
```javascript
import { Sonr } from "@sonr/sdk";
const sonr = new Sonr({ httpUrl: "http://localhost:1317" });
const session = await sonr.authenticate();
```
</Step>
<Step>
### 2. Request Payment Capability
Before sending a payment, your application must request the necessary permission from the user.
```javascript
const paymentCapability = await session.vault.requestCapability({
action: "bank/send",
constraints: {
maxAmount: "10000000usnr", // 10 SNR
to: "snr1..._recipient_address_...",
},
});
if (!paymentCapability.approved) {
throw new Error("Payment not authorized by user");
}
```
</Step>
<Step>
### 3. Execute the Payment
Once you have the capability, you can execute the payment.
```javascript
const result = await session.vault.send({
to: "snr1..._recipient_address_...",
amount: "1000000usnr", // 1 SNR
ucan: paymentCapability.ucan, // Provide the authorized UCAN
});
console.log(`Payment successful! TxHash: ${result.txhash}`);
```
</Step>
</Steps>
## Backend Payments
For backend services, payments can be initiated using a delegated UCAN.
<Steps>
<Step>
### 1. Obtain a Delegated UCAN
Your service must first obtain a delegated UCAN from the user that grants permission to send payments on their behalf.
</Step>
<Step>
### 2. Use the Go SDK to Send
Your Go backend can use the delegated UCAN to send a payment.
```go
package main
import (
"context"
"fmt"
"github.com/sonr-io/sonr/x/sonr/pkgs/sdk"
)
func SendPaymentOnBehalfOfUser(userDID, recipientAddress, amount, delegatedUcan string) error {
sonr, _ := sdk.NewSonr(rpcEndpoint, "")
// The SDK will automatically use the UCAN for authorization
result, err := sonr.SendFrom(userDID, recipientAddress, amount, delegatedUcan)
if err != nil {
return err
}
fmt.Printf("Payment sent! TxHash: %s\n", result.TxHash)
return nil
}
```
</Step>
</Steps>
## Cross-Chain Payments
Sonr supports cross-chain payments through the Inter-Blockchain Communication (IBC) protocol.
### Sending to another IBC-enabled chain
```javascript
const result = await session.vault.send({
to: "osmo1..._recipient_address_...", // An Osmosis address
amount: "1000000usdc", // 1 USDC
via: "ibc/transfer/channel-0", // The IBC channel to use
});
console.log(`Cross-chain payment successful! TxHash: ${result.txhash}`);
```
## Querying Payment History
You can query a user's payment history from their Vault.
```javascript
const history = await session.vault.getPaymentHistory({ limit: 10 });
console.log("Payment History:", history.records);
```
## Next Steps
- [Explore the UCAN authorization model](/blockchain/modules/svc/ucan)
- [Learn about blockchain modules](/blockchain/)
- [See the API Reference](/reference/)
-279
View File
@@ -1,279 +0,0 @@
---
title: Validator Node Onboarding
description: Complete guide for becoming a Sonr blockchain validator from setup to operations
icon: "boxes"
sidebarTitle: Become a Validator
---
## Overview
Sonr is a Cosmos SDK-based blockchain focused on decentralized identity and asset management. This guide provides comprehensive information for validators interested in securing the Sonr network and participating in its specialized identity infrastructure ecosystem.
<Note>
Sonr is currently in testnet/development phase. While there's no confirmed
mainnet launch date, early participation in testnet operations is highly
recommended for prospective validators.
</Note>
## Network Positioning
Sonr differentiates itself within the Cosmos ecosystem through:
- **Decentralized Identity Focus**: Implementing W3C DID standards and WebAuthn integration
- **Highway Architecture**: Specialized node infrastructure for identity services
- **Fast Wallet Generation**: 600ms wallet creation with IPFS storage capabilities
- **Developer Tools**: React SDKs and identity-focused APIs
## Hardware Requirements
Professional validator operations require substantial infrastructure investment to ensure network security and reliability.
### Essential Specifications
<Card title="CPU">
**Minimum**: 4 cores x86 processor **Recommended**: 8+ cores for production
</Card>
<Card title="RAM">
**Minimum**: 16GB with NVMe swap **Recommended**: 32GB+ for optimal
performance
</Card>
<Card title="Storage">
**Required**: 1TB+ NVMe SSD **Note**: Regular SSDs often insufficient for
I/O demands
</Card>
<Card title="Network">
**Minimum**: 100Mbps dedicated bandwidth **Usage**: Multi-gigabyte daily
traffic expected
</Card>
### Infrastructure Investment
- **Initial Setup**: Professional-grade hardware required for reliable operations
- **Monthly Operating**: Tier 3+ datacenter colocation recommended for optimal performance
- **Redundancy**: Full backup server with identical specifications required
## Quick Setup with NPX
Sonr provides an NPX-based tool to streamline validator deployment:
```bash
npx @sonr/validator-setup my-validator --chain=sonr-testnet-1
```
The interactive wizard guides you through:
<Steps>
<Step>
### Network Configuration Select testnet or mainnet and configure chain
parameters
</Step>
<Step>
### Hardware Verification Automated check of system requirements and
recommendations
</Step>
<Step>### Key Generation Secure key creation with HSM support options</Step>
<Step>
### Sentry Architecture Deploy protective sentry node infrastructure
</Step>
<Step>
### Monitoring Setup Install Prometheus + Grafana monitoring stack
</Step>
<Step>
### Security Hardening Configure firewalls and security best practices
</Step>
</Steps>
## Network Parameters
### Validator Network Structure
For a 50-validator network with 1 billion token supply:
#### Early Network Phase (30% staking ratio)
- **Inflation**: 15% (bootstrap incentives)
- **Validator Participation**: Commission-based earnings structure
- **Delegator Rewards**: High early participation incentives
#### Bootstrap Phase (50% staking ratio)
- **Inflation**: 12% (balanced growth)
- **Validator Participation**: Balanced commission structure
- **Delegator Rewards**: Sustainable growth incentives
#### Mature Network (67% staking ratio)
- **Inflation**: 7% (long-term stability)
- **Validator Participation**: Stable commission structure
- **Delegator Rewards**: Long-term participation incentives
### Recommended Parameters
- **Minimum validator stake**: 1,000,000 SNR (0.1% of supply)
- **Optimal self-bond**: 2,000,000 SNR (0.2% of supply)
- **Commission range**: 5-15% (5% mandatory minimum)
- **Inflation range**: 5-18% with 8% target at 65% staking
- **Unbonding period**: 21 days standard
## Operational Considerations
### Infrastructure Requirements
Validators should ensure adequate infrastructure to support reliable network participation.
### Reward Sources
- **Block Rewards**: Inflation-based token issuance for network security
- **Transaction Fees**: Gas fees and proposer bonuses from network activity
- **Additional Rewards**: ICS rewards, cross-chain fees, and ecosystem participation
## Security Architecture
### Sentry Node Design
Implement a multi-layered security approach:
```
Internet → Sentry Nodes (3-5) → Private Network → Validator Node
```
### Critical Security Implementations
<Card title="Key Management">
- Hardware Security Modules (HSM) - Tendermint Key Management System (TMKMS)
- Remote signing capabilities
</Card>
<Card title="Network Security">
- Geographic distribution across datacenters - Automated double-sign
prevention - Comprehensive monitoring and alerting
</Card>
<Card title="Operational Security">
- 99.9%+ uptime requirements - Encrypted backups across locations - Strict
access controls and audits
</Card>
### Key Types
1. **Consensus Key**: Hot key for block signing (ed25519)
2. **Operator Key**: Cold storage for validator transactions (secp256k1)
3. **Node Key**: P2P network identification
## Implementation Roadmap
### Phase 1: Testnet Participation (Months 1-3)
<Note type="warning">
Begin with testnet operations to gain experience without operational risk.
</Note>
- Hardware procurement and datacenter setup
- Team training on Cosmos SDK operations
- Security procedure development
- Community engagement and reputation building
### Phase 2: Infrastructure Preparation (Month 4)
- Deploy production hardware in Tier 3+ datacenters
- Implement sentry node architecture across regions
- Configure monitoring and alerting systems
- Establish 24/7 operational procedures
### Phase 3: Mainnet Genesis (Month 5+)
- Participate in genesis ceremony
- Self-bond required SNR tokens (1-2M recommended)
- Configure optimal commission rates (start at 5-7%)
- Launch validator with foundation delegation support
### Phase 4: Operational Excellence (Ongoing)
- Maintain 99.9%+ uptime through redundant systems
- Actively participate in governance proposals
- Provide regular updates to delegators
- Contribute to ecosystem development
## Foundation Support Programs
### Delegation Program
Sonr implements a foundation delegation program allocating 10-15% of total supply:
- **Coverage**: 30-35 validators (60-70% of active set)
- **Requirements**: 3-month testnet participation
- **Terms**: 6-12 month delegation periods
- **Renewal**: Performance-based criteria
- **Focus**: Geographic distribution and community contributions
### Testnet Incentives
- **Monthly Rewards**: Testnet participation incentives for active validators
- **Mainnet Slots**: Top performers receive guaranteed mainnet positions
- **Foundation Delegations**: 6-month delegations of 2M tokens for top testnet validators
## Monitoring and Operations
### Prometheus Metrics
- System metrics (CPU, RAM, disk, network)
- Tendermint consensus metrics (height, voting power, peer count)
- Custom application metrics (missed blocks, proposal statistics)
### Critical Alerts
- Low peer count (less than 5 peers)
- High block time intervals
- Resource utilization warnings
- Disk space projections
### Grafana Dashboards
- Real-time performance monitoring
- Historical trend analysis
- Multi-validator comparison views
## Risk Management
### Technical Risks
- **Double-signing prevention**: Proper key management and TMKMS
- **State corruption recovery**: Automated backup systems
- **Network partitions**: Geographic distribution strategies
- **Upgrade failures**: Staging environment testing
### Operational Risks
- **Network participation**: Maintain consistent validator performance
- **Delegation concentration**: Limits on single delegator exposure
- **Commission optimization**: Community-competitive rates
- **Infrastructure management**: Efficient operational procedures
## Future Opportunities
As Sonr matures, validators can explore additional network services:
- **Relayer Operations**: IBC connection services
- **RPC Endpoints**: Developer infrastructure services
- **Archive Nodes**: Historical data provision
- **Identity Services**: Custom solutions leveraging Sonr infrastructure
- **Interchain Security**: Consumer chain participation
## Getting Started
<Card title="Join Testnet" href="/guides/validators/testnet">
Start with testnet participation to gain operational experience
</Card>
<Card title="Hardware Setup" href="/guides/validators/setup">
Detailed hardware and infrastructure deployment guide
</Card>
<Card title="Security Guide" href="/guides/validators/security">
Comprehensive security implementation and best practices
</Card>
<Card title="Monitoring" href="/guides/validators/monitoring">
Setup monitoring and alerting systems for your validator
</Card>
<Note type="success">
Sonr presents a compelling opportunity for validators seeking exposure to the
decentralized identity market within the Cosmos ecosystem. Early preparation
and professional operations are key to success.
</Note>
-7
View File
@@ -1,7 +0,0 @@
---
title: "Registering a Domain"
description: "Comprehensive guide to creating, validating, and managing User-Controlled Authorization Network (UCAN) tokens"
icon: "key"
---
-447
View File
@@ -1,447 +0,0 @@
---
title: "MPC Vault System Security Audit Report"
sidebarTitle: "Executive Summary"
description: "Comprehensive security audit findings and recommendations for the MPC vault system"
icon: "clipboard-check"
---
<Warning>
This audit report contains critical security findings that require immediate
attention before production deployment.
</Warning>
**Date:** August 5, 2025
**Auditor:** Claude (Senior Security Auditor)
**Scope:** Comprehensive security assessment of the MPC vault system for wallet operations
**Version:** Sonr v0.10.15
## Executive Summary
This security audit evaluates the Multi-Party Computation (MPC) vault system implemented in Sonr's blockchain platform. The audit covers the current architecture, recent security improvements, wallet operation security, threat analysis, and production readiness assessment.
### Key Findings Overview
- **Critical Issues:** 3 identified
- **High Risk Issues:** 4 identified
- **Medium Risk Issues:** 6 identified
- **Low Risk Issues:** 8 identified
<Info>
**Overall Security Posture:** MODERATE RISK - Suitable for testnet deployment
with immediate remediation of critical issues required before mainnet
deployment with user funds.
</Info>
## 1. Current Architecture Analysis
### 1.1 System Components
The vault system consists of four primary components:
<AccordionGroup>
<Accordion title="Vault Client (internal/vault/vault.go)" icon="code">
**Purpose:** High-level interface for vault operations using WebAssembly enclaves
**Security Features:**
- Input validation framework with regex patterns
- Secure error handling with sanitized messages
- WASM plugin integrity verification via SHA256 hashing
- Restricted host and filesystem access for WASM plugins
</Accordion>
<Accordion title="WASM Plugin (cmd/vault/main.go)" icon="cube">
**Purpose:** WebAssembly-based secure execution environment for MPC operations
**Security Features:** - Sandboxed execution environment - Rate limiting (60
operations/minute per vault) - Resource constraints (max 100 vaults per
instance) - Ownership-based access control - Configurable IPFS endpoints and
timeouts
</Accordion>
<Accordion
title="DWN Keeper Integration (x/dwn/keeper/keeper.go)"
icon="database"
>
**Purpose:** Blockchain state management and vault lifecycle operations
**Security Features:** - Vault state persistence with enclave data separation
- Integration with DID-based authentication - Service registration
verification
</Accordion>
<Accordion title="MPC Enclave (crypto/mpc/enclave.go)" icon="lock">
**Purpose:** Multi-party computation cryptographic operations
**Security Features:**
- AES-GCM encryption for data at rest
- ECDSA signing with SHA3-256 hashing
- Key derivation and rotation capabilities
</Accordion>
</AccordionGroup>
## 2. Security Fixes Analysis
### 2.1 Recently Implemented Security Improvements
Based on code analysis and git history, the following security enhancements have been implemented:
<CardGroup cols={2}>
<Card title="WASM Sandbox Restrictions" icon="check-circle" color="#16a34a">
✅ **EFFECTIVE**
- Restricted allowed hosts to local IPFS endpoints only
- Limited file system access to `/tmp/vault-wasm` directory
- Well-implemented defense against WASM plugin abuse
</Card>
<Card title="Input Validation Framework" icon="check-circle" color="#16a34a">
✅ **EFFECTIVE** - Vault ID validation with alphanumeric constraints - CID
validation with Base58 format checking - Password validation with UTF-8 and
size constraints - Comprehensive validation prevents injection attacks
</Card>
<Card title="Error Message Sanitization" icon="check-circle" color="#16a34a">
✅ **EFFECTIVE** - SecureError type with public/internal error separation -
Structured error codes prevent information leakage - Prevents sensitive
information disclosure
</Card>
<Card
title="Rate Limiting and Resource Constraints"
icon="check-circle"
color="#16a34a"
>
✅ **EFFECTIVE** - 60 ops/minute per vault, max 100 vaults per instance -
Protection against resource exhaustion attacks - Well-implemented DoS
protection
</Card>
<Card
title="Plugin Integrity Verification"
icon="exclamation-triangle"
color="#f59e0b"
>
⚠️ **PARTIALLY EFFECTIVE** - Optional SHA256 hash verification - Defaults to
empty hash (backward compatibility) - Good foundation but needs enforcement in
production
</Card>
<Card title="Access Control Implementation" icon="exclamation-triangle" color="#f59e0b">
⚠️ **NEEDS IMPROVEMENT**
- Owner-based access with pseudo-authentication
- Uses vault ID as owner ID (placeholder implementation)
- Insufficient for production use
</Card>
</CardGroup>
## 3. Wallet Operation Security Assessment
<AccordionGroup>
<Accordion title="Vault Generation and Key Derivation" defaultOpen>
- **Strength:** Uses secure MPC protocol for key generation
- **Weakness:** No entropy source verification
- **Risk Level:** Medium
- **CVSS Score:** 5.3 (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N)
</Accordion>
<Accordion title="Transaction Signing (Cosmos, EVM)">
- **Strength:** Proper ECDSA implementation with SHA3-256 - **Weakness:**
Missing signature malleability protection - **Risk Level:** Medium - **CVSS
Score:** 4.8 (AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N)
</Accordion>
<Accordion title="Message Signing and Verification">
- **Strength:** Standard ECDSA verification process - **Weakness:** No
timestamp validation for replay protection - **Risk Level:** Medium - **CVSS
Score:** 5.4 (AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N)
</Accordion>
<Accordion title="Key Rotation and Vault Management">
- **Strength:** MPC refresh protocol for key rotation - **Weakness:** No
automated rotation enforcement - **Risk Level:** Low - **CVSS Score:** 3.7
(AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L)
</Accordion>
<Accordion title="IPFS Storage and Retrieval">
- **Strength:** AES-GCM encryption for data at rest
- **Weakness:** No integrity verification after retrieval
- **Risk Level:** High
- **CVSS Score:** 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N)
</Accordion>
</AccordionGroup>
## 4. Threat Analysis by Risk Level
### 4.1 CRITICAL Vulnerabilities (Immediate Action Required)
<Warning>
These vulnerabilities require immediate remediation before any production
deployment.
</Warning>
<AccordionGroup>
<Accordion title="CRITICAL-001: Weak Authentication System" icon="shield-x">
- **Location:** `cmd/vault/main.go:647-676`
- **Issue:** Pseudo-authentication using vault ID as owner ID
- **Impact:** Complete vault takeover by any user knowing vault ID
- **CVSS Score:** 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
- **Remediation:** Implement proper JWT/OAuth2 authentication with cryptographic proofs
</Accordion>
<Accordion
title="CRITICAL-002: Missing WASM Integrity Enforcement"
icon="shield-x"
>
- **Location:** `internal/vault/vault.go:138` - **Issue:** WASM hash
verification disabled by default (empty ExpectedSHA256) - **Impact:**
Malicious WASM plugin execution - **CVSS Score:** 9.1
(AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N) - **Remediation:** Enforce mandatory
WASM integrity checks in production
</Accordion>
<Accordion title="CRITICAL-003: Hardcoded Default Passwords" icon="shield-x">
- **Location:** `x/dwn/keeper/keeper.go:404`
- **Issue:** Default password generation based on predictable values
- **Impact:** Vault encryption key compromise
- **CVSS Score:** 8.8 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
- **Remediation:** Implement secure password derivation or user-provided passwords
</Accordion>
</AccordionGroup>
### 4.2 HIGH Risk Vulnerabilities
<AccordionGroup>
<Accordion title="HIGH-001: No Encrypted Data Integrity Verification" icon="alert-triangle">
- **Location:** `crypto/mpc/enclave.go:51-68`
- **Issue:** No HMAC or authenticated encryption verification after IPFS retrieval
- **Impact:** Data tampering attacks on stored vault data
- **CVSS Score:** 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N)
</Accordion>
<Accordion
title="HIGH-002: Missing Signature Malleability Protection"
icon="alert-triangle"
>
- **Location:** `crypto/mpc/enclave.go:111-121` - **Issue:** ECDSA signatures
vulnerable to malleability attacks - **Impact:** Transaction replay with
modified signatures - **CVSS Score:** 7.4
(AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N)
</Accordion>
<Accordion
title="HIGH-003: Insufficient Input Sanitization for IPFS Operations"
icon="alert-triangle"
>
- **Location:** `cmd/vault/main.go:321-392` - **Issue:** Direct CID usage
without additional validation - **Impact:** IPFS injection attacks or resource
exhaustion - **CVSS Score:** 7.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
</Accordion>
<Accordion title="HIGH-004: Race Conditions in Concurrent Vault Access" icon="alert-triangle">
- **Location:** `cmd/vault/main.go:505-568`
- **Issue:** Inadequate synchronization for concurrent vault operations
- **Impact:** Data corruption or inconsistent vault state
- **CVSS Score:** 6.8 (AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H)
</Accordion>
</AccordionGroup>
### 4.3 MEDIUM Risk Vulnerabilities
<AccordionGroup>
<Accordion title="MEDIUM-001: Weak Key Derivation for Encryption">
- **Location:** `crypto/mpc/enclave.go:78`
- **CVSS Score:** 5.9 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N)
</Accordion>
<Accordion title="MEDIUM-002: Missing Request Replay Protection">
- **Location:** Various signing functions - **CVSS Score:** 5.4
(AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N)
</Accordion>
<Accordion title="MEDIUM-003: Insufficient Error Context in Logs">
- **Location:** Throughout codebase - **CVSS Score:** 4.3
(AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L)
</Accordion>
<Accordion title="MEDIUM-004: No Key Rotation Enforcement">
- **Location:** `cmd/vault/main.go:986-988` - **CVSS Score:** 4.2
(AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N)
</Accordion>
<Accordion title="MEDIUM-005: WebAuthn Implementation Placeholder">
- **Location:** `cmd/vault/main.go:947-954` - **CVSS Score:** 5.8
(AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N)
</Accordion>
<Accordion title="MEDIUM-006: Insufficient Resource Cleanup">
- **Location:** `cmd/vault/main.go:976-983`
- **CVSS Score:** 4.9 (AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L)
</Accordion>
</AccordionGroup>
### 4.4 LOW Risk Issues
<Accordion title="Low Risk Issues Summary">
- LOW-001: Predictable Enclave ID Generation - LOW-002: Missing Rate Limit
Bypass Protection - LOW-003: Insufficient Logging for Security Events -
LOW-004: No Vault Backup/Recovery Mechanism - LOW-005: Missing Health Check
Attestation Validation - LOW-006: Hardcoded Configuration Values - LOW-007: No
Circuit Breaker for IPFS Operations - LOW-008: Missing Input Length Validation
Edge Cases
</Accordion>
## 5. Production Readiness Assessment
<CardGroup cols={3}>
<Card title="Testnet Deployment" icon="exclamation-triangle" color="#f59e0b">
⚠️ **CONDITIONAL APPROVAL**
Suitable with immediate critical fixes:
- Fix CRITICAL-001 (Authentication)
- Fix CRITICAL-002 (WASM Integrity)
- Fix CRITICAL-003 (Default Passwords)
**Timeline:** 2-3 weeks with dedicated security effort
</Card>
<Card title="Mainnet with User Funds" icon="x-circle" color="#dc2626">
❌ **NOT RECOMMENDED** Requires comprehensive security hardening: - All
CRITICAL and HIGH issues resolved - External security audit by certified firm
- Bug bounty program - Comprehensive monitoring and alerting **Timeline:** 3-4
months minimum
</Card>
<Card title="Enterprise/Institutional Use" icon="x-circle" color="#dc2626">
❌ **NOT RECOMMENDED**
Requires enterprise-grade security controls:
- SOC 2 Type II compliance
- Multi-signature authorization workflows
- Hardware Security Module (HSM) integration
- Advanced threat detection and response
**Timeline:** 6-8 months minimum
</Card>
</CardGroup>
## 6. Remediation Recommendations
### 6.1 Immediate Actions (0-2 weeks)
<Steps>
<Step title="Implement Proper Authentication System">
- Replace pseudo-authentication with JWT/OAuth2
- Add cryptographic proof of vault ownership
- Implement session management with timeout
</Step>
<Step title="Enforce WASM Integrity Verification">
- Remove backward compatibility for empty hashes - Implement automatic hash
verification - Add WASM signature verification
</Step>
<Step title="Replace Hardcoded Password Generation">
- Implement secure key derivation functions (PBKDF2/Argon2)
- Add user-provided password support
- Implement password strength requirements
</Step>
</Steps>
### 6.2 Short-term Actions (2-8 weeks)
<Steps>
<Step title="Add Data Integrity Verification">
- Implement HMAC for IPFS stored data
- Add checksum verification after retrieval
- Implement authenticated encryption (AES-GCM with additional data)
</Step>
<Step title="Implement Signature Malleability Protection">
- Use deterministic ECDSA (RFC 6979) - Add signature canonicalization -
Implement proper nonce generation
</Step>
<Step title="Enhance WebAuthn Integration">
- Complete WebAuthn assertion verification
- Add biometric authentication support
- Implement proper challenge-response flow
</Step>
</Steps>
## 7. Implementation Timeline
<AccordionGroup>
<Accordion title="Phase 1: Critical Security Fixes (2-3 weeks)" defaultOpen>
- Authentication system implementation
- WASM integrity enforcement
- Password security enhancement
- Basic monitoring setup
</Accordion>
<Accordion title="Phase 2: High-Risk Remediation (4-6 weeks)">
- Data integrity verification - Signature security improvements - Input
validation enhancements - Concurrent access protection
</Accordion>
<Accordion title="Phase 3: Production Hardening (8-12 weeks)">
- Comprehensive monitoring implementation - Advanced security controls -
Performance optimization - External security audit preparation
</Accordion>
<Accordion title="Phase 4: Enterprise Readiness (6-8 months)">
- Compliance framework implementation
- Advanced threat protection
- HSM integration
- Comprehensive testing and validation
</Accordion>
</AccordionGroup>
## 8. Compliance and Standards Assessment
### 8.1 Current Compliance Status
<CardGroup cols={2}>
<Card title="OWASP Top 10" icon="x-circle" color="#dc2626">
❌ Multiple violations identified
</Card>
<Card title="NIST Cybersecurity Framework" icon="x-circle" color="#dc2626">
❌ Partial implementation
</Card>
<Card title="ISO 27001" icon="x-circle" color="#dc2626">
❌ Insufficient security controls
</Card>
<Card title="SOC 2" icon="x-circle" color="#dc2626">
❌ Not compliant
</Card>
</CardGroup>
### 8.2 Recommended Standards Implementation
1. Implement OWASP secure coding practices
2. Adopt NIST cybersecurity framework controls
3. Prepare for SOC 2 Type II audit
4. Consider ISO 27001 certification for enterprise use
## 9. Conclusion
The Sonr MPC vault system demonstrates good architectural principles and has implemented several important security improvements. However, critical vulnerabilities prevent immediate production deployment with user funds.
<Note>
The system is suitable for testnet deployment with immediate remediation of
the three critical issues identified. A comprehensive security hardening
effort over 3-4 months is required before mainnet deployment with user funds
is recommended.
</Note>
<Warning>
**Immediate Priority:** Address the three critical vulnerabilities before any
production deployment.
</Warning>
**Recommendation:** Engage a certified security firm for external audit before mainnet launch.
---
**Report Prepared By:** Claude (Senior Security Auditor)
**Date:** August 5, 2025
**Classification:** Confidential - Internal Use Only
-352
View File
@@ -1,352 +0,0 @@
---
title: "Security Compliance Checklist"
sidebarTitle: "Compliance Checklist"
description: "Comprehensive security compliance checklist for MPC vault system production readiness"
icon: "list-check"
---
## MPC Vault System Production Readiness
**Version:** 1.0
**Date:** August 5, 2025
**Owner:** Security Team
**Review Cycle:** Monthly
<Warning>
This checklist must be completed before production deployment. Critical
security requirements are mandatory for testnet deployment.
</Warning>
## Critical Security Requirements (0% Complete)
<AccordionGroup>
<Accordion title="UCAN-Based Vault Authorization" icon="shield-keyhole" defaultOpen>
<CardGroup cols={2}>
<Card title="Authentication" icon="key">
- [ ] **UCAN Token Validation** - Replace pseudo-authentication with proper UCAN token verification
- [ ] **Vault Capability Verification** - Implement vault operation authorization using UCAN capabilities
- [ ] **Delegation Chain Validation** - Verify complete UCAN delegation chains for vault access
</Card>
<Card title="Access Control" icon="lock">
- [ ] **Capability-Based Access Control** - Use UCAN capabilities for fine-grained vault permissions
- [ ] **Cryptographic Proof of Ownership** - Validate UCAN signatures for vault ownership verification
- [ ] **UCAN Expiration Handling** - Implement automatic capability expiration and renewal
</Card>
</CardGroup>
</Accordion>
<Accordion title="Traditional Authentication Support" icon="fingerprint">
- [ ] **WebAuthn Integration** - Multi-factor authentication for
biometric/hardware key support - [ ] **Session Management** - Secure session
handling with configurable timeouts for web interfaces - [ ] **API Rate
Limiting** - Per-user and per-capability rate limiting beyond current
per-vault limits - [ ] **Emergency Access Controls** - Fallback authentication
mechanisms for capability recovery
</Accordion>
<Accordion title="Cryptographic Security" icon="shield-check">
<Steps>
<Step title="WASM Security">
- [ ] **WASM Integrity Enforcement** - Mandatory SHA256 hash verification
for all plugins - [ ] **Code Signing** - Digital signature verification
for WASM modules
</Step>
<Step title="Key Management">
- [ ] **Secure Password Handling** - Replace hardcoded passwords with
user-provided secrets - [ ] **Key Derivation Functions** - Implement
Argon2id for password-based key derivation
</Step>
<Step title="Signature Security">
- [ ] **Signature Canonicalization** - Prevent ECDSA signature
malleability attacks - [ ] **Deterministic ECDSA** - Use RFC 6979 for
secure nonce generation
</Step>
</Steps>
</Accordion>
<Accordion title="Data Integrity & Encryption" icon="database">
- [ ] **HMAC Data Integrity** - Add integrity verification for all encrypted data
- [ ] **Authenticated Encryption** - Use AES-GCM with proper additional data
- [ ] **Salt Storage** - Secure salt management for key derivation
- [ ] **Key Rotation** - Automated and enforced key rotation policies
- [ ] **Secure Memory Handling** - Proper zeroization of sensitive data in memory
</Accordion>
</AccordionGroup>
## High Priority Security Requirements (15% Complete)
<AccordionGroup>
<Accordion title="Input Validation & Sanitization" icon="filter">
<CardGroup cols={2}>
<Card title="Implemented ✅" icon="check-circle" color="#16a34a">
- [x] **Vault ID Validation** - Regex-based validation implemented ✅
- [x] **CID Format Validation** - IPFS CID format checking ✅
- [x] **Password Length Validation** - Basic length constraints ✅
</Card>
<Card title="Pending" icon="clock" color="#f59e0b">
- [ ] **Advanced Input Sanitization** - Comprehensive injection attack prevention
- [ ] **Schema Validation** - JSON schema validation for all API inputs
- [ ] **File Upload Security** - Secure handling of WASM plugin uploads
</Card>
</CardGroup>
</Accordion>
<Accordion
title="Error Handling & Information Disclosure"
icon="alert-triangle"
>
<CardGroup cols={2}>
<Card title="Implemented ✅" icon="check-circle" color="#16a34a">
- [x] **Error Message Sanitization** - SecureError implementation ✅ - [x]
**Structured Error Codes** - Consistent error code system ✅
</Card>
<Card title="Pending" icon="clock" color="#f59e0b">
- [ ] **Security Event Logging** - Comprehensive audit trail for security
events - [ ] **Sensitive Data Masking** - Ensure no secrets in logs or
error messages - [ ] **Error Rate Monitoring** - Automated detection of
unusual error patterns
</Card>
</CardGroup>
</Accordion>
<Accordion title="Network Security" icon="network">
<CardGroup cols={2}>
<Card title="Implemented ✅" icon="check-circle" color="#16a34a">
- [x] **WASM Sandbox Restrictions** - Limited network access for plugins ✅
- [x] **IPFS Endpoint Configuration** - Configurable but restricted IPFS access ✅
</Card>
<Card title="Pending" icon="clock" color="#f59e0b">
- [ ] **TLS/SSL Configuration** - Proper certificate management and validation
- [ ] **Network Segmentation** - Isolated network zones for vault operations
- [ ] **Firewall Rules** - Restrictive network access policies
</Card>
</CardGroup>
</Accordion>
</AccordionGroup>
## Medium Priority Security Requirements (25% Complete)
<AccordionGroup>
<Accordion title="Monitoring & Alerting" icon="activity">
<CardGroup cols={2}>
<Card title="Implemented ✅" icon="check-circle" color="#16a34a">
- [x] **Basic Rate Limiting** - Per-vault operation limits ✅
- [x] **Resource Constraints** - Maximum vault limits per instance ✅
</Card>
<Card title="Pending" icon="clock" color="#f59e0b">
- [ ] **Real-time Threat Detection** - Automated anomaly detection
- [ ] **Security Information and Event Management (SIEM)** - Centralized log analysis
- [ ] **Intrusion Detection System (IDS)** - Network-based threat detection
- [ ] **Performance Monitoring** - Resource usage and performance metrics
</Card>
</CardGroup>
</Accordion>
<Accordion title="Backup & Recovery" icon="hard-drive">
- [ ] **Encrypted Backup System** - Secure vault data backup procedures - [ ]
**Disaster Recovery Plan** - Documented recovery procedures - [ ] **Data
Retention Policies** - Compliant data lifecycle management - [ ] **Backup
Integrity Verification** - Regular backup validation procedures - [ ]
**Point-in-time Recovery** - Granular recovery capabilities
</Accordion>
<Accordion title="Compliance & Governance" icon="clipboard-check">
- [ ] **Data Privacy Controls** - GDPR/CCPA compliance measures
- [ ] **Audit Trail Integrity** - Immutable audit logging
- [ ] **Compliance Reporting** - Automated compliance status reporting
- [ ] **Risk Assessment Framework** - Regular security risk evaluations
- [ ] **Security Policy Documentation** - Comprehensive security procedures
</Accordion>
</AccordionGroup>
## Infrastructure Security Requirements (0% Complete)
<AccordionGroup>
<Accordion title="Container & Orchestration Security" icon="container">
- [ ] **Container Image Scanning** - Vulnerability scanning for all images
- [ ] **Pod Security Policies** - Kubernetes security context enforcement
- [ ] **Network Policies** - Micro-segmentation for container communication
- [ ] **Secret Management** - Secure handling of API keys and certificates
- [ ] **Resource Quotas** - Prevent resource exhaustion attacks
</Accordion>
<Accordion title="Database Security" icon="database">
- [ ] **Encryption at Rest** - Database-level encryption implementation - [ ]
**Connection Security** - TLS encryption for all database connections - [ ]
**Access Control** - Database user privilege management - [ ] **Query
Monitoring** - SQL injection and anomaly detection - [ ] **Backup Encryption**
- Encrypted database backup procedures
</Accordion>
<Accordion title="IPFS Security" icon="folder-tree">
- [ ] **Content Addressing Verification** - Validate IPFS content integrity
- [ ] **Pinning Strategy** - Secure content persistence policies
- [ ] **Access Control** - Restrict IPFS node access and operations
- [ ] **Network Security** - Secure IPFS node communication
- [ ] **Content Filtering** - Prevent malicious content storage
</Accordion>
</AccordionGroup>
## Testing & Validation Requirements (10% Complete)
<AccordionGroup>
<Accordion title="Security Testing" icon="bug">
<CardGroup cols={2}>
<Card title="Implemented ✅" icon="check-circle" color="#16a34a">
- [x] **Unit Tests** - Basic functionality testing ✅
</Card>
<Card title="Pending" icon="clock" color="#f59e0b">
- [ ] **Security Unit Tests** - Dedicated security-focused test cases
- [ ] **Integration Security Testing** - End-to-end security validation
- [ ] **Penetration Testing** - Third-party security assessment
- [ ] **Vulnerability Scanning** - Automated security scanning
- [ ] **Fuzzing** - Input validation robustness testing
</Card>
</CardGroup>
</Accordion>
<Accordion title="Performance & Load Testing" icon="zap">
- [ ] **Load Testing** - Performance under high concurrent load - [ ] **Stress
Testing** - System behavior under extreme conditions - [ ] **Security Load
Testing** - Security controls under load - [ ] **Failover Testing** - System
resilience validation - [ ] **Capacity Planning** - Resource requirements
assessment
</Accordion>
<Accordion title="Compliance Testing" icon="certificate">
- [ ] **OWASP Top 10 Validation** - Verify protection against common vulnerabilities
- [ ] **NIST Framework Assessment** - Cybersecurity framework compliance
- [ ] **Industry Standards Testing** - Blockchain-specific security standards
- [ ] **Regulatory Compliance Testing** - Financial services compliance validation
</Accordion>
</AccordionGroup>
## Operational Security Requirements (5% Complete)
<AccordionGroup>
<Accordion title="Incident Response" icon="siren">
- [ ] **Security Incident Response Plan** - Documented procedures for security incidents
- [ ] **Incident Detection Systems** - Automated incident detection and alerting
- [ ] **Forensic Capabilities** - Digital forensics tools and procedures
- [ ] **Communication Procedures** - Stakeholder notification processes
- [ ] **Recovery Procedures** - System restoration and continuity planning
</Accordion>
<Accordion title="Security Operations" icon="shield">
- [ ] **Security Operations Center (SOC)** - 24/7 security monitoring - [ ]
**Threat Intelligence** - External threat intelligence integration - [ ]
**Vulnerability Management** - Regular vulnerability assessment and patching -
[ ] **Security Training** - Developer and operations team security training -
[ ] **Security Awareness Program** - Organization-wide security awareness
</Accordion>
<Accordion title="Change Management" icon="git-branch">
- [ ] **Secure Development Lifecycle** - Security integrated into development process
- [ ] **Code Review Process** - Security-focused code review procedures
- [ ] **Deployment Security** - Secure deployment pipelines and procedures
- [ ] **Configuration Management** - Secure configuration baseline management
- [ ] **Patch Management** - Timely security update procedures
</Accordion>
</AccordionGroup>
## Deployment Readiness Gates
<CardGroup cols={3}>
<Card title="Testnet Deployment Prerequisites" icon="test-tube" color="#f59e0b">
<Warning>Required for testnet deployment</Warning>
- [ ] All CRITICAL vulnerabilities resolved (CRITICAL-001, CRITICAL-002, CRITICAL-003)
- [ ] UCAN-based vault authorization system implemented and tested
- [ ] WASM integrity verification enforced
- [ ] Secure password/key derivation implemented
- [ ] Basic monitoring and alerting configured
- [ ] UCAN capability validation for all vault operations
- [ ] Delegation chain verification system operational
</Card>
<Card title="Mainnet Beta Prerequisites" icon="flask" color="#3b82f6">
<Info>Required for mainnet beta</Info>- [ ] All CRITICAL and HIGH
vulnerabilities resolved - [ ] External security audit completed with
satisfactory results - [ ] Comprehensive monitoring and alerting system
deployed - [ ] Incident response procedures tested and validated - [ ] Bug
bounty program launched and initial issues resolved
</Card>
<Card title="Production Mainnet Prerequisites" icon="check-circle" color="#16a34a">
<Note>Required for full production</Note>
- [ ] All CRITICAL, HIGH, and MEDIUM vulnerabilities resolved
- [ ] SOC 2 Type II audit completed (for institutional use)
- [ ] Comprehensive security testing completed
- [ ] Hardware Security Module (HSM) integration (for enterprise)
- [ ] Disaster recovery and business continuity plans tested
- [ ] Regulatory compliance validation completed
</Card>
</CardGroup>
## Review and Approval Process
### Security Review Board
<CardGroup cols={2}>
<Card title="Review Board Members" icon="users">
- **Chief Security Officer** - Overall security strategy approval
- **Lead Security Engineer** - Technical security implementation review
- **Compliance Officer** - Regulatory and compliance validation
- **DevOps Lead** - Infrastructure security validation
- **Product Manager** - Business impact and user experience review
</Card>
<Card title="Approval Checkpoints" icon="checkpoint">
1. **Critical Fix Review** - After resolving all critical vulnerabilities
2. **Security Architecture Review** - Complete system security design validation
3. **Penetration Test Review** - External security assessment results
4. **Compliance Review** - Regulatory and standards compliance validation
5. **Production Readiness Review** - Final deployment approval
</Card>
</CardGroup>
### Documentation Requirements
<Steps>
<Step title="Architecture Documentation">
- [ ] Security architecture documentation updated
- [ ] Threat model documentation complete
</Step>
<Step title="Operational Documentation">
- [ ] Incident response runbooks validated - [ ] User security guidelines
published
</Step>
<Step title="Compliance Documentation">
- [ ] Compliance certification documentation complete
</Step>
</Steps>
## Success Metrics
<CardGroup cols={2}>
<Card title="Security KPIs" icon="target">
- **Zero Critical Vulnerabilities** - No unresolved critical security issues
- **Less than 5% High Risk Issues** - Minimal high-risk vulnerabilities remaining
- **99.9% Uptime** - High availability with security controls active
- **Less than 1s Authentication Latency** - Performance impact of security controls
- **Zero Data Breaches** - No unauthorized access to vault data
</Card>
<Card title="Compliance Metrics" icon="chart-bar">
- **100% Critical Control Coverage** - All critical security controls implemented
- **<30 Day Vulnerability Resolution** - Rapid security issue resolution
- **100% Security Event Monitoring** - Complete visibility into security events
- **<15 Minute Incident Detection** - Rapid threat detection capability
- **100% Audit Trail Coverage** - Complete audit logging for all operations
</Card>
</CardGroup>
---
**Next Review Date:** September 5, 2025
**Document Owner:** Security Team
**Approval Status:** Draft - Pending Security Review Board Approval
-120
View File
@@ -1,120 +0,0 @@
---
title: "Cryptographic Security Enhancements"
description: "Comprehensive overview of cryptographic security enhancements in the Sonr blockchain"
sidebarTitle: "Cryptography Usage"
icon: "lock"
---
import { Callout } from "mintlify/components";
import { CodeBlock } from "mintlify/components";
import { Tabs, Tab } from "mintlify/components";
# Cryptographic Security Enhancements
<Callout type="info">
This document details the comprehensive cryptographic security enhancements
implemented in the Sonr blockchain to address critical vulnerabilities and
strengthen the overall security posture.
</Callout>
## Table of Contents
1. [WASM Plugin Security](#wasm-plugin-security)
2. [Password Security](#password-security)
3. [ECDSA Signature Security](#ecdsa-signature-security)
4. [Key Derivation](#key-derivation)
5. [Security Testing](#security-testing)
6. [Migration Guide](#migration-guide)
## WASM Plugin Security
### SHA256 Hash Verification
<Callout type="warning">
All WASM plugins are now verified using SHA256 hashes before execution to
prevent tampering and ensure integrity.
</Callout>
**Implementation**: `crypto/wasm/verifier.go`
<CodeBlock language="go">
{`// Usage example
verifier := wasm.NewHashVerifier()
hash := verifier.ComputeHash(wasmBytes)
verifier.AddTrustedHash("motr.wasm", hash)
// Verify before execution
err := verifier.VerifyHash("motr.wasm", wasmBytes)
if err != nil {
// Plugin verification failed - do not execute
}`}
</CodeBlock>
**Features**:
- Automatic hash computation on plugin load
- Hash chain verification for secure updates
- Trusted hash whitelist management
- Maximum size enforcement (10MB default)
### Ed25519 Code Signing
<Callout type="warning">
WASM plugins must be signed with Ed25519 signatures to ensure authenticity and
prevent unauthorized modifications.
</Callout>
**Implementation**: `crypto/wasm/signer.go`
<CodeBlock language="go">
{`// Sign a plugin
signer := wasm.NewSigner(privateKey, publicKey)
signature, err := signer.SignModule(wasmBytes, "motr.wasm", "v1.0.0")
// Verify signature
manifest := &wasm.SignatureManifest{
ModuleHash: hash,
Signatures: []wasm.SignatureEntry{\*signature},
TrustedKeys: trustedKeys,
}
err = signer.VerifyWithManifest(wasmBytes, manifest)`}
</CodeBlock>
### Remaining sections follow the same pattern, using MDX components to enhance readability
## Security Considerations
<Callout type="warning">
### Best Practices 1. **Always validate passwords** before use 2. **Never
store passwords in plaintext** or logs 3. **Use deterministic ECDSA** for all
signatures 4. **Canonicalize all signatures** before storage 5. **Verify WASM
plugins** before execution
</Callout>
## Support
<Callout type="info">
For questions or issues related to cryptographic security: 1. Check the test
suites for usage examples 2. Review the security test scenarios 3. Open an
issue on GitHub with the `security` label 4. Contact the security team for
sensitive issues
</Callout>
## Changelog
### Version 0.10.34
- Added WASM hash verification (`crypto/wasm/verifier.go`)
- Added Ed25519 code signing (`crypto/wasm/signer.go`)
- Replaced hardcoded passwords with secure validation (`crypto/password/validator.go`)
- Implemented Argon2id key derivation (`crypto/argon2/kdf.go`)
- Added RFC 6979 deterministic ECDSA (`crypto/ecdsa/deterministic.go`)
- Implemented signature canonicalization (`crypto/ecdsa/canonical.go`)
- Added comprehensive security test suite (`crypto/security_test.go`)
---
_Last Updated: 2024_
_Security Contact: security@sonr.io_
-202
View File
@@ -1,202 +0,0 @@
---
title: "Vulnerability Remediation Report"
description: "Comprehensive report documenting the resolution of critical security vulnerabilities in the Sonr blockchain"
sidebarTitle: "Vulnerability Remediation"
icon: "bug-off"
---
import { Callout } from 'mintlify/components'
import { CodeBlock } from 'mintlify/components'
import { Tabs, Tab } from 'mintlify/components'
# Vulnerability Remediation Report
<Callout type="info">
This report documents the critical security vulnerabilities identified in the Sonr blockchain cryptographic implementation and the comprehensive remediation measures implemented to address them.
</Callout>
## Vulnerabilities Addressed
### 1. WASM Plugin Tampering (Critical)
<Callout type="warning">
**CVE Category**: CWE-494 (Download of Code Without Integrity Check)
**Impact**: Remote code execution, data exfiltration, system compromise
</Callout>
**Remediation**:
- Implemented SHA256 hash verification (`crypto/wasm/verifier.go`)
- Added Ed25519 digital signatures (`crypto/wasm/signer.go`)
- Created hash chain for secure updates
- Enforced maximum plugin size limits
**Status**: ✅ RESOLVED
### 2. Hardcoded Password Generation (Critical)
<Callout type="warning">
**CVE Category**: CWE-798 (Use of Hard-coded Credentials)
**Impact**: Unauthorized vault access, credential theft, data breach
</Callout>
**Vulnerable Code (Removed)**:
<CodeBlock language="go">
{`password := fmt.Sprintf("vault-password-%s-%s", did, owner)`}
</CodeBlock>
**Remediation**:
- Removed all hardcoded password generation
- Implemented secure password validation (`crypto/password/validator.go`)
- Added entropy requirements (minimum 50 bits)
- Integrated Argon2id for key derivation
**Status**: ✅ RESOLVED
### 3. ECDSA Nonce Reuse Vulnerability (High)
<Callout type="warning">
**CVE Category**: CWE-330 (Use of Insufficiently Random Values)
**Impact**: Private key extraction, signature forgery, account compromise
</Callout>
**Remediation**:
- Implemented RFC 6979 deterministic ECDSA (`crypto/ecdsa/deterministic.go`)
- Eliminated dependency on random number generation
- Added comprehensive test coverage
**Status**: ✅ RESOLVED
### 4. Signature Malleability (High)
<Callout type="warning">
**CVE Category**: CWE-347 (Improper Verification of Cryptographic Signature)
**Impact**: Transaction replay, double-spending, consensus issues
</Callout>
**Remediation**:
- Implemented signature canonicalization (`crypto/ecdsa/canonical.go`)
- Enforced s ≤ N/2 requirement
- Added automatic canonicalization and validation
**Status**: ✅ RESOLVED
### 5. Weak Password Storage (High)
<Callout type="warning">
**CVE Category**: CWE-916 (Use of Password Hash With Insufficient Computational Effort)
**Impact**: Password cracking, unauthorized access, account takeover
</Callout>
**Remediation**:
- Implemented Argon2id with secure defaults (`crypto/argon2/kdf.go`)
- Added configurable security profiles
- Enforced minimum memory requirements (64MB default)
- Implemented PHC format for standardized storage
**Status**: ✅ RESOLVED
### 6. Timing Attack Vulnerabilities (Medium)
<Callout type="warning">
**CVE Category**: CWE-208 (Observable Timing Discrepancy)
**Impact**: Information disclosure, side-channel attacks
</Callout>
**Remediation**:
- Implemented constant-time comparison functions
- Used `crypto/subtle.ConstantTimeCompare`
- Added timing attack resistance tests
**Status**: ✅ RESOLVED
## Verification Methods
### Automated Testing
<Callout type="info">
All remediations include comprehensive test suites.
</Callout>
<CodeBlock language="bash">
{`# Run security tests
go test ./crypto/security_test.go -v
# Run individual component tests
go test ./crypto/argon2 -v
go test ./crypto/ecdsa -v
go test ./crypto/wasm -v
# Run benchmarks
go test -bench=. ./crypto/...`}
</CodeBlock>
## Security Metrics
<Callout type="warning">
### Before Remediation
| Metric | Value | Risk Level |
|--------|-------|------------|
| Hardcoded Passwords | Yes | Critical |
| WASM Verification | None | Critical |
| Nonce Generation | Random | High |
| Signature Format | Non-canonical | High |
| Password Hashing | Basic | High |
| Timing Resistance | No | Medium |
### After Remediation
| Metric | Value | Risk Level |
|--------|-------|------------|
| Hardcoded Passwords | Eliminated | None |
| WASM Verification | SHA256 + Ed25519 | None |
| Nonce Generation | RFC 6979 Deterministic | None |
| Signature Format | Canonical (s ≤ N/2) | None |
| Password Hashing | Argon2id | None |
| Timing Resistance | Constant-time | None |
</Callout>
## Recommendations
<Callout type="info">
### Immediate Actions
1. ✅ **Deploy remediations** to all environments
2. ✅ **Update documentation** for developers
3. ✅ **Train team** on new security requirements
4. ✅ **Audit existing deployments** for compliance
</Callout>
## Conclusion
<Callout type="success">
All identified cryptographic vulnerabilities have been successfully remediated through comprehensive security enhancements:
- **6 critical/high vulnerabilities resolved**
- **7 new security modules implemented**
- **200+ security tests added**
- **100% backward compatibility maintained**
- **Zero security debt remaining**
The Sonr blockchain now implements industry-leading cryptographic security practices that protect against current and emerging threats.
</Callout>
## Contact
For security-related inquiries:
- Security Team: security@sonr.io
- Bug Bounty Program: https://sonr.io/security/bug-bounty
- Security Advisories: https://github.com/sonr-io/sonr/security/advisories
---
*Report Date: 2024*
*Classification: Public*
*Version: 1.0*
EOF < /dev/null
-294
View File
@@ -1,294 +0,0 @@
---
title: VRF Key Management
description: Guide to managing VRF keys for multi-validator encryption
---
# VRF Key Management
VRF (Verifiable Random Function) keys are essential for consensus-based encryption in multi-validator Sonr networks. This guide explains how VRF keys work, how to manage them, and how to troubleshoot common issues.
## Overview
VRF keys enable:
- **Deterministic randomness** in distributed systems
- **Multi-validator encryption** key derivation
- **Consensus-based key rotation** when validator sets change
- **Secure encryption** without requiring shared secrets
## Automatic Generation
VRF keys are automatically generated when you initialize a new node:
```bash
snrd init <moniker> --chain-id sonrtest_1-1
```
This creates:
- VRF keypair at `~/.sonr/vrf_secret.key`
- Deterministic generation from chain-id
- Secure 0600 permissions (owner read/write only)
## VRF Key Commands
The `snrd keys vrf` command suite provides complete VRF key management:
### Show VRF Key Information
Display your node's VRF public key and verify configuration:
```bash
snrd keys vrf show
```
Example output:
```
VRF Key Information:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Key Path: /home/user/.sonr/vrf_secret.key
Public Key: d2d8f52119ba12f7f41b004314e3d040526393f09ba434f5b4196c4242ddac0d
Key Size: 64 bytes
Public Key Size: 32 bytes
Permissions: -rw-------
Modified: 2025-09-27 00:33:11
✓ VRF keys are properly configured
```
### Verify VRF Functionality
Test that VRF keys are working correctly:
```bash
snrd keys vrf verify
```
This performs:
- VRF key loading
- Public key derivation
- Test VRF computation with proof
- Cryptographic verification
### Generate New VRF Keys
Generate or regenerate VRF keys (with backup):
```bash
# Generate for current chain
snrd keys vrf generate
# Generate for specific chain
snrd keys vrf generate --chain-id sonrtest_1-1
# Force regenerate (creates backup)
snrd keys vrf generate --force
```
**⚠️ Warning**: Regenerating VRF keys will invalidate existing consensus-based encryption keys. Only do this if you understand the implications.
## Multi-Validator Testnet Setup
When setting up a multi-validator testnet, ensure each validator generates unique VRF keys:
### Using Scripts
The testnet scripts automatically generate VRF keys:
```bash
# Single node testnet
CHAIN_ID="sonrtest_1-1" CLEAN=true bash scripts/test_node.sh
# Multi-node testnet with Starship
make start
```
### Manual Setup
For manual validator setup:
1. **Initialize each validator**:
```bash
snrd init validator-01 --chain-id sonrtest_1-1
```
2. **Verify VRF keys**:
```bash
snrd keys vrf verify
```
3. **Check permissions**:
```bash
ls -la ~/.sonr/vrf_secret.key
# Should show: -rw------- (0600)
```
## Encryption Configuration
VRF keys are only required when encryption is enabled. You can control encryption via module parameters:
### Check Encryption Status
```bash
snrd query dwn params
```
Look for the `encryption_enabled` field.
### Disable Encryption
If you don't need encryption features, you can disable them:
```bash
# Via governance proposal
snrd tx gov submit-proposal param-change proposal.json
```
With `proposal.json`:
```json
{
"title": "Disable DWN Encryption",
"description": "Disable encryption features",
"changes": [
{
"subspace": "dwn",
"key": "EncryptionEnabled",
"value": "false"
}
]
}
```
## Troubleshooting
### Error: "VRF keys not loaded"
**Cause**: VRF keys are missing or corrupted.
**Solution**:
1. Check if keys exist:
```bash
ls -la ~/.sonr/vrf_secret.key
```
2. If missing, generate keys:
```bash
snrd keys vrf generate --chain-id sonrtest_1-1
```
3. If present but corrupted, regenerate:
```bash
snrd keys vrf generate --force
```
### Error: "Failed to check and perform key rotation"
**Cause**: VRF keys not available during EndBlock, but encryption is enabled.
**Solution**:
1. Verify VRF keys:
```bash
snrd keys vrf verify
```
2. Or disable encryption if not needed:
```bash
# Check current params
snrd query dwn params
# Submit governance proposal to disable
```
### Incorrect Permissions
**Cause**: VRF key file has insecure permissions.
**Fix**:
```bash
chmod 0600 ~/.sonr/vrf_secret.key
```
### Single-Node vs Multi-Validator
- **Single-node development**: Works without VRF keys (deterministic fallback)
- **Multi-validator testnet**: Requires VRF keys for consensus encryption
- **Production**: Always use VRF keys with proper security
## Security Best Practices
### Key Storage
- **Never share** VRF private keys between validators
- **Backup** VRF keys securely (offline storage)
- **Rotate** validator nodes if keys are compromised
- **Monitor** file permissions regularly
### File Permissions
Always ensure restrictive permissions:
```bash
# Check permissions
ls -la ~/.sonr/vrf_secret.key
# Fix if needed
chmod 0600 ~/.sonr/vrf_secret.key
chown $(whoami):$(whoami) ~/.sonr/vrf_secret.key
```
### Key Backup
Backup your VRF keys securely:
```bash
# Create encrypted backup
tar -czf vrf-backup.tar.gz -C ~/.sonr vrf_secret.key
gpg --symmetric --cipher-algo AES256 vrf-backup.tar.gz
# Store vrf-backup.tar.gz.gpg securely offline
```
### Recovery
Restore from backup:
```bash
# Decrypt backup
gpg --decrypt vrf-backup.tar.gz.gpg > vrf-backup.tar.gz
# Extract to correct location
tar -xzf vrf-backup.tar.gz -C ~/.sonr/
# Verify permissions
chmod 0600 ~/.sonr/vrf_secret.key
snrd keys vrf verify
```
## Advanced Topics
### Deterministic Generation
VRF keys are generated deterministically from the chain-id using SHA256. This means:
- Same chain-id = same VRF keys
- Different validators should use different chain configurations
- Re-running `snrd init` with same chain-id produces same keys
### VRF Algorithm
Sonr uses **VRF based on Ed25519** (Curve25519):
- Private key: 64 bytes (32 bytes secret + 32 bytes public)
- Public key: 32 bytes
- Proof: 80 bytes
- Output: 32 bytes of verifiable randomness
### Consensus Encryption
Multi-validator encryption key derivation:
1. Each validator computes VRF output from consensus input
2. VRF outputs are combined to derive encryption key
3. Automatic rotation when validator set changes
4. Keys are never transmitted over network
## See Also
- [Configure Local Node](/guides/configure-local-node) - Node setup guide
- [Development](/guides/development) - Development environment setup
- [Deployment](/guides/deployment) - Production deployment guide
-562
View File
@@ -1,562 +0,0 @@
---
title: VRF Key Migration Guide
description: Migrate existing validator nodes to use VRF keys without downtime
---
# VRF Key Migration Guide
This guide provides step-by-step instructions for adding VRF keys to existing Sonr validator nodes that were initialized before VRF key support was added.
## Overview
VRF (Verifiable Random Function) keys are required for:
- Multi-validator encryption features (added in v0.1.12)
- Consensus-based key rotation
- Secure encryption key derivation
Existing nodes initialized before v0.1.12 may not have VRF keys generated.
## Pre-Migration Checklist
Before starting the migration:
- [ ] **Backup** your validator keys and configuration
- [ ] **Identify** which validators need VRF keys
- [ ] **Plan** migration during low-traffic period
- [ ] **Coordinate** with other validators (for governance proposals)
- [ ] **Test** on testnet first
## Migration Scenarios
### Scenario 1: Encryption Not Needed
If your network doesn't use encryption features, you can disable encryption instead of generating VRF keys.
**Option A: Disable via Governance**
1. Create governance proposal:
```bash
cat > disable-encryption-proposal.json <<EOF
{
"messages": [
{
"@type": "/cosmos.params.v1beta1.MsgUpdateParams",
"authority": "sonr10d07y265gmmuvt4z0w9aw880jnsr700j8yv32t",
"params": {
"encryption_enabled": false
}
}
],
"metadata": "Disable encryption until VRF keys are configured",
"deposit": "10000000usnr",
"title": "Disable DWN Encryption",
"summary": "Temporary disable encryption to allow gradual VRF key rollout"
}
EOF
```
2. Submit proposal:
```bash
snrd tx gov submit-proposal disable-encryption-proposal.json \
--from validator \
--chain-id sonrtest_1-1 \
--gas auto \
--gas-adjustment 1.5
```
3. Vote and wait for execution.
**Option B: Genesis Parameter (New Networks Only)**
For new networks, set in genesis:
```json
{
"app_state": {
"dwn": {
"params": {
"encryption_enabled": false
}
}
}
}
```
### Scenario 2: Gradual Migration (Recommended)
Migrate validators one at a time to minimize risk.
**Step 1: Disable Encryption Temporarily**
Follow Scenario 1, Option A to disable encryption via governance.
**Step 2: Generate VRF Keys for Each Validator**
On each validator node:
1. **Stop the validator** (optional, but recommended):
```bash
systemctl stop snrd
# or
pkill snrd
```
2. **Generate VRF keys**:
```bash
snrd keys vrf generate --chain-id sonrtest_1-1
```
3. **Verify generation**:
```bash
snrd keys vrf show
snrd keys vrf verify
```
4. **Check permissions**:
```bash
ls -la ~/.sonr/vrf_secret.key
# Should show: -rw------- (0600)
```
5. **Restart validator**:
```bash
systemctl start snrd
# or start manually
```
6. **Verify node is syncing**:
```bash
snrd status | jq '.SyncInfo'
```
**Step 3: Verify All Validators Have VRF Keys**
On each validator, run:
```bash
snrd keys vrf verify
```
All validators should show:
```
✓ VRF keys are fully functional
```
**Step 4: Re-enable Encryption**
Once all validators have VRF keys:
1. Create governance proposal:
```bash
cat > enable-encryption-proposal.json <<EOF
{
"messages": [
{
"@type": "/cosmos.params.v1beta1.MsgUpdateParams",
"authority": "sonr10d07y265gmmuvt4z0w9aw880jnsr700j8yv32t",
"params": {
"encryption_enabled": true
}
}
],
"metadata": "Re-enable encryption after VRF key deployment",
"deposit": "10000000usnr",
"title": "Enable DWN Encryption",
"summary": "Re-enable encryption now that all validators have VRF keys"
}
EOF
```
2. Submit and execute proposal.
### Scenario 3: Coordinated Network Upgrade
For critical production networks, coordinate a network-wide upgrade.
**Phase 1: Preparation (1-2 weeks before)**
1. **Announce upgrade** to all validators
2. **Share migration plan** and timeline
3. **Test on testnet** with same validator set
4. **Prepare rollback plan**
**Phase 2: Pre-Upgrade (1 day before)**
1. **Verify all validators** are ready:
```bash
# Check validator set
snrd query staking validators --output json | jq '.validators[] | {moniker, status}'
```
2. **Backup critical data**:
```bash
# Backup validator state
tar -czf validator-backup-$(date +%Y%m%d).tar.gz \
~/.sonr/config/ \
~/.sonr/data/priv_validator_state.json
```
3. **Sync upgrade binary**:
```bash
# Ensure all validators have same version
snrd version
```
**Phase 3: Migration Window**
1. **Stop network** at agreed block height:
```bash
# All validators stop
systemctl stop snrd
```
2. **Generate VRF keys** on each validator:
```bash
snrd keys vrf generate --chain-id sonrtest_1-1
snrd keys vrf verify
```
3. **Verify permissions**:
```bash
chmod 0600 ~/.sonr/vrf_secret.key
```
4. **Restart validators** in coordination:
```bash
systemctl start snrd
```
5. **Monitor network recovery**:
```bash
# Watch consensus
snrd status | jq '.SyncInfo.catching_up'
# Watch block production
watch -n 1 'snrd status | jq ".SyncInfo.latest_block_height"'
```
**Phase 4: Post-Migration Verification**
1. **Check all validators online**:
```bash
snrd query tendermint-validator-set | jq '.validators[].address'
```
2. **Verify VRF functionality**:
```bash
# On each validator
snrd keys vrf verify
```
3. **Test encryption features**:
```bash
# Create encrypted record
snrd tx dwn create-record \
--protocol "encrypted-protocol" \
--data "test-data" \
--from validator
```
4. **Monitor for errors**:
```bash
journalctl -u snrd -f | grep -i "vrf\|encryption"
```
## Rollback Procedures
If issues arise during migration:
### Emergency Rollback
1. **Stop affected validators**:
```bash
systemctl stop snrd
```
2. **Disable encryption via governance** (if network is running):
```bash
# Submit emergency proposal
snrd tx gov submit-proposal disable-encryption-proposal.json --expedited
```
3. **Restore from backup**:
```bash
# Stop node
systemctl stop snrd
# Restore backup
tar -xzf validator-backup-YYYYMMDD.tar.gz -C ~/
# Restart
systemctl start snrd
```
4. **Verify recovery**:
```bash
snrd status
```
### Gradual Rollback
If only some validators have issues:
1. Keep VRF keys on working validators
2. Remove VRF keys from problematic validators:
```bash
mv ~/.sonr/vrf_secret.key ~/.sonr/vrf_secret.key.backup
```
3. Disable encryption temporarily
4. Debug issues before retry
## Validation & Testing
### Pre-Migration Testing
Test on a private testnet first:
```bash
# Setup test network
CHAIN_ID="test-migration" make localnet
# Test VRF generation
snrd keys vrf generate --chain-id test-migration
snrd keys vrf verify
# Test with encryption enabled
snrd query dwn params
# Test key rotation
# (trigger validator set change)
```
### Post-Migration Validation
After migration, verify:
1. **All validators have VRF keys**:
```bash
# On each validator
snrd keys vrf show
```
2. **No VRF errors in logs**:
```bash
journalctl -u snrd --since "1 hour ago" | grep -i "vrf" | grep -i "error"
# Should return nothing
```
3. **Encryption working**:
```bash
snrd query dwn params | jq '.params.encryption_enabled'
# Should return: true
```
4. **Key rotation functional**:
```bash
# Check encryption state
snrd query dwn encryption-state
```
## Troubleshooting
### Issue: "VRF keys not loaded"
**Cause**: Keys not generated or file permissions incorrect.
**Fix**:
```bash
# Regenerate keys
snrd keys vrf generate --chain-id <your-chain-id> --force
# Fix permissions
chmod 0600 ~/.sonr/vrf_secret.key
# Verify
snrd keys vrf verify
```
### Issue: "Failed to check and perform key rotation"
**Cause**: Encryption enabled but VRF keys missing on some validators.
**Fix**:
1. Identify validators without VRF keys
2. Temporarily disable encryption
3. Generate VRF keys on all validators
4. Re-enable encryption
### Issue: Network Stalled During Migration
**Cause**: Too many validators offline simultaneously.
**Fix**:
1. Ensure >2/3 voting power online
2. Coordinate restart timing
3. Use smaller migration windows per validator
### Issue: Inconsistent VRF Keys
**Cause**: Different chain-id used during generation.
**Fix**:
```bash
# Check chain-id in genesis
jq '.chain_id' ~/.sonr/config/genesis.json
# Regenerate with correct chain-id
snrd keys vrf generate --chain-id <correct-chain-id> --force
```
## Best Practices
### Before Migration
- ✅ Test on testnet with same topology
- ✅ Backup all validator data
- ✅ Document rollback procedures
- ✅ Prepare monitoring dashboards
- ✅ Schedule during low-traffic period
### During Migration
- ✅ Migrate one validator at a time (gradual)
- ✅ Monitor logs continuously
- ✅ Verify each step before proceeding
- ✅ Keep communication channels open
- ✅ Document any issues encountered
### After Migration
- ✅ Verify all validators functional
- ✅ Test encryption features
- ✅ Monitor performance metrics
- ✅ Update documentation
- ✅ Schedule follow-up verification
## Timeline Recommendations
### Small Network (3-5 validators)
- **Preparation**: 3-5 days
- **Migration**: 1-2 hours
- **Verification**: 1 day
### Medium Network (10-20 validators)
- **Preparation**: 1 week
- **Migration**: 4-6 hours (gradual) or 30 minutes (coordinated)
- **Verification**: 2-3 days
### Large Network (50+ validators)
- **Preparation**: 2-3 weeks
- **Migration**: 1-2 days (gradual) or network upgrade
- **Verification**: 1 week
## Support & Resources
- **VRF Key Management Guide**: `/guides/vrf-key-management`
- **GitHub Issues**: https://github.com/sonr-io/sonr/issues
- **Discord**: Validator support channel
- **Documentation**: https://docs.sonr.io
## Appendix: Automation Script
For networks with many validators, use this automation script:
```bash
#!/bin/bash
# vrf-migration.sh - Automated VRF key migration helper
set -e
CHAIN_ID="${CHAIN_ID:-sonrtest_1-1}"
BACKUP_DIR="${BACKUP_DIR:-$HOME/vrf-backup}"
# Colors for output
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
log_info() {
echo -e "${GREEN}[INFO]${NC} $1"
}
log_warn() {
echo -e "${YELLOW}[WARN]${NC} $1"
}
log_error() {
echo -e "${RED}[ERROR]${NC} $1"
}
# Backup existing data
backup_validator() {
log_info "Creating backup..."
mkdir -p "$BACKUP_DIR"
tar -czf "$BACKUP_DIR/validator-$(date +%Y%m%d-%H%M%S).tar.gz" \
~/.sonr/config/ \
~/.sonr/data/priv_validator_state.json 2>/dev/null || true
log_info "Backup created at $BACKUP_DIR"
}
# Generate VRF keys
generate_vrf() {
log_info "Generating VRF keys for chain: $CHAIN_ID"
if snrd keys vrf generate --chain-id "$CHAIN_ID"; then
log_info "VRF keys generated successfully"
else
log_error "Failed to generate VRF keys"
exit 1
fi
}
# Verify VRF keys
verify_vrf() {
log_info "Verifying VRF keys..."
if snrd keys vrf verify; then
log_info "VRF keys verified successfully"
else
log_error "VRF key verification failed"
exit 1
fi
}
# Fix permissions
fix_permissions() {
log_info "Fixing VRF key permissions..."
chmod 0600 ~/.sonr/vrf_secret.key
log_info "Permissions set to 0600"
}
# Main migration flow
main() {
log_info "Starting VRF key migration..."
log_info "Chain ID: $CHAIN_ID"
# Backup
backup_validator
# Generate keys
generate_vrf
# Fix permissions
fix_permissions
# Verify
verify_vrf
log_info "Migration completed successfully!"
log_info "Please restart your validator node"
}
# Run migration
main
```
Save and run:
```bash
chmod +x vrf-migration.sh
CHAIN_ID="sonrtest_1-1" ./vrf-migration.sh
```
+55 -45
View File
@@ -1,27 +1,37 @@
--- ---
title: Introduction title: Introduction
description: The peer-to-peer identity and asset management system that makes Web3 as easy as Web2 through DID documents, WebAuthn, and IPFS—providing users with secure, portable decentralized identity description: The peer-to-peer identity and asset management system that makes Web3 as easy as Web2 through DID documents, WebAuthn, and IPFS—providing users with secure, portable decentralized identity
sidebarTitle: "Overview" icon: "house"
icon: "play" sidebar:
label: "Introduction"
--- ---
# Introduction to Sonr Sonr is a Cosmos SDK chain that replaces wallet addresses with W3C DIDs, seed
phrases with passkeys, and unlimited token approvals with scoped UCAN
capabilities. Start wherever you are:
<Note title="Scope"> <CardGroup cols={2}>
This document introduces Sonr's blockchain architecture, core components, and <Card title="Install snrd" href="/install" icon="download">
integration patterns. It covers identity management, authentication, data Get the binary, join a network, and run your first query.
sovereignty, and cross-chain operations. This document does not cover </Card>
implementation details or code examples—see the Quick Start Guide for hands-on <Card title="Set up your environment" href="/development" icon="code">
tutorials. The development workflow: local node, codegen, and testing.
</Note> </Card>
<Card title="Become a validator" href="/onboarding" icon="boxes">
Join the active set and start signing blocks.
</Card>
<Card title="Module reference" href="/reference/modules/did" icon="boxes">
`x/did`, `x/dwn`, `x/svc`, and `x/dex` — messages, queries, and state.
</Card>
</CardGroup>
<Note title="Audience"> :::note[Who this is for]
**Developers** building Web3 applications who want simple integration **Developers** integrating identity and payments with standard web APIs.
patterns. **Validators** interested in securing a next-generation blockchain **Validators** securing the network. **Users** who want sovereign identity
network. **Users** seeking sovereign digital identity solutions. without seed phrases. This page covers architecture and integration patterns —
Prerequisites: Basic understanding of web development (HTML/JavaScript) for for hands-on walkthroughs start with [Get Started](/development), and for exact
developers; blockchain consensus for validators. signatures see the [Reference](/reference).
</Note> :::
## Summary ## Summary
@@ -64,16 +74,16 @@ Sonr provides:
## Core Architecture ## Core Architecture
<CardGroup> <CardGroup>
<Card title="Decentralized Identity (DID)" href="/blockchain/modules/did/"> <Card title="Decentralized Identity (DID)" href="/reference/modules/did">
W3C-compliant identity system using WebAuthn for passwordless authentication W3C-compliant identity system using WebAuthn for passwordless authentication
</Card> </Card>
<Card title="Decentralized Web Nodes (DWN)" href="/blockchain/modules/dwn/"> <Card title="Decentralized Web Nodes (DWN)" href="/reference/concepts/sonrmodules/dwn/">
Personal Vaults acting as user-controlled agents for blockchain interactions Personal Vaults acting as user-controlled agents for blockchain interactions
</Card> </Card>
<Card title="UCAN Authorization" href="/blockchain/modules/svc/ucan"> <Card title="UCAN Authorization" href="/reference/modules/svc">
Capability-based permissions replacing dangerous unlimited approve patterns Capability-based permissions replacing dangerous unlimited approve patterns
</Card> </Card>
<Card title="Service Registry" href="/blockchain/modules/svc/"> <Card title="Service Registry" href="/reference/modules/svc">
Stake-based trust system for service discovery and DNS verification Stake-based trust system for service discovery and DNS verification
</Card> </Card>
</CardGroup> </CardGroup>
@@ -110,7 +120,7 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
### Developer Resources ### Developer Resources
<CardGroup> <CardGroup>
<Card title="Browser Integration" href="/quickstart/browser"> <Card title="Browser Integration" href="/onboardingbrowser">
Web browser integration patterns and examples Web browser integration patterns and examples
</Card> </Card>
<Card title="Highway Wallet" href="/highway/"> <Card title="Highway Wallet" href="/highway/">
@@ -119,7 +129,7 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
<Card title="Payment Integration" href="/highway/wallets/sending-payments"> <Card title="Payment Integration" href="/highway/wallets/sending-payments">
Payment integration guide Payment integration guide
</Card> </Card>
<Card title="Blockchain Modules" href="/blockchain/"> <Card title="Blockchain Modules" href="/reference/concepts/sonr">
Core blockchain modules and architecture Core blockchain modules and architecture
</Card> </Card>
</CardGroup> </CardGroup>
@@ -131,16 +141,16 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
Validators secure four critical systems: Validators secure four critical systems:
<CardGroup> <CardGroup>
<Card title="Blockchain Core" href="/blockchain/"> <Card title="Blockchain Core" href="/reference/concepts/sonr">
Cosmos SDK with IBC for cross-chain operations Cosmos SDK with IBC for cross-chain operations
</Card> </Card>
<Card title="Token Economics" href="/blockchain/token/"> <Card title="Token Economics" href="/reference/concepts/sonrtoken/">
Tokenomics, staking, and governance Tokenomics, staking, and governance
</Card> </Card>
<Card title="Highway Proxy" href="/highway/"> <Card title="Highway Proxy" href="/highway/">
HTTP bridge supporting WebAuthn authentication HTTP bridge supporting WebAuthn authentication
</Card> </Card>
<Card title="Validator Setup" href="/quickstart/validators"> <Card title="Validator Setup" href="/deployment">
Validator node setup and operations Validator node setup and operations
</Card> </Card>
</CardGroup> </CardGroup>
@@ -167,10 +177,10 @@ Validators perform five key functions:
### Identity Management ### Identity Management
<CardGroup> <CardGroup>
<Card title="Identity System" href="/blockchain/modules/did/"> <Card title="Identity System" href="/reference/modules/did">
W3C DIDs with WebAuthn for digital sovereignty W3C DIDs with WebAuthn for digital sovereignty
</Card> </Card>
<Card title="DID Module" href="/blockchain/modules/did/"> <Card title="DID Module" href="/reference/modules/did">
Blockchain implementation of identity management Blockchain implementation of identity management
</Card> </Card>
</CardGroup> </CardGroup>
@@ -178,10 +188,10 @@ Validators perform five key functions:
### Data Sovereignty ### Data Sovereignty
<CardGroup> <CardGroup>
<Card title="DWN Module" href="/blockchain/modules/dwn/"> <Card title="DWN Module" href="/reference/concepts/sonrmodules/dwn/">
Personal Vaults for user-controlled data and agents Personal Vaults for user-controlled data and agents
</Card> </Card>
<Card title="Blockchain Network" href="/blockchain/network"> <Card title="Blockchain Network" href="/reference/concepts/sonrnetwork">
Network architecture and specifications Network architecture and specifications
</Card> </Card>
</CardGroup> </CardGroup>
@@ -189,10 +199,10 @@ Validators perform five key functions:
### Authorization System ### Authorization System
<CardGroup> <CardGroup>
<Card title="UCAN Module" href="/blockchain/modules/svc/ucan"> <Card title="UCAN Module" href="/reference/modules/svc">
Capability-based permissions for secure delegation Capability-based permissions for secure delegation
</Card> </Card>
<Card title="Service Module" href="/blockchain/modules/svc/"> <Card title="Service Module" href="/reference/modules/svc">
Registration, verification, and trust management Registration, verification, and trust management
</Card> </Card>
</CardGroup> </CardGroup>
@@ -200,7 +210,7 @@ Validators perform five key functions:
### Cross-Chain Features ### Cross-Chain Features
<CardGroup> <CardGroup>
<Card title="Blockchain Network" href="/blockchain/network"> <Card title="Blockchain Network" href="/reference/concepts/sonrnetwork">
Network architecture and cross-chain features Network architecture and cross-chain features
</Card> </Card>
<Card title="Payment Handler" href="/highway/wallets/sending-payments"> <Card title="Payment Handler" href="/highway/wallets/sending-payments">
@@ -215,13 +225,13 @@ Validators perform five key functions:
Build Web3 applications without blockchain complexity: Build Web3 applications without blockchain complexity:
<CardGroup> <CardGroup>
<Card title="Quick Start" href="/quickstart/"> <Card title="Quick Start" href="/onboarding">
Create your first Sonr application in 10 minutes Create your first Sonr application in 10 minutes
</Card> </Card>
<Card title="Browser Integration" href="/quickstart/browser"> <Card title="Browser Integration" href="/onboardingbrowser">
Real-world integration patterns for web applications Real-world integration patterns for web applications
</Card> </Card>
<Card title="CLI Tools" href="/quickstart/cli"> <Card title="CLI Tools" href="/onboardingcli">
Command line tools and utilities Command line tools and utilities
</Card> </Card>
</CardGroup> </CardGroup>
@@ -231,10 +241,10 @@ Build Web3 applications without blockchain complexity:
Secure the future of digital sovereignty: Secure the future of digital sovereignty:
<CardGroup> <CardGroup>
<Card title="Node Setup" href="/quickstart/validators"> <Card title="Node Setup" href="/deployment">
Complete validator installation guide Complete validator installation guide
</Card> </Card>
<Card title="Token Economics" href="/blockchain/token/"> <Card title="Token Economics" href="/reference/concepts/sonrtoken/">
Token distribution, staking, and governance Token distribution, staking, and governance
</Card> </Card>
<Card title="Security" href="/reference/security/"> <Card title="Security" href="/reference/security/">
@@ -247,10 +257,10 @@ Secure the future of digital sovereignty:
Experience true digital ownership: Experience true digital ownership:
<CardGroup> <CardGroup>
<Card title="Create Identity" href="/blockchain/modules/did/onboarding"> <Card title="Create Identity" href="/onboarding">
30-second setup with biometric authentication 30-second setup with biometric authentication
</Card> </Card>
<Card title="Use Your Vault" href="/blockchain/modules/dwn/"> <Card title="Use Your Vault" href="/reference/concepts/sonrmodules/dwn/">
Master your personal Web3 agent Master your personal Web3 agent
</Card> </Card>
<Card title="Security Guide" href="/reference/security/"> <Card title="Security Guide" href="/reference/security/">
@@ -260,13 +270,13 @@ Experience true digital ownership:
## Next Steps ## Next Steps
<Note title="Ready to Build?" type="success"> :::note[Ready to Build?]
**Developers**: Start with the [Quick Start Guide](/quickstart/) to build your first Sonr application. **Developers**: Start with the [Quick Start Guide](/onboarding) to build your first Sonr application.
**Validators**: Follow the [Node Setup Guide](/quickstart/validators) to join the network. **Validators**: Follow the [Node Setup Guide](/deployment) to join the network.
**Users**: [Create your identity](/blockchain/modules/did/onboarding) in under 30 seconds. **Users**: [Create your identity](/onboarding) in under 30 seconds.
</Note> :::
Explore the concepts above or dive into specific topics using the navigation menu. Join us in building the sovereign internet where identity belongs to individuals, not platforms. Explore the concepts above or dive into specific topics using the navigation menu. Join us in building the sovereign internet where identity belongs to individuals, not platforms.
+30 -29
View File
@@ -1,8 +1,9 @@
--- ---
title: Build with Sonr title: Build with Sonr
description: The peer-to-peer identity and asset management system that makes Web3 as easy as Web2 through DID documents, WebAuthn, and IPFS—providing users with secure, portable decentralized identity description: The peer-to-peer identity and asset management system that makes Web3 as easy as Web2 through DID documents, WebAuthn, and IPFS—providing users with secure, portable decentralized identity
sidebarTitle: "Installation"
icon: "download" icon: "download"
sidebar:
label: "Installation"
--- ---
## Summary ## Summary
@@ -46,16 +47,16 @@ Sonr provides:
## Core Architecture ## Core Architecture
<CardGroup> <CardGroup>
<Card title="Decentralized Identity (DID)" href="/blockchain/modules/did/"> <Card title="Decentralized Identity (DID)" href="/reference/modules/did">
W3C-compliant identity system using WebAuthn for passwordless authentication W3C-compliant identity system using WebAuthn for passwordless authentication
</Card> </Card>
<Card title="Decentralized Web Nodes (DWN)" href="/blockchain/modules/dwn/"> <Card title="Decentralized Web Nodes (DWN)" href="/reference/concepts/sonrmodules/dwn/">
Personal Vaults acting as user-controlled agents for blockchain interactions Personal Vaults acting as user-controlled agents for blockchain interactions
</Card> </Card>
<Card title="UCAN Authorization" href="/blockchain/modules/svc/ucan"> <Card title="UCAN Authorization" href="/reference/modules/svc">
Capability-based permissions replacing dangerous unlimited approve patterns Capability-based permissions replacing dangerous unlimited approve patterns
</Card> </Card>
<Card title="Service Registry" href="/blockchain/modules/svc/"> <Card title="Service Registry" href="/reference/modules/svc">
Stake-based trust system for service discovery and DNS verification Stake-based trust system for service discovery and DNS verification
</Card> </Card>
</CardGroup> </CardGroup>
@@ -92,7 +93,7 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
### Developer Resources ### Developer Resources
<CardGroup> <CardGroup>
<Card title="Browser Integration" href="/quickstart/browser"> <Card title="Browser Integration" href="/onboardingbrowser">
Web browser integration patterns and examples Web browser integration patterns and examples
</Card> </Card>
<Card title="Highway Wallet" href="/highway/"> <Card title="Highway Wallet" href="/highway/">
@@ -101,7 +102,7 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
<Card title="Payment Integration" href="/highway/wallets/sending-payments"> <Card title="Payment Integration" href="/highway/wallets/sending-payments">
Payment integration guide Payment integration guide
</Card> </Card>
<Card title="Blockchain Modules" href="/blockchain/"> <Card title="Blockchain Modules" href="/reference/concepts/sonr">
Core blockchain modules and architecture Core blockchain modules and architecture
</Card> </Card>
</CardGroup> </CardGroup>
@@ -113,16 +114,16 @@ Users approve with biometrics. Vaults handle transactions. No wallet connections
Validators secure four critical systems: Validators secure four critical systems:
<CardGroup> <CardGroup>
<Card title="Blockchain Core" href="/blockchain/"> <Card title="Blockchain Core" href="/reference/concepts/sonr">
Cosmos SDK with IBC for cross-chain operations Cosmos SDK with IBC for cross-chain operations
</Card> </Card>
<Card title="Token Economics" href="/blockchain/token/"> <Card title="Token Economics" href="/reference/concepts/sonrtoken/">
Tokenomics, staking, and governance Tokenomics, staking, and governance
</Card> </Card>
<Card title="Highway Proxy" href="/highway/"> <Card title="Highway Proxy" href="/highway/">
HTTP bridge supporting WebAuthn authentication HTTP bridge supporting WebAuthn authentication
</Card> </Card>
<Card title="Validator Setup" href="/quickstart/validators"> <Card title="Validator Setup" href="/deployment">
Validator node setup and operations Validator node setup and operations
</Card> </Card>
</CardGroup> </CardGroup>
@@ -149,10 +150,10 @@ Validators perform five key functions:
### Identity Management ### Identity Management
<CardGroup> <CardGroup>
<Card title="Identity System" href="/blockchain/modules/did/"> <Card title="Identity System" href="/reference/modules/did">
W3C DIDs with WebAuthn for digital sovereignty W3C DIDs with WebAuthn for digital sovereignty
</Card> </Card>
<Card title="DID Module" href="/blockchain/modules/did/"> <Card title="DID Module" href="/reference/modules/did">
Blockchain implementation of identity management Blockchain implementation of identity management
</Card> </Card>
</CardGroup> </CardGroup>
@@ -160,10 +161,10 @@ Validators perform five key functions:
### Data Sovereignty ### Data Sovereignty
<CardGroup> <CardGroup>
<Card title="DWN Module" href="/blockchain/modules/dwn/"> <Card title="DWN Module" href="/reference/concepts/sonrmodules/dwn/">
Personal Vaults for user-controlled data and agents Personal Vaults for user-controlled data and agents
</Card> </Card>
<Card title="Blockchain Network" href="/blockchain/network"> <Card title="Blockchain Network" href="/reference/concepts/sonrnetwork">
Network architecture and specifications Network architecture and specifications
</Card> </Card>
</CardGroup> </CardGroup>
@@ -171,10 +172,10 @@ Validators perform five key functions:
### Authorization System ### Authorization System
<CardGroup> <CardGroup>
<Card title="UCAN Module" href="/blockchain/modules/svc/ucan"> <Card title="UCAN Module" href="/reference/modules/svc">
Capability-based permissions for secure delegation Capability-based permissions for secure delegation
</Card> </Card>
<Card title="Service Module" href="/blockchain/modules/svc/"> <Card title="Service Module" href="/reference/modules/svc">
Registration, verification, and trust management Registration, verification, and trust management
</Card> </Card>
</CardGroup> </CardGroup>
@@ -182,7 +183,7 @@ Validators perform five key functions:
### Cross-Chain Features ### Cross-Chain Features
<CardGroup> <CardGroup>
<Card title="Blockchain Network" href="/blockchain/network"> <Card title="Blockchain Network" href="/reference/concepts/sonrnetwork">
Network architecture and cross-chain features Network architecture and cross-chain features
</Card> </Card>
<Card title="Payment Handler" href="/highway/wallets/sending-payments"> <Card title="Payment Handler" href="/highway/wallets/sending-payments">
@@ -197,13 +198,13 @@ Validators perform five key functions:
Build Web3 applications without blockchain complexity: Build Web3 applications without blockchain complexity:
<CardGroup> <CardGroup>
<Card title="Quick Start" href="/quickstart/"> <Card title="Quick Start" href="/onboarding">
Create your first Sonr application in 10 minutes Create your first Sonr application in 10 minutes
</Card> </Card>
<Card title="Browser Integration" href="/quickstart/browser"> <Card title="Browser Integration" href="/onboardingbrowser">
Real-world integration patterns for web applications Real-world integration patterns for web applications
</Card> </Card>
<Card title="CLI Tools" href="/quickstart/cli"> <Card title="CLI Tools" href="/onboardingcli">
Command line tools and utilities Command line tools and utilities
</Card> </Card>
</CardGroup> </CardGroup>
@@ -213,10 +214,10 @@ Build Web3 applications without blockchain complexity:
Secure the future of digital sovereignty: Secure the future of digital sovereignty:
<CardGroup> <CardGroup>
<Card title="Node Setup" href="/quickstart/validators"> <Card title="Node Setup" href="/deployment">
Complete validator installation guide Complete validator installation guide
</Card> </Card>
<Card title="Token Economics" href="/blockchain/token/"> <Card title="Token Economics" href="/reference/concepts/sonrtoken/">
Token distribution, staking, and governance Token distribution, staking, and governance
</Card> </Card>
<Card title="Security" href="/reference/security/"> <Card title="Security" href="/reference/security/">
@@ -229,10 +230,10 @@ Secure the future of digital sovereignty:
Experience true digital ownership: Experience true digital ownership:
<CardGroup> <CardGroup>
<Card title="Create Identity" href="/blockchain/modules/did/onboarding"> <Card title="Create Identity" href="/onboarding">
30-second setup with biometric authentication 30-second setup with biometric authentication
</Card> </Card>
<Card title="Use Your Vault" href="/blockchain/modules/dwn/"> <Card title="Use Your Vault" href="/reference/concepts/sonrmodules/dwn/">
Master your personal Web3 agent Master your personal Web3 agent
</Card> </Card>
<Card title="Security Guide" href="/reference/security/"> <Card title="Security Guide" href="/reference/security/">
@@ -242,13 +243,13 @@ Experience true digital ownership:
## Next Steps ## Next Steps
<Note title="Ready to Build?" type="success"> :::note[Ready to Build?]
**Developers**: Start with the [Quick Start Guide](/quickstart/) to build your first Sonr application. **Developers**: Start with the [Quick Start Guide](/onboarding) to build your first Sonr application.
**Validators**: Follow the [Node Setup Guide](/quickstart/validators) to join the network. **Validators**: Follow the [Node Setup Guide](/deployment) to join the network.
**Users**: [Create your identity](/blockchain/modules/did/onboarding) in under 30 seconds. **Users**: [Create your identity](/onboarding) in under 30 seconds.
</Note> :::
Explore the concepts above or dive into specific topics using the navigation menu. Join us in building the sovereign internet where identity belongs to individuals, not platforms. Explore the concepts above or dive into specific topics using the navigation menu. Join us in building the sovereign internet where identity belongs to individuals, not platforms.
View File
View File
View File
+24 -63
View File
@@ -3,8 +3,6 @@ title: snrd
description: The Sonr blockchain daemon (server) command description: The Sonr blockchain daemon (server) command
--- ---
# snrd
The main command for running and interacting with the Sonr blockchain node. The main command for running and interacting with the Sonr blockchain node.
## Usage ## Usage
@@ -40,61 +38,24 @@ snrd [command]
## Flags ## Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction (e.g., 10aatom)" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "Adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g., 10aatom)" },
<ParamField path="fees" type="string"> "help": { type: "boolean", description: "Help for snrd" },
Fees to pay along with transaction (e.g., 10aatom) "home": { type: "string", default: "~/.sonr", description: "Directory for config and data" },
</ParamField> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "boolean", description: "Disable colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"trace": { type: "boolean", description: "Print out full stack trace on errors" },
<ParamField path="gas-adjustment" type="float" default="1"> }}
Adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored />
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g., 10aatom)
</ParamField>
<ParamField path="help" type="boolean">
Help for snrd
</ParamField>
<ParamField path="home" type="string" default="~/.sonr">
Directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="boolean">
Disable colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="boolean">
Print out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -124,9 +85,9 @@ snrd [command] --help
## See Also ## See Also
- [snrd auth](./snrd_auth.mdx) - User authentication with Passkeys - [snrd auth](./snrd_auth) - User authentication with Passkeys
- [snrd genesis](./snrd_genesis.mdx) - Genesis-related subcommands - [snrd genesis](./snrd_genesis) - Genesis-related subcommands
- [snrd init](./snrd_init.mdx) - Initialize node configuration - [snrd init](./snrd_init) - Initialize node configuration
- [snrd keys](./snrd_keys.mdx) - Manage application keys - [snrd keys](./snrd_keys) - Manage application keys
- [snrd query](./snrd_query.mdx) - Query blockchain state - [snrd query](./snrd_query) - Query blockchain state
- [snrd tx](./snrd_tx.mdx) - Submit transactions - [snrd tx](./snrd_tx) - Submit transactions
+24 -58
View File
@@ -3,8 +3,6 @@ title: snrd auth
description: User authentication with Passkeys description: User authentication with Passkeys
--- ---
# snrd auth
Manage user authentication using WebAuthn/Passkey technology for decentralized identity. Manage user authentication using WebAuthn/Passkey technology for decentralized identity.
## Usage ## Usage
@@ -22,63 +20,31 @@ snrd auth [command]
## Flags ## Flags
<ParamField path="help" type="boolean"> <TypeTable
Help for auth type={{
</ParamField> "help": { type: "boolean", description: "Help for auth" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction (e.g., 10aatom)" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "Adjustment factor to be multiplied against the estimate returned by the tx simulation" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g., 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "~/.sonr", description: "Directory for config and data" },
Fees to pay along with transaction (e.g., 10aatom) "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled)" },
<ParamField path="from" type="string"> "log_no_color": { type: "boolean", description: "Disable colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "Tendermint RPC interface for this chain" },
</ParamField> "trace": { type: "boolean", description: "Print out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
Adjustment factor to be multiplied against the estimate returned by the tx simulation
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g., 10aatom)
</ParamField>
<ParamField path="home" type="string" default="~/.sonr">
Directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled)
</ParamField>
<ParamField path="log_no_color" type="boolean">
Disable colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
Tendermint RPC interface for this chain
</ParamField>
<ParamField path="trace" type="boolean">
Print out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -96,5 +62,5 @@ snrd auth login --username alice
## See Also ## See Also
- [snrd auth register](./snrd_auth_register.mdx) - Register a new identity using WebAuthn - [snrd auth register](./snrd_auth_register) - Register a new identity using WebAuthn
- [snrd auth login](./snrd_auth_login.mdx) - Login with WebAuthn authentication - [snrd auth login](./snrd_auth) - Login with WebAuthn authentication
+27 -70
View File
@@ -3,8 +3,6 @@ title: snrd auth register
description: Register a new decentralized identity using WebAuthn/Passkey authentication description: Register a new decentralized identity using WebAuthn/Passkey authentication
--- ---
# snrd auth register
Register a new decentralized identity using WebAuthn/Passkey authentication. Register a new decentralized identity using WebAuthn/Passkey authentication.
This command will: This command will:
@@ -21,75 +19,34 @@ snrd auth register [flags]
## Flags ## Flags
<ParamField path="username" type="string" required> <TypeTable
Username for the new identity type={{
</ParamField> "username": { type: "string", required: true, description: "Username for the new identity" },
"auto-vault": { type: "boolean", default: "true", description: "Automatically create vault for DID" },
<ParamField path="auto-vault" type="boolean" default="true"> "webauthn": { type: "boolean", default: "true", description: "Use WebAuthn for registration" },
Automatically create vault for DID "help": { type: "boolean", description: "Help for register" },
</ParamField> }}
/>
<ParamField path="webauthn" type="boolean" default="true">
Use WebAuthn for registration
</ParamField>
<ParamField path="help" type="boolean">
Help for register
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction (e.g., 10aatom)" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "Adjustment factor to be multiplied against the estimate returned by the tx simulation" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g., 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "~/.sonr", description: "Directory for config and data" },
Fees to pay along with transaction (e.g., 10aatom) "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level" },
<ParamField path="from" type="string"> "log_no_color": { type: "boolean", description: "Disable colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "Tendermint RPC interface for this chain" },
</ParamField> "trace": { type: "boolean", description: "Print out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
Adjustment factor to be multiplied against the estimate returned by the tx simulation
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g., 10aatom)
</ParamField>
<ParamField path="home" type="string" default="~/.sonr">
Directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level
</ParamField>
<ParamField path="log_no_color" type="boolean">
Disable colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
Tendermint RPC interface for this chain
</ParamField>
<ParamField path="trace" type="boolean">
Print out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -113,5 +70,5 @@ snrd auth register --username alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd auth](./snrd_auth.mdx) - User authentication with Passkeys - [snrd auth](./snrd_auth) - User authentication with Passkeys
- [snrd auth login](./snrd_auth_login.mdx) - Login with WebAuthn authentication - [snrd auth login](./snrd_auth) - Login with WebAuthn authentication
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd genesis
description: Application's genesis-related subcommands description: Application's genesis-related subcommands
--- ---
# snrd genesis
Application's genesis-related subcommands
## Usage ## Usage
```shell ```shell
@@ -29,63 +25,31 @@ snrd genesis [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for genesis type={{
</ParamField> "help": { type: "string", description: "for genesis" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -97,4 +61,4 @@ snrd genesis
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
@@ -3,10 +3,6 @@ title: snrd genesis add-genesis-account
description: Add a genesis account to genesis.json. The provided account must specify description: Add a genesis account to genesis.json. The provided account must specify
--- ---
# snrd genesis add-genesis-account
Add a genesis account to genesis.json. The provided account must specify
## Usage ## Usage
```shell ```shell
@@ -15,99 +11,40 @@ snrd genesis add-genesis-account [address_or_key_name] [coin][,[coin]] [flags]
## Flags ## Flags
<ParamField path="append" type="string"> <TypeTable
the coins to an account already in the genesis.json file type={{
</ParamField> "append": { type: "string", description: "the coins to an account already in the genesis.json file" },
"grpc-addr": { type: "string", description: "the gRPC endpoint to use for this chain" },
<ParamField path="grpc-addr" type="string"> "grpc-insecure": { type: "string", description: "gRPC over insecure channels, if not the server must use TLS" },
the gRPC endpoint to use for this chain "height": { type: "integer", description: "Use a specific height to query state at (this can error if the node is pruning state)" },
</ParamField> "help": { type: "string", description: "for add-genesis-account" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
<ParamField path="grpc-insecure" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|kwallet|pass|test)" },
gRPC over insecure channels, if not the server must use TLS "module-name": { type: "string", description: "module account name" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to CometBFT RPC interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="height" type="integer"> "vesting-amount": { type: "string", description: "amount of coins for vesting accounts" },
Use a specific height to query state at (this can error if the node is pruning state) "vesting-end-time": { type: "integer", description: "schedule end time (unix epoch) for vesting accounts" },
</ParamField> "vesting-start-time": { type: "integer", description: "schedule start time (unix epoch) for vesting accounts" },
}}
<ParamField path="help" type="string"> />
for add-genesis-account
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|kwallet|pass|test)
</ParamField>
<ParamField path="module-name" type="string">
module account name
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to CometBFT RPC interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="vesting-amount" type="string">
amount of coins for vesting accounts
</ParamField>
<ParamField path="vesting-end-time" type="integer">
schedule end time (unix epoch) for vesting accounts
</ParamField>
<ParamField path="vesting-start-time" type="integer">
schedule start time (unix epoch) for vesting accounts
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
Fees to pay along with transaction; eg: 10aatom "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
</ParamField> "log_no_color": { type: "string", description: "colored logs" },
"trace": { type: "string", description: "out full stack trace on errors" },
<ParamField path="from" type="string"> }}
Name or address of private key with which to sign />
</ParamField>
<ParamField path="gas-adjustment" type="float" default="1">
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -119,4 +56,4 @@ snrd genesis add-genesis-account alice 1000000snr
## See Also ## See Also
- [snrd genesis](./snrd_genesis.mdx) - Parent command - [snrd genesis](./snrd_genesis) - Parent command
@@ -3,8 +3,6 @@ title: snrd genesis collect-gentxs
description: Collect genesis txs and output a genesis.json file description: Collect genesis txs and output a genesis.json file
--- ---
# snrd genesis collect-gentxs
Collect genesis txs and output a genesis.json file. This command iterates over all genesis transactions in the gentx directory and merges them into the genesis.json file. Collect genesis txs and output a genesis.json file. This command iterates over all genesis transactions in the gentx directory and merges them into the genesis.json file.
## Usage ## Usage
@@ -15,67 +13,32 @@ snrd genesis collect-gentxs [flags]
## Flags ## Flags
<ParamField path="gentx-dir" type="string"> <TypeTable
Override default "gentx" directory from which collect and execute genesis transactions; default [--home]/config/gentx/ type={{
</ParamField> "gentx-dir": { type: "string", description: "Override default \"gentx\" directory from which collect and execute genesis transactions; default [--home]/config/gentx/" },
"help": { type: "boolean", description: "Help for collect-gentxs" },
<ParamField path="help" type="boolean"> "home": { type: "string", default: "~/.sonr", description: "The application home directory" },
Help for collect-gentxs }}
</ParamField> />
<ParamField path="home" type="string" default="~/.sonr">
The application home directory
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction (e.g., 10aatom)" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "Adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g., 10aatom)" },
<ParamField path="fees" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Fees to pay along with transaction (e.g., 10aatom) "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "boolean", description: "Disable colored logs" },
<ParamField path="from" type="string"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
Name or address of private key with which to sign "trace": { type: "boolean", description: "Print out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-adjustment" type="float" default="1">
Adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g., 10aatom)
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="boolean">
Disable colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="boolean">
Print out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -93,6 +56,6 @@ snrd genesis collect-gentxs --gentx-dir ./custom-gentx/
## See Also ## See Also
- [snrd genesis](./snrd_genesis.mdx) - Genesis-related subcommands - [snrd genesis](./snrd_genesis) - Genesis-related subcommands
- [snrd genesis gentx](./snrd_genesis_gentx.mdx) - Generate a genesis tx carrying a self delegation - [snrd genesis gentx](./snrd_genesis_gentx) - Generate a genesis tx carrying a self delegation
- [snrd genesis add-genesis-account](./snrd_genesis_add-genesis-account.mdx) - Add a genesis account to genesis.json - [snrd genesis add-genesis-account](./snrd_genesis_add-genesis-account) - Add a genesis account to genesis.json
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd genesis export
description: Application's genesis-related subcommands description: Application's genesis-related subcommands
--- ---
# snrd genesis export
Application's genesis-related subcommands
## Usage ## Usage
```shell ```shell
@@ -29,63 +25,31 @@ snrd genesis [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for genesis type={{
</ParamField> "help": { type: "string", description: "for genesis" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -97,4 +61,4 @@ snrd genesis export
## See Also ## See Also
- [snrd genesis](./snrd_genesis.mdx) - Parent command - [snrd genesis](./snrd_genesis) - Parent command
+54 -183
View File
@@ -3,10 +3,6 @@ title: snrd genesis gentx
description: Generate a genesis transaction that creates a validator with a self-delegation, description: Generate a genesis transaction that creates a validator with a self-delegation,
--- ---
# snrd genesis gentx
Generate a genesis transaction that creates a validator with a self-delegation,
## Usage ## Usage
```shell ```shell
@@ -15,187 +11,62 @@ snrd genesis gentx [key_name] [amount] [flags]
## Flags ## Flags
<ParamField path="account-number" type="string"> <TypeTable
The account number of the signing account (offline mode only) type={{
</ParamField> "account-number": { type: "string", description: "The account number of the signing account (offline mode only)" },
"amount": { type: "string", description: "Amount of coins to bond" },
<ParamField path="amount" type="string"> "aux": { type: "string", description: "aux signer data instead of sending a tx" },
Amount of coins to bond "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
</ParamField> "chain-id": { type: "string", description: "The network chain ID" },
"commission-max-change-rate": { type: "string", description: "The maximum commission change rate percentage (per day)" },
<ParamField path="aux" type="string"> "commission-max-rate": { type: "string", description: "The maximum commission rate percentage" },
aux signer data instead of sending a tx "commission-rate": { type: "string", description: "The initial commission rate percentage" },
</ParamField> "details": { type: "string", description: "The validator's (optional) details" },
"dry-run": { type: "string", description: "the --gas flag and perform a simulation of a transaction, but don't broadcast it (when enabled, the local Keybase is not accessible)" },
<ParamField path="broadcast-mode" type="string" default="sync"> "fee-granter": { type: "string", description: "Fee granter grants fees for the transaction" },
Transaction broadcasting mode (sync|async) "fee-payer": { type: "string", description: "Fee payer pays fees for the transaction instead of deducting from the signer" },
</ParamField> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10uatom" },
"from": { type: "string", description: "Name or address of private key with which to sign" },
<ParamField path="chain-id" type="string"> "gas": { type: "string", default: "200000", description: "gas limit to set per-transaction; set to \"auto\" to calculate sufficient gas automatically. Note: \"auto\" option doesn't always report accurate results. Set a valid coin value to adjust the result. Can be used instead of \"fees\"." },
The network chain ID "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices in decimal format to determine the transaction fee (e.g. 0.1uatom)" },
"generate-only": { type: "string", description: "an unsigned transaction and write it to STDOUT (when enabled, the local Keybase only accessed when providing a key name)" },
<ParamField path="commission-max-change-rate" type="string"> "help": { type: "string", description: "for gentx" },
The maximum commission change rate percentage (per day) "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
</ParamField> "identity": { type: "string", description: "The (optional) identity signature (ex. UPort or Keybase)" },
"ip": { type: "string", default: "192.168.1.203", description: "The node's public P2P IP" },
<ParamField path="commission-max-rate" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|kwallet|pass|test|memory)" },
The maximum commission rate percentage "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
</ParamField> "ledger": { type: "string", description: "a connected Ledger device" },
"min-self-delegation": { type: "string", description: "The minimum self delegation required on the validator" },
<ParamField path="commission-rate" type="string"> "moniker": { type: "string", description: "The validator's (optional) moniker" },
The initial commission rate percentage "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to CometBFT rpc interface for this chain" },
</ParamField> "node-id": { type: "string", description: "The node's NodeID" },
"note": { type: "string", description: "Note to add a description to the transaction (previously --memo)" },
<ParamField path="details" type="string"> "offline": { type: "string", description: "mode (does not allow any online functionality)" },
The validator's (optional) details "output-document": { type: "string", description: "Write the genesis transaction JSON document to the given file instead of the default location" },
</ParamField> "p2p-port": { type: "string", default: "26656", description: "The node's public P2P port" },
"pubkey": { type: "string", description: "The validator's Protobuf JSON encoded public key" },
<ParamField path="dry-run" type="string"> "security-contact": { type: "string", description: "The validator's (optional) security contact email" },
the --gas flag and perform a simulation of a transaction, but don't broadcast it (when enabled, the local Keybase is not accessible) "sequence": { type: "string", description: "The sequence number of the signing account (offline mode only)" },
</ParamField> "sign-mode": { type: "string", description: "Choose sign mode (direct|amino-json|direct-aux|textual), this is an advanced feature" },
"timeout-height": { type: "string", description: "Set a block timeout height to prevent the tx from being committed past a certain height" },
<ParamField path="fee-granter" type="string"> "tip": { type: "string", description: "Tip is the amount that is going to be transferred to the fee payer on the target chain. This flag is only valid when used with --aux, and is ignored if the target chain didn't enable the TipDecorator" },
Fee granter grants fees for the transaction "website": { type: "string", description: "The validator's (optional) website" },
</ParamField> "yes": { type: "string", description: "tx broadcasting prompt confirmation" },
}}
<ParamField path="fee-payer" type="string"> />
Fee payer pays fees for the transaction instead of deducting from the signer
</ParamField>
<ParamField path="fees" type="string">
Fees to pay along with transaction; eg: 10uatom
</ParamField>
<ParamField path="from" type="string">
Name or address of private key with which to sign
</ParamField>
<ParamField path="gas" type="string" default="200000">
gas limit to set per-transaction; set to "auto" to calculate sufficient gas automatically. Note: "auto" option doesn't always report accurate results. Set a valid coin value to adjust the result. Can be used instead of "fees".
</ParamField>
<ParamField path="gas-adjustment" type="float" default="1">
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices in decimal format to determine the transaction fee (e.g. 0.1uatom)
</ParamField>
<ParamField path="generate-only" type="string">
an unsigned transaction and write it to STDOUT (when enabled, the local Keybase only accessed when providing a key name)
</ParamField>
<ParamField path="help" type="string">
for gentx
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="identity" type="string">
The (optional) identity signature (ex. UPort or Keybase)
</ParamField>
<ParamField path="ip" type="string" default="192.168.1.203">
The node's public P2P IP
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|kwallet|pass|test|memory)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="ledger" type="string">
a connected Ledger device
</ParamField>
<ParamField path="min-self-delegation" type="string">
The minimum self delegation required on the validator
</ParamField>
<ParamField path="moniker" type="string">
The validator's (optional) moniker
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to CometBFT rpc interface for this chain
</ParamField>
<ParamField path="node-id" type="string">
The node's NodeID
</ParamField>
<ParamField path="note" type="string">
Note to add a description to the transaction (previously --memo)
</ParamField>
<ParamField path="offline" type="string">
mode (does not allow any online functionality)
</ParamField>
<ParamField path="output-document" type="string">
Write the genesis transaction JSON document to the given file instead of the default location
</ParamField>
<ParamField path="p2p-port" type="string" default="26656">
The node's public P2P port
</ParamField>
<ParamField path="pubkey" type="string">
The validator's Protobuf JSON encoded public key
</ParamField>
<ParamField path="security-contact" type="string">
The validator's (optional) security contact email
</ParamField>
<ParamField path="sequence" type="string">
The sequence number of the signing account (offline mode only)
</ParamField>
<ParamField path="sign-mode" type="string">
Choose sign mode (direct|amino-json|direct-aux|textual), this is an advanced feature
</ParamField>
<ParamField path="timeout-height" type="string">
Set a block timeout height to prevent the tx from being committed past a certain height
</ParamField>
<ParamField path="tip" type="string">
Tip is the amount that is going to be transferred to the fee payer on the target chain. This flag is only valid when used with --aux, and is ignored if the target chain didn't enable the TipDecorator
</ParamField>
<ParamField path="website" type="string">
The validator's (optional) website
</ParamField>
<ParamField path="yes" type="string">
tx broadcasting prompt confirmation
</ParamField>
## Global Flags ## Global Flags
<ParamField path="log_format" type="string" default="plain"> <TypeTable
The logging format (json|plain) type={{
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="log_level" type="string" default="info"> "log_no_color": { type: "string", description: "colored logs" },
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;') "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -207,4 +78,4 @@ snrd genesis gentx alice 1000000snr --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd genesis](./snrd_genesis.mdx) - Parent command - [snrd genesis](./snrd_genesis) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd genesis init
description: Application's genesis-related subcommands description: Application's genesis-related subcommands
--- ---
# snrd genesis init
Application's genesis-related subcommands
## Usage ## Usage
```shell ```shell
@@ -29,63 +25,31 @@ snrd genesis [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for genesis type={{
</ParamField> "help": { type: "string", description: "for genesis" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -97,4 +61,4 @@ snrd genesis init
## See Also ## See Also
- [snrd genesis](./snrd_genesis.mdx) - Parent command - [snrd genesis](./snrd_genesis) - Parent command
@@ -3,10 +3,6 @@ title: snrd genesis migrate
description: Migrate the source genesis into the target version and print to STDOUT description: Migrate the source genesis into the target version and print to STDOUT
--- ---
# snrd genesis migrate
Migrate the source genesis into the target version and print to STDOUT
## Usage ## Usage
```shell ```shell
@@ -15,71 +11,33 @@ snrd genesis migrate [target-version] [genesis-file] [flags]
## Flags ## Flags
<ParamField path="chain-id" type="string"> <TypeTable
Override chain_id with this flag type={{
</ParamField> "chain-id": { type: "string", description: "Override chain_id with this flag" },
"genesis-time": { type: "string", description: "Override genesis_time with this flag" },
<ParamField path="genesis-time" type="string"> "help": { type: "string", description: "for migrate" },
Override genesis_time with this flag "output-document": { type: "string", description: "Exported state is written to the given file instead of STDOUT" },
</ParamField> }}
/>
<ParamField path="help" type="string">
for migrate
</ParamField>
<ParamField path="output-document" type="string">
Exported state is written to the given file instead of STDOUT
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
<ParamField path="fees" type="string"> "from": { type: "string", description: "Name or address of private key with which to sign" },
Fees to pay along with transaction; eg: 10aatom "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
<ParamField path="from" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Name or address of private key with which to sign "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="gas-adjustment" type="float" default="1"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -91,4 +49,4 @@ snrd genesis migrate
## See Also ## See Also
- [snrd genesis](./snrd_genesis.mdx) - Parent command - [snrd genesis](./snrd_genesis) - Parent command
@@ -3,10 +3,6 @@ title: snrd genesis validate
description: Validates the genesis file at the default location or at the location passed as an arg description: Validates the genesis file at the default location or at the location passed as an arg
--- ---
# snrd genesis validate
Validates the genesis file at the default location or at the location passed as an arg
## Usage ## Usage
```shell ```shell
@@ -15,63 +11,31 @@ snrd genesis validate [file] [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for validate type={{
</ParamField> "help": { type: "string", description: "for validate" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -83,4 +47,4 @@ snrd genesis validate
## See Also ## See Also
- [snrd genesis](./snrd_genesis.mdx) - Parent command - [snrd genesis](./snrd_genesis) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd help
description: Help provides help for any command in the application. description: Help provides help for any command in the application.
--- ---
# snrd help
Help provides help for any command in the application.
## Usage ## Usage
```shell ```shell
@@ -15,63 +11,31 @@ snrd help [command] [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for help type={{
</ParamField> "help": { type: "string", description: "for help" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -83,4 +47,4 @@ snrd help
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+27 -75
View File
@@ -3,10 +3,6 @@ title: snrd init
description: Initialize validators's and node's configuration files. description: Initialize validators's and node's configuration files.
--- ---
# snrd init
Initialize validators's and node's configuration files.
## Usage ## Usage
```shell ```shell
@@ -15,79 +11,35 @@ snrd init [moniker] [flags]
## Flags ## Flags
<ParamField path="chain-id" type="string"> <TypeTable
genesis file chain-id, if left blank will be randomly created type={{
</ParamField> "chain-id": { type: "string", description: "genesis file chain-id, if left blank will be randomly created" },
"default-denom": { type: "string", description: "genesis file default denomination, if left blank default value is 'stake'" },
<ParamField path="default-denom" type="string"> "help": { type: "string", description: "for init" },
genesis file default denomination, if left blank default value is 'stake' "home": { type: "string", default: "/Users/prad/.sonr", description: "node's home directory" },
</ParamField> "initial-height": { type: "integer", default: "1", description: "specify the initial block height at genesis" },
"overwrite": { type: "string", description: "the genesis.json file" },
<ParamField path="help" type="string"> "recover": { type: "string", description: "seed phrase to recover existing key instead of creating" },
for init }}
</ParamField> />
<ParamField path="home" type="string" default="/Users/prad/.sonr">
node's home directory
</ParamField>
<ParamField path="initial-height" type="integer" default="1">
specify the initial block height at genesis
</ParamField>
<ParamField path="overwrite" type="string">
the genesis.json file
</ParamField>
<ParamField path="recover" type="string">
seed phrase to recover existing key instead of creating
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
<ParamField path="fees" type="string"> "from": { type: "string", description: "Name or address of private key with which to sign" },
Fees to pay along with transaction; eg: 10aatom "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
"keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
<ParamField path="from" type="string"> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
Name or address of private key with which to sign "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
</ParamField> "log_no_color": { type: "string", description: "colored logs" },
"node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -99,4 +51,4 @@ snrd init
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+25 -67
View File
@@ -3,10 +3,6 @@ title: snrd keys
description: Keyring management commands. These keys may be in any format supported by the description: Keyring management commands. These keys may be in any format supported by the
--- ---
# snrd keys
Keyring management commands. These keys may be in any format supported by the
## Usage ## Usage
```shell ```shell
@@ -15,71 +11,33 @@ snrd keys [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for keys type={{
</ParamField> "help": { type: "string", description: "for keys" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
<ParamField path="home" type="string" default="/Users/prad/.sonr"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
The application home directory "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
</ParamField> "output": { type: "string", default: "text", description: "Output format (text|json)" },
}}
<ParamField path="keyring-backend" type="string" default="os"> />
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
Fees to pay along with transaction; eg: 10aatom "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
</ParamField> "log_no_color": { type: "string", description: "colored logs" },
"node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
<ParamField path="from" type="string"> "trace": { type: "string", description: "out full stack trace on errors" },
Name or address of private key with which to sign }}
</ParamField> />
<ParamField path="gas-adjustment" type="float" default="1">
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -91,4 +49,4 @@ snrd keys
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+41 -131
View File
@@ -3,10 +3,6 @@ title: snrd keys add
description: Derive a new private key and encrypt to disk. description: Derive a new private key and encrypt to disk.
--- ---
# snrd keys add
Derive a new private key and encrypt to disk.
## Usage ## Usage
```shell ```shell
@@ -15,135 +11,49 @@ snrd keys add <name> [flags]
## Flags ## Flags
<ParamField path="account" type="integer"> <TypeTable
Account number for HD derivation (less than equal 2147483647) type={{
</ParamField> "account": { type: "integer", description: "Account number for HD derivation (less than equal 2147483647)" },
"coin-type": { type: "integer", default: "60", description: "coin type number for HD derivation" },
<ParamField path="coin-type" type="integer" default="60"> "dry-run": { type: "string", description: "action, but don't add key to local keystore" },
coin type number for HD derivation "hd-path": { type: "string", description: "Manual HD Path derivation (overrides BIP44 config)" },
</ParamField> "help": { type: "string", description: "for add" },
"index": { type: "integer", description: "Address index number for HD derivation (less than equal 2147483647)" },
<ParamField path="dry-run" type="string"> "interactive": { type: "string", description: "prompt user for BIP39 passphrase and mnemonic" },
action, but don't add key to local keystore "key-type": { type: "string", default: "eth_secp256k1", description: "Key signing algorithm to generate keys for" },
</ParamField> "ledger": { type: "string", description: "a local reference to a private key on a Ledger device" },
"multisig": { type: "string", description: "List of key names stored in keyring to construct a public legacy multisig key" },
<ParamField path="hd-path" type="string"> "multisig-threshold": { type: "integer", default: "1", description: "K out of N required signatures. For use in conjunction with --multisig" },
Manual HD Path derivation (overrides BIP44 config) "no-backup": { type: "string", description: "print out seed phrase (if others are watching the terminal)" },
</ParamField> "nosort": { type: "string", description: "passed to --multisig are taken in the order they're supplied" },
"pubkey": { type: "string", description: "Parse a public key in JSON format and saves key info to &lt;name&gt; file." },
<ParamField path="help" type="string"> "pubkey-base64": { type: "string", description: "Parse a public key in base64 format and saves key info." },
for add "recover": { type: "string", description: "seed phrase to recover existing key instead of creating" },
</ParamField> "source": { type: "string", description: "Import mnemonic from a file (only usable when recover or interactive is passed)" },
}}
<ParamField path="index" type="integer"> />
Address index number for HD derivation (less than equal 2147483647)
</ParamField>
<ParamField path="interactive" type="string">
prompt user for BIP39 passphrase and mnemonic
</ParamField>
<ParamField path="key-type" type="string" default="eth_secp256k1">
Key signing algorithm to generate keys for
</ParamField>
<ParamField path="ledger" type="string">
a local reference to a private key on a Ledger device
</ParamField>
<ParamField path="multisig" type="string">
List of key names stored in keyring to construct a public legacy multisig key
</ParamField>
<ParamField path="multisig-threshold" type="integer" default="1">
K out of N required signatures. For use in conjunction with --multisig
</ParamField>
<ParamField path="no-backup" type="string">
print out seed phrase (if others are watching the terminal)
</ParamField>
<ParamField path="nosort" type="string">
passed to --multisig are taken in the order they're supplied
</ParamField>
<ParamField path="pubkey" type="string">
Parse a public key in JSON format and saves key info to &lt;name&gt; file.
</ParamField>
<ParamField path="pubkey-base64" type="string">
Parse a public key in base64 format and saves key info.
</ParamField>
<ParamField path="recover" type="string">
seed phrase to recover existing key instead of creating
</ParamField>
<ParamField path="source" type="string">
Import mnemonic from a file (only usable when recover or interactive is passed)
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
</ParamField> "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "string", description: "colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -155,4 +65,4 @@ snrd keys add alice
## See Also ## See Also
- [snrd keys](./snrd_keys.mdx) - Parent command - [snrd keys](./snrd_keys) - Parent command
+27 -75
View File
@@ -3,10 +3,6 @@ title: snrd keys delete
description: Delete keys from the Keybase backend. description: Delete keys from the Keybase backend.
--- ---
# snrd keys delete
Delete keys from the Keybase backend.
## Usage ## Usage
```shell ```shell
@@ -15,79 +11,35 @@ snrd keys delete <name>... [flags]
## Flags ## Flags
<ParamField path="force" type="string"> <TypeTable
the key unconditionally without asking for the passphrase. Deprecated. type={{
</ParamField> "force": { type: "string", description: "the key unconditionally without asking for the passphrase. Deprecated." },
"help": { type: "string", description: "for delete" },
<ParamField path="help" type="string"> "yes": { type: "string", description: "confirmation prompt when deleting offline or ledger key references" },
for delete }}
</ParamField> />
<ParamField path="yes" type="string">
confirmation prompt when deleting offline or ledger key references
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
</ParamField> "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "string", description: "colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -99,4 +51,4 @@ snrd keys delete
## See Also ## See Also
- [snrd keys](./snrd_keys.mdx) - Parent command - [snrd keys](./snrd_keys) - Parent command
+27 -75
View File
@@ -3,10 +3,6 @@ title: snrd keys export
description: Export a private key from the local keyring in ASCII-armored encrypted format. description: Export a private key from the local keyring in ASCII-armored encrypted format.
--- ---
# snrd keys export
Export a private key from the local keyring in ASCII-armored encrypted format.
## Usage ## Usage
```shell ```shell
@@ -15,79 +11,35 @@ snrd keys export <name> [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for export type={{
</ParamField> "help": { type: "string", description: "for export" },
"unarmored-hex": { type: "string", description: "unarmored hex privkey. Requires --unsafe." },
<ParamField path="unarmored-hex" type="string"> "unsafe": { type: "string", description: "unsafe operations. This flag must be switched on along with all unsafe operation-specific options." },
unarmored hex privkey. Requires --unsafe. }}
</ParamField> />
<ParamField path="unsafe" type="string">
unsafe operations. This flag must be switched on along with all unsafe operation-specific options.
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
</ParamField> "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "string", description: "colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -99,4 +51,4 @@ snrd keys export
## See Also ## See Also
- [snrd keys](./snrd_keys.mdx) - Parent command - [snrd keys](./snrd_keys) - Parent command
+25 -67
View File
@@ -3,10 +3,6 @@ title: snrd keys import
description: Import a ASCII armored private key into the local keybase. description: Import a ASCII armored private key into the local keybase.
--- ---
# snrd keys import
Import a ASCII armored private key into the local keybase.
## Usage ## Usage
```shell ```shell
@@ -15,71 +11,33 @@ snrd keys import <name> <keyfile> [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for import type={{
</ParamField> "help": { type: "string", description: "for import" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
</ParamField> "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "string", description: "colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -91,4 +49,4 @@ snrd keys import
## See Also ## See Also
- [snrd keys](./snrd_keys.mdx) - Parent command - [snrd keys](./snrd_keys) - Parent command
+26 -71
View File
@@ -3,10 +3,6 @@ title: snrd keys list
description: Return a list of all public keys stored by this key manager description: Return a list of all public keys stored by this key manager
--- ---
# snrd keys list
Return a list of all public keys stored by this key manager
## Usage ## Usage
```shell ```shell
@@ -15,75 +11,34 @@ snrd keys list [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for list type={{
</ParamField> "help": { type: "string", description: "for list" },
"list-names": { type: "string", description: "names only" },
<ParamField path="list-names" type="string"> }}
names only />
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
</ParamField> "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "string", description: "colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -95,4 +50,4 @@ snrd keys list
## See Also ## See Also
- [snrd keys](./snrd_keys.mdx) - Parent command - [snrd keys](./snrd_keys) - Parent command
+25 -67
View File
@@ -3,10 +3,6 @@ title: snrd keys migrate
description: Migrate keys from Amino to Protocol Buffers records. description: Migrate keys from Amino to Protocol Buffers records.
--- ---
# snrd keys migrate
Migrate keys from Amino to Protocol Buffers records.
## Usage ## Usage
```shell ```shell
@@ -15,71 +11,33 @@ snrd keys migrate [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for migrate type={{
</ParamField> "help": { type: "string", description: "for migrate" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
</ParamField> "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "string", description: "colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -91,4 +49,4 @@ snrd keys migrate
## See Also ## See Also
- [snrd keys](./snrd_keys.mdx) - Parent command - [snrd keys](./snrd_keys) - Parent command
+25 -67
View File
@@ -3,10 +3,6 @@ title: snrd keys parse
description: Convert and print to stdout key addresses and fingerprints from description: Convert and print to stdout key addresses and fingerprints from
--- ---
# snrd keys parse
Convert and print to stdout key addresses and fingerprints from
## Usage ## Usage
```shell ```shell
@@ -15,71 +11,33 @@ snrd keys parse <hex-or-bech32-address> [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for parse type={{
</ParamField> "help": { type: "string", description: "for parse" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
</ParamField> "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "string", description: "colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -91,4 +49,4 @@ snrd keys parse
## See Also ## See Also
- [snrd keys](./snrd_keys.mdx) - Parent command - [snrd keys](./snrd_keys) - Parent command
+30 -87
View File
@@ -3,10 +3,6 @@ title: snrd keys show
description: Display keys details. If multiple names or addresses are provided, description: Display keys details. If multiple names or addresses are provided,
--- ---
# snrd keys show
Display keys details. If multiple names or addresses are provided,
## Usage ## Usage
```shell ```shell
@@ -15,91 +11,38 @@ snrd keys show [name_or_address [name_or_address...]] [flags]
## Flags ## Flags
<ParamField path="address" type="string"> <TypeTable
the address only (cannot be used with --output) type={{
</ParamField> "address": { type: "string", description: "the address only (cannot be used with --output)" },
"bech": { type: "string", default: "acc", description: "The Bech32 prefix encoding for a key (acc|val|cons)" },
<ParamField path="bech" type="string" default="acc"> "device": { type: "string", description: "the address in a ledger device (cannot be used with --pubkey)" },
The Bech32 prefix encoding for a key (acc|val|cons) "help": { type: "string", description: "for show" },
</ParamField> "multisig-threshold": { type: "integer", default: "1", description: "K out of N required signatures" },
"pubkey": { type: "string", description: "the public key only (cannot be used with --output)" },
<ParamField path="device" type="string"> }}
the address in a ledger device (cannot be used with --pubkey) />
</ParamField>
<ParamField path="help" type="string">
for show
</ParamField>
<ParamField path="multisig-threshold" type="integer" default="1">
K out of N required signatures
</ParamField>
<ParamField path="pubkey" type="string">
the public key only (cannot be used with --output)
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend (os|file|test)" },
</ParamField> "keyring-dir": { type: "string", description: "The client Keyring directory; if omitted, the default 'home' directory will be used" },
"log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
<ParamField path="from" type="string"> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
Name or address of private key with which to sign "log_no_color": { type: "string", description: "colored logs" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="gas-adjustment" type="float" default="1"> "trace": { type: "string", description: "out full stack trace on errors" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored }}
</ParamField> />
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend (os|file|test)
</ParamField>
<ParamField path="keyring-dir" type="string">
The client Keyring directory; if omitted, the default 'home' directory will be used
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -111,4 +54,4 @@ snrd keys show
## See Also ## See Also
- [snrd keys](./snrd_keys.mdx) - Parent command - [snrd keys](./snrd_keys) - Parent command
+1 -3
View File
@@ -3,8 +3,6 @@ title: snrd migrate
description: unknown command "migrate" for "snrd" description: unknown command "migrate" for "snrd"
--- ---
# snrd migrate
unknown command "migrate" for "snrd" unknown command "migrate" for "snrd"
## Examples ## Examples
@@ -17,4 +15,4 @@ snrd migrate
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+1 -3
View File
@@ -3,8 +3,6 @@ title: snrd node
description: unknown command "node" for "snrd" description: unknown command "node" for "snrd"
--- ---
# snrd node
unknown command "node" for "snrd" unknown command "node" for "snrd"
## Examples ## Examples
@@ -17,4 +15,4 @@ snrd node
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+26 -71
View File
@@ -3,10 +3,6 @@ title: snrd prune
description: Prune app history states by keeping the recent heights and deleting old heights. description: Prune app history states by keeping the recent heights and deleting old heights.
--- ---
# snrd prune
Prune app history states by keeping the recent heights and deleting old heights.
## Usage ## Usage
```shell ```shell
@@ -15,75 +11,34 @@ snrd prune [pruning-method] [flags]
## Flags ## Flags
<ParamField path="app-db-backend" type="string"> <TypeTable
The type of database for application and snapshots databases type={{
</ParamField> "app-db-backend": { type: "string", description: "The type of database for application and snapshots databases" },
"help": { type: "string", description: "for prune" },
<ParamField path="help" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
for prune "pruning-interval": { type: "string", description: "Height interval at which pruned heights are removed from disk (ignored if pruning is not 'custom')," },
</ParamField> "pruning-keep-recent": { type: "string", description: "Number of recent heights to keep on disk (ignored if pruning is not 'custom')" },
}}
<ParamField path="home" type="string" default="/Users/prad/.sonr"> />
The application home directory
</ParamField>
<ParamField path="pruning-interval" type="string">
Height interval at which pruned heights are removed from disk (ignored if pruning is not 'custom'),
</ParamField>
<ParamField path="pruning-keep-recent" type="string">
Number of recent heights to keep on disk (ignored if pruning is not 'custom')
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Fees to pay along with transaction; eg: 10aatom "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="from" type="string"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
Name or address of private key with which to sign "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-adjustment" type="float" default="1">
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -95,4 +50,4 @@ snrd prune
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query
description: Querying subcommands description: Querying subcommands
--- ---
# snrd query
Querying subcommands
## Usage ## Usage
```shell ```shell
@@ -60,63 +56,31 @@ snrd query [command]
## Flags ## Flags
<ParamField path="chain-id" type="string"> <TypeTable
The network chain ID type={{
</ParamField> "chain-id": { type: "string", description: "The network chain ID" },
"help": { type: "string", description: "for query" },
<ParamField path="help" type="string"> }}
for query />
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
<ParamField path="fees" type="string"> "from": { type: "string", description: "Name or address of private key with which to sign" },
Fees to pay along with transaction; eg: 10aatom "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
<ParamField path="from" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Name or address of private key with which to sign "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="gas-adjustment" type="float" default="1"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -128,4 +92,4 @@ snrd query
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query account
description: Querying subcommands description: Querying subcommands
--- ---
# snrd query account
Querying subcommands
## Usage ## Usage
```shell ```shell
@@ -60,63 +56,31 @@ snrd query [command]
## Flags ## Flags
<ParamField path="chain-id" type="string"> <TypeTable
The network chain ID type={{
</ParamField> "chain-id": { type: "string", description: "The network chain ID" },
"help": { type: "string", description: "for query" },
<ParamField path="help" type="string"> }}
for query />
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
<ParamField path="fees" type="string"> "from": { type: "string", description: "Name or address of private key with which to sign" },
Fees to pay along with transaction; eg: 10aatom "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
<ParamField path="from" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Name or address of private key with which to sign "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="gas-adjustment" type="float" default="1"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -128,4 +92,4 @@ snrd query account
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query accounts
description: Querying subcommands description: Querying subcommands
--- ---
# snrd query accounts
Querying subcommands
## Usage ## Usage
```shell ```shell
@@ -60,63 +56,31 @@ snrd query [command]
## Flags ## Flags
<ParamField path="chain-id" type="string"> <TypeTable
The network chain ID type={{
</ParamField> "chain-id": { type: "string", description: "The network chain ID" },
"help": { type: "string", description: "for query" },
<ParamField path="help" type="string"> }}
for query />
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
<ParamField path="fees" type="string"> "from": { type: "string", description: "Name or address of private key with which to sign" },
Fees to pay along with transaction; eg: 10aatom "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
<ParamField path="from" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Name or address of private key with which to sign "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="gas-adjustment" type="float" default="1"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -128,4 +92,4 @@ snrd query accounts
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query auth
description: Querying commands for the auth module description: Querying commands for the auth module
--- ---
# snrd query auth
Querying commands for the auth module
## Usage ## Usage
```shell ```shell
@@ -34,63 +30,31 @@ snrd query auth [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for auth type={{
</ParamField> "help": { type: "string", description: "for auth" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -102,4 +66,4 @@ snrd query auth
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query bank
description: Querying commands for the bank module description: Querying commands for the bank module
--- ---
# snrd query bank
Querying commands for the bank module
## Usage ## Usage
```shell ```shell
@@ -36,63 +32,31 @@ snrd query bank [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for bank type={{
</ParamField> "help": { type: "string", description: "for bank" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -104,4 +68,4 @@ snrd query bank
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
@@ -3,10 +3,6 @@ title: snrd query consensus
description: Querying commands for the consensus module description: Querying commands for the consensus module
--- ---
# snrd query consensus
Querying commands for the consensus module
## Usage ## Usage
```shell ```shell
@@ -26,63 +22,31 @@ snrd query consensus [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for consensus type={{
</ParamField> "help": { type: "string", description: "for consensus" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -94,4 +58,4 @@ snrd query consensus
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
@@ -3,10 +3,6 @@ title: snrd query delegation
description: Querying subcommands description: Querying subcommands
--- ---
# snrd query delegation
Querying subcommands
## Usage ## Usage
```shell ```shell
@@ -60,63 +56,31 @@ snrd query [command]
## Flags ## Flags
<ParamField path="chain-id" type="string"> <TypeTable
The network chain ID type={{
</ParamField> "chain-id": { type: "string", description: "The network chain ID" },
"help": { type: "string", description: "for query" },
<ParamField path="help" type="string"> }}
for query />
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
<ParamField path="fees" type="string"> "from": { type: "string", description: "Name or address of private key with which to sign" },
Fees to pay along with transaction; eg: 10aatom "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
<ParamField path="from" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Name or address of private key with which to sign "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="gas-adjustment" type="float" default="1"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -128,4 +92,4 @@ snrd query delegation
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query did
description: Querying commands for the did module description: Querying commands for the did module
--- ---
# snrd query did
Querying commands for the did module
## Usage ## Usage
```shell ```shell
@@ -34,63 +30,31 @@ snrd query did [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for did type={{
</ParamField> "help": { type: "string", description: "for did" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -102,4 +66,4 @@ snrd query did
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
@@ -3,10 +3,6 @@ title: snrd query distribution
description: Querying commands for the distribution module description: Querying commands for the distribution module
--- ---
# snrd query distribution
Querying commands for the distribution module
## Usage ## Usage
```shell ```shell
@@ -34,63 +30,31 @@ snrd query distribution [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for distribution type={{
</ParamField> "help": { type: "string", description: "for distribution" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -102,4 +66,4 @@ snrd query distribution
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query dwn
description: Querying commands for the dwn module description: Querying commands for the dwn module
--- ---
# snrd query dwn
Querying commands for the dwn module
## Usage ## Usage
```shell ```shell
@@ -37,63 +33,31 @@ snrd query dwn [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for dwn type={{
</ParamField> "help": { type: "string", description: "for dwn" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -105,4 +69,4 @@ snrd query dwn
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query feegrant
description: Querying commands for the feegrant module description: Querying commands for the feegrant module
--- ---
# snrd query feegrant
Querying commands for the feegrant module
## Usage ## Usage
```shell ```shell
@@ -27,63 +23,31 @@ snrd query feegrant [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for feegrant type={{
</ParamField> "help": { type: "string", description: "for feegrant" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -95,4 +59,4 @@ snrd query feegrant
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query gov
description: Querying commands for the gov module description: Querying commands for the gov module
--- ---
# snrd query gov
Querying commands for the gov module
## Usage ## Usage
```shell ```shell
@@ -33,63 +29,31 @@ snrd query gov [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for gov type={{
</ParamField> "help": { type: "string", description: "for gov" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -101,4 +65,4 @@ snrd query gov
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query slashing
description: Querying commands for the slashing module description: Querying commands for the slashing module
--- ---
# snrd query slashing
Querying commands for the slashing module
## Usage ## Usage
```shell ```shell
@@ -27,63 +23,31 @@ snrd query slashing [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for slashing type={{
</ParamField> "help": { type: "string", description: "for slashing" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -95,4 +59,4 @@ snrd query slashing
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query staking
description: Querying commands for the staking module description: Querying commands for the staking module
--- ---
# snrd query staking
Querying commands for the staking module
## Usage ## Usage
```shell ```shell
@@ -38,63 +34,31 @@ snrd query staking [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for staking type={{
</ParamField> "help": { type: "string", description: "for staking" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -106,4 +70,4 @@ snrd query staking
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd query svc
description: Querying commands for the svc module description: Querying commands for the svc module
--- ---
# snrd query svc
Querying commands for the svc module
## Usage ## Usage
```shell ```shell
@@ -29,63 +25,31 @@ snrd query svc [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for svc type={{
</ParamField> "help": { type: "string", description: "for svc" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -97,4 +61,4 @@ snrd query svc
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
@@ -3,10 +3,6 @@ title: snrd query tendermint
description: Querying subcommands description: Querying subcommands
--- ---
# snrd query tendermint
Querying subcommands
## Usage ## Usage
```shell ```shell
@@ -60,63 +56,31 @@ snrd query [command]
## Flags ## Flags
<ParamField path="chain-id" type="string"> <TypeTable
The network chain ID type={{
</ParamField> "chain-id": { type: "string", description: "The network chain ID" },
"help": { type: "string", description: "for query" },
<ParamField path="help" type="string"> }}
for query />
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
<ParamField path="fees" type="string"> "from": { type: "string", description: "Name or address of private key with which to sign" },
Fees to pay along with transaction; eg: 10aatom "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
<ParamField path="from" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Name or address of private key with which to sign "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="gas-adjustment" type="float" default="1"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -128,4 +92,4 @@ snrd query tendermint
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+28 -77
View File
@@ -3,8 +3,6 @@ title: snrd query tx
description: Query for a transaction by hash or address/sequence combination description: Query for a transaction by hash or address/sequence combination
--- ---
# snrd query tx
Example: Example:
## Usage ## Usage
@@ -15,83 +13,36 @@ snrd query tx --type=[hash|acc_seq|signature] [hash|acc_seq|signature] [flags]
## Flags ## Flags
<ParamField path="grpc-addr" type="string"> <TypeTable
the gRPC endpoint to use for this chain type={{
</ParamField> "grpc-addr": { type: "string", description: "the gRPC endpoint to use for this chain" },
"grpc-insecure": { type: "string", description: "gRPC over insecure channels, if not the server must use TLS" },
<ParamField path="grpc-insecure" type="string"> "height": { type: "integer", description: "Use a specific height to query state at (this can error if the node is pruning state)" },
gRPC over insecure channels, if not the server must use TLS "help": { type: "string", description: "for tx" },
</ParamField> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to CometBFT RPC interface for this chain" },
"output": { type: "string", default: "text", description: "Output format (text|json)" },
<ParamField path="height" type="integer"> "type": { type: "string", default: "hash", description: "The type to be used when querying tx, can be one of \"hash\", \"acc_seq\", \"signature\"" },
Use a specific height to query state at (this can error if the node is pruning state) }}
</ParamField> />
<ParamField path="help" type="string">
for tx
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to CometBFT RPC interface for this chain
</ParamField>
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
<ParamField path="type" type="string" default="hash">
The type to be used when querying tx, can be one of "hash", "acc_seq", "signature"
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-adjustment" type="float" default="1">
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -103,4 +54,4 @@ snrd query tx
## See Also ## See Also
- [snrd query](./snrd_query.mdx) - Parent command - [snrd query](./snrd_query) - Parent command
+24 -63
View File
@@ -3,10 +3,6 @@ title: snrd rollback
description: A state rollback is performed to recover from an incorrect application state transition, description: A state rollback is performed to recover from an incorrect application state transition,
--- ---
# snrd rollback
A state rollback is performed to recover from an incorrect application state transition,
## Usage ## Usage
```shell ```shell
@@ -15,67 +11,32 @@ snrd rollback [flags]
## Flags ## Flags
<ParamField path="hard" type="string"> <TypeTable
last block as well as state type={{
</ParamField> "hard": { type: "string", description: "last block as well as state" },
"help": { type: "string", description: "for rollback" },
<ParamField path="help" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "The application home directory" },
for rollback }}
</ParamField> />
<ParamField path="home" type="string" default="/Users/prad/.sonr">
The application home directory
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Fees to pay along with transaction; eg: 10aatom "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="from" type="string"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
Name or address of private key with which to sign "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-adjustment" type="float" default="1">
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -87,4 +48,4 @@ snrd rollback
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+24 -63
View File
@@ -3,10 +3,6 @@ title: snrd status
description: Query remote node for status description: Query remote node for status
--- ---
# snrd status
Query remote node for status
## Usage ## Usage
```shell ```shell
@@ -15,67 +11,32 @@ snrd status [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for status type={{
</ParamField> "help": { type: "string", description: "for status" },
"node": { type: "string", default: "tcp://localhost:26657", description: "Node to connect to" },
<ParamField path="node" type="string" default="tcp://localhost:26657"> "output": { type: "string", default: "json", description: "Output format (text|json)" },
Node to connect to }}
</ParamField> />
<ParamField path="output" type="string" default="json">
Output format (text|json)
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-adjustment" type="float" default="1">
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -87,4 +48,4 @@ snrd status
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tendermint
description: CometBFT subcommands description: CometBFT subcommands
--- ---
# snrd tendermint
CometBFT subcommands
## Usage ## Usage
```shell ```shell
@@ -27,63 +23,31 @@ snrd comet [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for comet type={{
</ParamField> "help": { type: "string", description: "for comet" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -95,4 +59,4 @@ snrd tendermint
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx
description: Transactions subcommands description: Transactions subcommands
--- ---
# snrd tx
Transactions subcommands
## Usage ## Usage
```shell ```shell
@@ -64,63 +60,31 @@ snrd tx [command]
## Flags ## Flags
<ParamField path="chain-id" type="string"> <TypeTable
The network chain ID type={{
</ParamField> "chain-id": { type: "string", description: "The network chain ID" },
"help": { type: "string", description: "for tx" },
<ParamField path="help" type="string"> }}
for tx />
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
<ParamField path="fees" type="string"> "from": { type: "string", description: "Name or address of private key with which to sign" },
Fees to pay along with transaction; eg: 10aatom "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
</ParamField> "gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
"home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
<ParamField path="from" type="string"> "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
Name or address of private key with which to sign "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
</ParamField> "log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
"log_no_color": { type: "string", description: "colored logs" },
<ParamField path="gas-adjustment" type="float" default="1"> "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored "trace": { type: "string", description: "out full stack trace on errors" },
</ParamField> }}
/>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -132,4 +96,4 @@ snrd tx --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx bank
description: Bank transaction subcommands description: Bank transaction subcommands
--- ---
# snrd tx bank
Bank transaction subcommands
## Usage ## Usage
```shell ```shell
@@ -26,63 +22,31 @@ snrd tx bank [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for bank type={{
</ParamField> "help": { type: "string", description: "for bank" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -94,4 +58,4 @@ snrd tx bank --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx consensus
description: Transactions commands for the consensus module description: Transactions commands for the consensus module
--- ---
# snrd tx consensus
Transactions commands for the consensus module
## Usage ## Usage
```shell ```shell
@@ -15,63 +11,31 @@ snrd tx consensus [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for consensus type={{
</ParamField> "help": { type: "string", description: "for consensus" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -83,4 +47,4 @@ snrd tx consensus --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx crisis
description: Transactions commands for the crisis module description: Transactions commands for the crisis module
--- ---
# snrd tx crisis
Transactions commands for the crisis module
## Usage ## Usage
```shell ```shell
@@ -25,63 +21,31 @@ snrd tx crisis [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for crisis type={{
</ParamField> "help": { type: "string", description: "for crisis" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -93,4 +57,4 @@ snrd tx crisis --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx did
description: Transactions commands for the did module description: Transactions commands for the did module
--- ---
# snrd tx did
Transactions commands for the did module
## Usage ## Usage
```shell ```shell
@@ -36,63 +32,31 @@ snrd tx did [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for did type={{
</ParamField> "help": { type: "string", description: "for did" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -104,4 +68,4 @@ snrd tx did --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
@@ -3,10 +3,6 @@ title: snrd tx distribution
description: Distribution transactions subcommands description: Distribution transactions subcommands
--- ---
# snrd tx distribution
Distribution transactions subcommands
## Usage ## Usage
```shell ```shell
@@ -29,63 +25,31 @@ snrd tx distribution [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for distribution type={{
</ParamField> "help": { type: "string", description: "for distribution" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -97,4 +61,4 @@ snrd tx distribution --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx dwn
description: Transactions commands for the dwn module description: Transactions commands for the dwn module
--- ---
# snrd tx dwn
Transactions commands for the dwn module
## Usage ## Usage
```shell ```shell
@@ -31,63 +27,31 @@ snrd tx dwn [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for dwn type={{
</ParamField> "help": { type: "string", description: "for dwn" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -99,4 +63,4 @@ snrd tx dwn --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx feegrant
description: Grant and revoke fee allowance for a grantee by a granter description: Grant and revoke fee allowance for a grantee by a granter
--- ---
# snrd tx feegrant
Grant and revoke fee allowance for a grantee by a granter
## Usage ## Usage
```shell ```shell
@@ -27,63 +23,31 @@ snrd tx feegrant [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for feegrant type={{
</ParamField> "help": { type: "string", description: "for feegrant" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -95,4 +59,4 @@ snrd tx feegrant --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx gov
description: Governance transactions subcommands description: Governance transactions subcommands
--- ---
# snrd tx gov
Governance transactions subcommands
## Usage ## Usage
```shell ```shell
@@ -31,63 +27,31 @@ snrd tx gov [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for gov type={{
</ParamField> "help": { type: "string", description: "for gov" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -99,4 +63,4 @@ snrd tx gov --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx slashing
description: Transactions commands for the slashing module description: Transactions commands for the slashing module
--- ---
# snrd tx slashing
Transactions commands for the slashing module
## Usage ## Usage
```shell ```shell
@@ -25,63 +21,31 @@ snrd tx slashing [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for slashing type={{
</ParamField> "help": { type: "string", description: "for slashing" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -93,4 +57,4 @@ snrd tx slashing --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx staking
description: Staking transaction subcommands description: Staking transaction subcommands
--- ---
# snrd tx staking
Staking transaction subcommands
## Usage ## Usage
```shell ```shell
@@ -30,63 +26,31 @@ snrd tx staking [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for staking type={{
</ParamField> "help": { type: "string", description: "for staking" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -98,4 +62,4 @@ snrd tx staking --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+23 -59
View File
@@ -3,10 +3,6 @@ title: snrd tx svc
description: Transactions commands for the svc module description: Transactions commands for the svc module
--- ---
# snrd tx svc
Transactions commands for the svc module
## Usage ## Usage
```shell ```shell
@@ -28,63 +24,31 @@ snrd tx svc [command]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for svc type={{
</ParamField> "help": { type: "string", description: "for svc" },
}}
/>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "The network chain ID" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
The network chain ID "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -96,4 +60,4 @@ snrd tx svc --from alice --chain-id sonrtest_1-1
## See Also ## See Also
- [snrd tx](./snrd_tx.mdx) - Parent command - [snrd tx](./snrd_tx) - Parent command
+25 -67
View File
@@ -3,10 +3,6 @@ title: snrd version
description: Print the application binary version information description: Print the application binary version information
--- ---
# snrd version
Print the application binary version information
## Usage ## Usage
```shell ```shell
@@ -15,71 +11,33 @@ snrd version [flags]
## Flags ## Flags
<ParamField path="help" type="string"> <TypeTable
for version type={{
</ParamField> "help": { type: "string", description: "for version" },
"long": { type: "string", description: "long version information" },
<ParamField path="long" type="string"> "output": { type: "string", default: "text", description: "Output format (text|json)" },
long version information }}
</ParamField> />
<ParamField path="output" type="string" default="text">
Output format (text|json)
</ParamField>
## Global Flags ## Global Flags
<ParamField path="broadcast-mode" type="string" default="sync"> <TypeTable
Transaction broadcasting mode (sync|async) type={{
</ParamField> "broadcast-mode": { type: "string", default: "sync", description: "Transaction broadcasting mode (sync|async)" },
"chain-id": { type: "string", description: "Specify Chain ID for sending Tx" },
<ParamField path="chain-id" type="string"> "fees": { type: "string", description: "Fees to pay along with transaction; eg: 10aatom" },
Specify Chain ID for sending Tx "from": { type: "string", description: "Name or address of private key with which to sign" },
</ParamField> "gas-adjustment": { type: "float", default: "1", description: "adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored" },
"gas-prices": { type: "string", description: "Gas prices to determine the transaction fee (e.g. 10aatom)" },
<ParamField path="fees" type="string"> "home": { type: "string", default: "/Users/prad/.sonr", description: "directory for config and data" },
Fees to pay along with transaction; eg: 10aatom "keyring-backend": { type: "string", default: "os", description: "Select keyring's backend" },
</ParamField> "log_format": { type: "string", default: "plain", description: "The logging format (json|plain)" },
"log_level": { type: "string", default: "info", description: "The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')" },
<ParamField path="from" type="string"> "log_no_color": { type: "string", description: "colored logs" },
Name or address of private key with which to sign "node": { type: "string", default: "tcp://localhost:26657", description: "&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain" },
</ParamField> "trace": { type: "string", description: "out full stack trace on errors" },
}}
<ParamField path="gas-adjustment" type="float" default="1"> />
adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored
</ParamField>
<ParamField path="gas-prices" type="string">
Gas prices to determine the transaction fee (e.g. 10aatom)
</ParamField>
<ParamField path="home" type="string" default="/Users/prad/.sonr">
directory for config and data
</ParamField>
<ParamField path="keyring-backend" type="string" default="os">
Select keyring's backend
</ParamField>
<ParamField path="log_format" type="string" default="plain">
The logging format (json|plain)
</ParamField>
<ParamField path="log_level" type="string" default="info">
The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:&lt;level&gt;,&lt;key&gt;:&lt;level&gt;')
</ParamField>
<ParamField path="log_no_color" type="string">
colored logs
</ParamField>
<ParamField path="node" type="string" default="tcp://localhost:26657">
&lt;host&gt;:&lt;port&gt; to tendermint rpc interface for this chain
</ParamField>
<ParamField path="trace" type="string">
out full stack trace on errors
</ParamField>
## Examples ## Examples
@@ -91,4 +49,4 @@ snrd version
## See Also ## See Also
- [snrd](./snrd.mdx) - Parent command - [snrd](./snrd) - Parent command
+2 -3
View File
@@ -1,12 +1,11 @@
--- ---
title: "Motr WASM Light-Node" title: "Motr WASM Light-Node"
sidebarTitle: "Motr Overview"
description: "Learn how to use the Motor WASM plugin as an MPC-based UCAN source for decentralized token operations" description: "Learn how to use the Motor WASM plugin as an MPC-based UCAN source for decentralized token operations"
icon: "play" icon: "play"
sidebar:
label: "Motr Overview"
--- ---
# Motor WASM Plugin: UCAN Source
The Motor WASM plugin is a WebAssembly-based plugin that provides Multi-Party Computation (MPC) powered UCAN (User-Controlled Authorization Networks) token generation and management. The Motor WASM plugin is a WebAssembly-based plugin that provides Multi-Party Computation (MPC) powered UCAN (User-Controlled Authorization Networks) token generation and management.
## Overview ## Overview
+2 -1
View File
@@ -1,8 +1,9 @@
--- ---
title: The Blockchain for Self-Sovereign Identity title: The Blockchain for Self-Sovereign Identity
sidebarTitle: Sonr Overview
description: A deep dive into Sonr's novel approach to personal data ownership and control. description: A deep dive into Sonr's novel approach to personal data ownership and control.
icon: play icon: play
sidebar:
label: Sonr Overview
--- ---
In a world rapidly approaching the era of quantum computing, traditional cryptographic methods face unprecedented challenges. The burden of securing digital identity can no longer rest solely on the user. Sonr is designed to simplify the user experience while providing far greater security over personal data. We achieve this by incorporating the following concepts into our identity primitive. In a world rapidly approaching the era of quantum computing, traditional cryptographic methods face unprecedented challenges. The burden of securing digital identity can no longer rest solely on the user. Sonr is designed to simplify the user experience while providing far greater security over personal data. We achieve this by incorporating the following concepts into our identity primitive.
+4 -7
View File
@@ -1,13 +1,14 @@
--- ---
title: $SNR Economics title: $SNR Economics
description: "The role of tokenomics in the Sonr ecosystem is twofold: it provides a medium of exchange and serves as a reward mechanism for validators. The platform's native tokens are used to facilitate transactions, secure network integrity, and incentivize behaviors that contribute to the network's longevity and reliability." description: "The role of tokenomics in the Sonr ecosystem is twofold: it provides a medium of exchange and serves as a reward mechanism for validators. The platform's native tokens are used to facilitate transactions, secure network integrity, and incentivize behaviors that contribute to the network's longevity and reliability."
sidebarTitle: "Design Model"
icon: "star" icon: "star"
sidebar:
label: "Design Model"
--- ---
<Note> :::note
The Sonr platform has implemented a sophisticated token handling and treasury process designed to ensure the stability and sustainability of the SNR token. This process is critical in managing the economics of the Sonr ecosystem and ensuring its long-term viability. The Sonr platform has implemented a sophisticated token handling and treasury process designed to ensure the stability and sustainability of the SNR token. This process is critical in managing the economics of the Sonr ecosystem and ensuring its long-term viability.
</Note> :::
## Key Economic Processes ## Key Economic Processes
@@ -50,10 +51,6 @@ The Sonr platform has implemented a sophisticated token handling and treasury pr
</CardGroup> </CardGroup>
## Validator Incentives ## Validator Incentives
Validators play a pivotal role in the network, responsible for processing authentication requests and maintaining the blockchain's integrity. They are incentivized through a task claiming process based on a first-come-first-serve mechanism and are remunerated via transaction fees and token rewards. This incentive structure ensures the high performance and reliability of services within the network. Validators play a pivotal role in the network, responsible for processing authentication requests and maintaining the blockchain's integrity. They are incentivized through a task claiming process based on a first-come-first-serve mechanism and are remunerated via transaction fees and token rewards. This incentive structure ensures the high performance and reliability of services within the network.
+10 -9
View File
@@ -1,15 +1,16 @@
--- ---
openapi: post /dex.v1.Msg/ProvideLiquidity
title: Provide Liquidity to Pool title: Provide Liquidity to Pool
description: Add liquidity to DEX pools and earn LP tokens description: Add liquidity to DEX pools and earn LP tokens
og:title: Add Liquidity to Cross-Chain Pools sidebar:
tag: x/dex badge: x/dex
seo:
title: "Add Liquidity to Cross-Chain Pools"
--- ---
<Info> :::info
LP tokens represent your proportional share of the pool and accrue trading fees. LP tokens represent your proportional share of the pool and accrue trading fees.
</Info> :::
<Note> :::note
Impermanent loss may occur when providing liquidity. Research the risks before proceeding. Impermanent loss may occur when providing liquidity. Research the risks before proceeding.
</Note> :::
+11 -10
View File
@@ -1,16 +1,17 @@
--- ---
openapi: post /dex.v1.Msg/CancelOrder
title: Cancel Limit Order title: Cancel Limit Order
description: Cancel active orders on remote DEX chains description: Cancel active orders on remote DEX chains
og:title: Cancel Cross-Chain Orders sidebar:
tag: x/dex badge: x/dex
seo:
title: "Cancel Cross-Chain Orders"
--- ---
<Warning> :::warning
Order cancellation is not instant. There's a small window where the order Order cancellation is not instant. There's a small window where the order
might still be filled before cancellation is processed. might still be filled before cancellation is processed.
</Warning> :::
<Tip> :::tip
Monitor the IBC packet acknowledgment to confirm successful cancellation. Monitor the IBC packet acknowledgment to confirm successful cancellation.
</Tip> :::
+10 -9
View File
@@ -1,15 +1,16 @@
--- ---
openapi: post /dex.v1.Msg/RegisterDEXAccount
title: Register Interchain DEX Account title: Register Interchain DEX Account
description: Create a new ICA account for cross-chain trading operations description: Create a new ICA account for cross-chain trading operations
og:title: Setup Cross-Chain Trading Account sidebar:
tag: x/dex badge: x/dex
seo:
title: "Setup Cross-Chain Trading Account"
--- ---
<Note> :::note
Account creation is asynchronous. Monitor the IBC packet acknowledgment to confirm the account address. Account creation is asynchronous. Monitor the IBC packet acknowledgment to confirm the account address.
</Note> :::
<Warning> :::warning
Each DID is limited to a maximum number of DEX accounts as configured in module parameters. Each DID is limited to a maximum number of DEX accounts as configured in module parameters.
</Warning> :::

Some files were not shown because too many files have changed in this diff Show More