Celo Blockchain Internals Deepdive

Introduction

Judy Piper, an engineering lead at C Labs, welcomes the audience to the Celo Tech Talk series, which aims to share knowledge about Celo technology with the growing Celo community. Due to the COVID-19 pandemic, the event moved online. Over the past six months, they have conducted more than 10 educational sessions covering various aspects of Celo, from high-level overviews to deep dives into specific building blocks.

Overview of Celo Blockchain

Judy briefly explains the mobile-first full-stack blockchain platform, Celo, and its design decisions to support the mission of building an inclusive financial system. They have introduced various building blocks of Celo, including the Celo SDK for app developers, proof-of-stake consensus algorithm, stability protocol, Pluto ultra-light verification, sync protocol, governance protocol, and phone number privacy.

Accessing Content and Resources

Judy informs the audience that recordings of previous sessions are available on the Celo Foundation’s YouTube channel. They have also created a playlist for the Celo Tech Talk series in chronological order. She encourages viewers to like, comment, and check out the Medium blog posts summarizing each talk. Links to the playlist and blog posts will be shared in a follow-up email.

Introduction of Presenter - Kevin Durant

Kevin Durant, a protocol engineering partner at C Labs, shares his background and how he joined C Labs. He was attracted to C Labs because of its mission-driven approach, focus on cutting-edge technologies, and strong team.

Agenda

Kevin outlines the agenda for his talk, which includes a high-level overview of blockchain clients, a deep dive into the Celo blockchain client’s main features, discussion of future features, and a Q&A session.

Celo’s Mission and Blockchain Clients

Kevin emphasizes Celo’s mission to build a financial system for prosperity. He briefly mentions the issues faced by original blockchains and introduces two main blockchain clients: Go Ethereum (Geth) and Parity. C Labs chose to fork Geth due to its better lifecycle support.

Main Features of Celo Blockchain Client

Kevin discusses several main features implemented in the Celo blockchain client, including the Velora mobile app, gas payable in multiple currencies, consensus algorithm, network connectivity, and epoch-based syncing. He explains the rationale behind each feature and how they address user needs.

Deep Dive into BLS Aggregated Signatures

Kevin delves into the implementation details of BLS aggregated signatures, highlighting their ability to aggregate signatures and their integration with the IBFT consensus code. He also mentions the use of an open-source package for BLS signing.

Transaction Fee and Currency Support

Kevin explains the implementation of transaction fees payable in multiple currencies, such as cUSD, and mentions the possibility of adding new currencies through the governance process. He discusses the modifications made to components such as the state transition and miner objects to support these features.

Conclusion and Q&A

Kevin concludes his talk by emphasizing C Labs’ commitment to its mission and the importance of implementing features that align with it. He invites the audience to participate in the Q&A session. Judy makes a quick announcement about the next Tech Talk, featuring a discussion on HummingReum.

Note: The original transcript provided contains typos and incomplete sentences. The summary has been revised and edited for clarity.