Multichain Support for Wallets: Build or Buy?

Multichain Support for Wallets: Build or Buy?

For most young companies building crypto software, wallet software is the backbone of your product as it defines how your users interact with blockchains. Being able to successfully transact without friction will make or break any product trying to go to market in web3. Even for businesses that specialize in building wallets, significant engineering time and effort is required to maintain wallet integrations with each blockchain your product supports. This means building in-house wallet libraries, custom integrations, and writing bespoke logic for each chain. Alternatively, you could buy transaction building software to unblock your engineers from trying to reinvent the wheel.

Parts of a blockchain transaction

In a blockchain system, a transaction is the process of sending or receiving data or digital assets on the network. Typically, blockchain transactions consist of: input, output, a transaction ID, fees, the digital signature, and confirmations.

  • Input: the address(es) from which the sender is sending funds or data. Inputs usually include the amount of cryptocurrency being sent and a reference to a previous transaction with the sender’s balance. On UTXO chains like Bitcoin, however, there is no “from” address as might be expected, requiring developers to fully understand the UTXO transaction model.
  • Output: the address(es) which will receive the funds or data. Outputs include the amount of cryptocurrency being received and a unique identifier.
  • Fees: every transaction requires a fee, paid by the sender to the network for processing the transaction. Fees are typically baked on the amount of data being transmitted and demand for blockspace on the network.
  • Digital signature: the cryptographic signature that proves the sender authorized the transaction. The signature is generated using the sender’s private key and can only be verified using their public key.
  • Confirmations: after a transaction is submitted to a blockchain network, it needs to be confirmed by the nodes (miners or validators). Confirmation is when the transaction’s authenticity is validated.
  • Chain state: Different blockchains have different requirements for a transaction to be valid. In many cases, networks require different types of chain state to be included within the transaction. Examples of chain state data included in transactions include nonces, gas fees, blockhash, and more.

Though the key components will likely be similar, different blockchains may use different formats for their transactions. In addition to the above elements, Ethereum transactions, for example, have data fields for gas and contract addresses. Transaction speed, fees, and consensus mechanisms can also differ greatly across blockchains and affect how transactions are built and broadcast to a given network.

Challenges of creating your own transaction builder

The technical variance across different blockchains makes creating your own transaction builder in-house time consuming and expensive in both actual engineering effort and opportunity cost of a lengthy feature rollout process. Particularly for teams looking to optimize each member’s time and impact, extending and maintaining different blockchain integrations can become a time and cost black hole drawing focus away from your core product.

Security

Because each blockchain ecosystem is technically different, each comes with its own unique vulnerabilities and security challenges. Smart contract vulnerabilities open protocols up to reentrancy attacks, maintaining data privacy to prevent data leakage, weak key management, and not keeping up with the latest security patches are all (but not the only) attack vectors for each blockchain you integrate. And, each vulnerability may be solved in different ways across chains.

Reliability and  Ongoing Maintenance

Each blockchain has a different core development team, sometimes many, which means different release schedules, methods of communicating those releases, and the quality of the code itself. Ongoing maintenance for a supported blockchain requires monitoring every relevant code repository for business-breaking changes, which can be a full time job in itself, let alone implementing the appropriate upgrades to make sure your product sees minimal service interruptions. As your product scales, managing building transactions for each user across each chain adds additional complexity. Your wallet needs to be able to handle increases in volume across each chain with horizontal scalability. Additionally, because each chain comes with its own unique configurations and requirements, teams need to scale with the appropriate personnel. This is arguably the most challenging part as there are few individuals with the technical expertise to implement and manage chains at the low level in a correct and secure way.

Time

Having to start from scratch with each new blockchain integration can take weeks if not months of engineering time - time your users could instead have spent with your new feature and you could have been growing your business. By using a third party transaction builder, you can rapidly deploy software that’s been designed, developed, and refined to suit a specific need. That software has likely already undergone considerable testing and quality assurance to be effective out of the box. Using software specially designed to abstract away the complexities of the transaction building process across multiple blockchain networks will drastically reduce your integration time and let your engineers focus more on their strengths.

Should I buy or build my own transaction builder?

Ultimately the decision to buy or build software comes down to your company’s specific needs: software requirements, budget, and longterm goals. Sometimes, custom development is necessary when off-the-shelf solutions don’t meet 100% of your needs. But, purchasing software lets you leverage the specialized expertise of a team dedicated to addressing the security issues, technology upgrades, and new features that come with multiple blockchain integrations so you don’t have to, which can lead to a more reliable product than what you could have developed in house.

Vendors can also save you the time and resources associated with development from scratch. Many products, like walletOS, offer pre-built modules and APIs that can be easily integrated into your existing systems, enabling a faster time-to-market for your new blockchain features. As you scale up the number of blockchains you offer, you can also bypass the challenges of recruiting, training, and retaining blockchain experts in-house.

Vendors often provide comprehensive technical support and regular updates to ensure your integration remains up-to-date with the evolving blockchain ecosystem, reducing the burden on your internal development team. For example, at Pine Street Labs we monitor dozens of open source code repositories for the largest blockchain products to make sure we stay on top of every update to catch anything that would break our users’ pipelines so we can fix it before it impacts them.

How does walletOS work as a solution?

We've seen companies run into all of these problems before, so we built walletOS to help teams cut down on development cycles and accelerate the time to market for new features. With an API of ready-made components, integrations, and support for 20 blockchains, a solution like walletOS enables you to offer comprehensive functionality to your users right from the start.

For most teams, supporting multiple blockchains in a product can be a daunting task. walletOS eliminates this challenge by providing out-of-the-box support for 20 blockchains. This means you don't have to spend time accommodating the differences between transacting, staking, or delegating - simply define your business logic and walletOS does the rest.

To maintain liveliness, the walletOS team diligently keeps pace with every major and minor release in key open source repositories for our supported blockchains, ensuring that your integrations remain up to date and secure. By leveraging walletOS as your transaction builder, your integrations will adhere to the latest security best practices, minimizing the risk of vulnerabilities or exploits from old code.

By offloading the complex infrastructure and maintenance tasks to walletOS, you can allocate your resources more strategically, enhance productivity, and drive innovation within your organization.

Want to see what life would be like where your blockchain integrations are all managed for you? Sign up for our free Sandbox testnet and see for yourself.