> For the complete documentation index, see [llms.txt](https://blockgram.gitbook.io/blockgram-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://blockgram.gitbook.io/blockgram-docs/technical-architecture/blockchain-layer-multi-chain-support.md).

# Blockchain Layer: Multi-Chain Support

#### Blockchain Selection Criteria and Supported Chains

BlockGram’s blockchain layer is architected for flexibility and broad compatibility, supporting multiple blockchain protocols to maximize accessibility and performance:

* **Supported Chains:**
  * **Ethereum Virtual Machine (EVM) Compatible Chains:** Ethereum, Binance Smart Chain, Polygon, Avalanche, etc., selected for their mature smart contract ecosystems and wide adoption.
  * **Cosmos SDK-based Chains:** Employed for their modular architecture and fast finality, enabling efficient payment processing.
  * **Layer-2 Solutions:** Optimistic Rollups (e.g., Optimism), zk-Rollups (e.g., zkSync), and sidechains reduce gas costs and latency while preserving security.
* **Selection Criteria:**
  * **Security:** Chain decentralization and robust consensus mechanisms.
  * **Throughput & Latency:** Support for real-time transaction finality aligned with chat UX.
  * **Interoperability:** Availability of bridges or interoperability protocols.
  * **Cost Efficiency:** Low transaction fees critical for microtransactions and bill splitting.
  * **Developer Ecosystem:** Rich tooling and smart contract standards (e.g., ERC-20, ERC-721).

#### Wallet Architecture: HD Wallets, Key Derivation, and Secure Storage

* **Hierarchical Deterministic (HD) Wallets:**\
  BlockGram employs HD wallets compliant with **BIP-32/BIP-44 standards**, allowing deterministic generation of multiple addresses and keys from a single seed phrase. This facilitates:
  * **Multi-currency support:** Generating addresses for different chains and token standards from one seed.
  * **Scalable wallet management:** Efficiently handling many user accounts and tokens.
* **Key Derivation Paths:**\
  Standardized paths per chain and token type enable consistent address generation, enhancing interoperability and ease of recovery.
* **Secure Storage:**
  * Private keys are encrypted at rest using strong AES-256 encryption with hardware security modules (HSMs) employed in backend infrastructure.
  * For user devices, keys are stored securely using platform-native secure enclaves or keystores.
  * Non-custodial design ensures BlockGram does not hold user keys directly, minimizing centralized risk.

#### Smart Contract Design Patterns

* **Payments and Escrow:**
  * Use of **multi-signature and time-locked contracts** to increase transaction security and enable conditional fund releases.
  * Escrow contracts facilitate dispute resolution and trustless transactions in peer-to-peer payments.
* **Bill Splitting Contracts:**
  * Employ **modular, upgradable smart contracts** following proxy patterns to manage group payments.
  * Algorithms embedded within contracts enforce fair shares, handle late payments, and trigger automatic settlements.
* **Gift Cards and NFTs:**
  * Smart contracts issue **NFT-backed gift cards**, embedding metadata that represents value, merchant information, and redemption conditions.
  * Cross-chain token wrapping techniques enable gift card redemption across supported blockchains.
* **Upgradeable Contracts:**
  * Use of **transparent proxies or beacon proxies** enables contract upgrades without disrupting existing state or user balances, ensuring long-term maintainability.

#### Cross-Chain Interoperability

* **Bridges:**\
  BlockGram integrates with **trusted decentralized bridges** to enable seamless token transfers and communication between chains. Examples include Wormhole and Hop Protocol.
* **Atomic Swaps:**\
  For trustless cross-chain exchanges, BlockGram employs **hashed time-lock contracts (HTLCs)** to facilitate atomic swaps, ensuring either both sides complete or both revert, eliminating counterparty risk.
* **Inter-Chain Messaging:**\
  Leveraging protocols like Cosmos IBC (Inter-Blockchain Communication) for state synchronization and asset transfer across Cosmos-based chains and compatible networks.

#### Transaction Batching and Gas Optimization

* **Batching Strategies:**
  * Aggregates multiple user transactions into single on-chain operations to reduce gas consumption and improve throughput.
  * Uses meta-transactions allowing a relayer to submit batched requests on behalf of users.
* **Gas Optimization Techniques:**
  * Smart contract code is optimized for minimal opcode usage, utilizing libraries like OpenZeppelin’s Gas Optimized Contracts.
  * Employs Layer-2 solutions where gas is substantially cheaper.
  * Implements **transaction fee estimation and dynamic gas pricing** algorithms to optimize cost and confirmation time.
* **Fee Abstraction:**\
  BlockGram abstracts transaction fees, optionally subsidizing gas or allowing payment in multiple tokens, improving user experience.
