In March 2024, BSV Blockchain announced that ARC v1 was production-ready. ARC is a transaction processing service which validates and stores your transactions before broadcasting them over the P2P network.
ARC was first developed in January 2023 as a proof of concept. It subsequently launched in public beta back in September 2023 and has gone through significant testing both in terms of developer experience, and production scaling and stability.
BSV Blockchain, as the open-source body of the BSV ecosystem, provides business requirements, open-source guidelines & contributions while ensuring a neutral foundation for the open-source contribution from the ecosystem. While the service is overseen by BSV Blockchain, its development is thanks to the open-source contribution of several key partners – including Handcash and TAAL. The technical skills and specialisations offered by these partners highlight BSV blockchain’s open-source nature and an improved push towards increased governance, transparent guidelines and a business-friendly environment.
BSV Blockchain recently sat down with Rafa Jimenez (Chief Technical Officer and Co-Founder of HandCash) and Michael Boeckli (Tech Lead at TAAL) to discuss their contributions and the importance of ARC.
This interview has been truncated for length and editorial purposes.
What is ARC and what does it mean for the BSV blockchain?
RJ (Rafa Jimenez): ARC is a service that allows wallets to broadcast transactions to the BSV network. The most interesting difference with other broadcasting methods is that they provide granular transaction status feedback.
What does it mean? Imagine your kids are going to school, but you can only receive updates about them when they leave the house and when they arrive at school. It would be great and desirable to receive more updates along their journey. In particular, if something unexpected happens.
With traditional methods, such as using the same P2P network as miners, broadcasting a transaction yields only two types of feedback: either the transaction is immediately rejected, or it’s accepted by the miner who will attempt to include it in a block.
Unfortunately, this feedback is not enough. In some edge cases, the fact that the miner picked up the transaction in the first place does not mean that it will be included in the next block (or even a block at all). For example, the transaction could not be propagated correctly among the network leaving the door open for double-spend attempts.
Consequently, there was a need for a service that provided more comprehensive feedback about transaction status and notifications. ARC is the service that fills this gap.
This new feedback about the transaction status for unconfirmed transactions allows wallets and services to assess risk more effectively.
MB: ARC is supposed to supersede mAPI as the main transaction processor of the BSV blockchain. ARC has additional features as well as improved scalability and performance compared to mAPI. Also it is going to be compatible with the next generation BSV node implementation Teranode. For more information about ARC’s features please refer to the official documentation here.
What contributions did you and your team make to the ARC project?
MB (Michael Boeckli): ARC is a BSV Blockchain open-source component with business requirements coming from the BSV Blockchain. It was developed by TAAL engineers of the Transaction Services team with some contributions from external contractors from 4chain studio. In addition to developing the open-source version of ARC, TAAL also runs and monitors a commercial instance of ARC.
Jimenez outlined some of the specific contributions made by HandCash including:
- Feedback from Real-World Market Needs: HandCash provided insights from its products like wallet, tokenisation, and developer tools, shaping ARC to meet market demands. These insights helped ARC handle complex transaction flows and a variety of edge cases effectively.
- Risk Assessment and Double-Spend Detection: HandCash pushed for improvements in detecting double-spends and ensuring transaction fee sufficiency. These enhancements were crucial in securing transactions and mitigating vulnerabilities, surpassing mAPI.
- Webhook Features: HandCash suggested more detailed webhook notifications, such as when transactions are rejected or reach key statuses. This improved feedback helped HandCash better manage transactions and enhance wallet reliability.
- Simplification and Abstraction: HandCash contributed to simplifying ARC’s blockchain functions, making it more accessible for developers. Recommendations included streamlining transaction validation and reducing external dependencies.
- Performance and Stability Improvements: HandCash’s reports on outages, transaction inconsistencies, and response time issues led to key infrastructure improvements.
- These changes improved ARC’s stability and positioned it as a more robust, enterprise-grade solution.
- Wallet Development Experience and Addressing Pain Points: HandCash’s experience with Bitcoin SV helped identify challenges in transaction handling and fee management. This expertise allowed ARC to evolve into a solution that addressed key developer pain points in the BSV ecosystem.
- Collaboration and Iterative Development: HandCash’s collaboration with the ARC team fostered rapid iterative improvements through real-world feedback. This open communication ensured ARC evolved quickly, aligning with market needs and developer expectations.
- Dedicated HandCash Instance for Stability: HandCash created a dedicated ARC instance to isolate its environment, ensuring stable operations. This change improved ARC’s reliability, allowing HandCash to test without disrupting live services.
Why is it important to have highly specialised teams contribute to core open-source components such as ARC?
MB: TAAL’s software team which has great expertise in BSV technology, TAAL is well-positioned to contribute to this open-source project. TAAL also has the means to operate ARC and therefore can iterate fast on improvements and testing.
RJ: The best fit always comes when combining generalists with specialists. The BSV Blockchain provides the generalist view of BSV Blockchain. Specialised teams are important to help with the particular details of the visions. In our case, we are the most experienced team handling Bitcoin payments. Over five years, we have processed millions of payments, using a few different software architectures and integrating with many different services and libraries.