Project

OpenCBDC

Copyright

MIT DCI

MIT DCI

Research

Technical Paper | Executive Summary | Github

About

Introduction

OpenCBDC is an open source project to engage in collaborative technical research to understand the space of designs for potential central bank digital currencies (CBDC). The first contribution is OpenCBDC-tx, an experimental transaction processor that emerged from joint research with the Federal Reserve of Boston as part of Project Hamilton. 

frequently asked questions

Project Hamilton

Project Hamilton is a multi-year, collaborative research project between the MIT Digital Currency Initiative and the Federal Reserve Bank of Boston. The goal of Project Hamilton is to investigate the technical feasibility of a general purpose CBDC that could support a payment economy at the scale of the United States, as well as to gain a hands-on understanding of a hypothetical CBDC’s technical challenges, opportunities, risks, and tradeoffs.

Learn more about Project Hamilton.

Learn more about our collaborators at the Federal Reserve Bank of Boston.

Contributing to OpenCBDC

OpenCBDC is an open source project and we welcome pull requests to the code an… View full description

Research

Technical Paper | Executive Summary | Github

About

Introduction

OpenCBDC is an open source project to engage in collaborative technical research to understand the space of designs for potential central bank digital currencies (CBDC). The first contribution is OpenCBDC-tx, an experimental transaction processor that emerged from joint research with the Federal Reserve of Boston as part of Project Hamilton. 

frequently asked questions

Project Hamilton

Project Hamilton is a multi-year, collaborative research project between the MIT Digital Currency Initiative and the Federal Reserve Bank of Boston. The goal of Project Hamilton is to investigate the technical feasibility of a general purpose CBDC that could support a payment economy at the scale of the United States, as well as to gain a hands-on understanding of a hypothetical CBDC’s technical challenges, opportunities, risks, and tradeoffs.

Learn more about Project Hamilton.

Learn more about our collaborators at the Federal Reserve Bank of Boston.

Contributing to OpenCBDC

OpenCBDC is an open source project and we welcome pull requests to the code and other contributions. Collaborations in OpenCBDC will be structured around open technical working groups. Each themed working group (e.g. Privacy, Architecture, Interoperability, User Experience, etc.) will advance research with technologists, user researchers, central bankers, private sector engineers, and academics (including students). We’re actively seeking contributions to the open-source codebase as well as new working group members. 

To learn more or get involved, please engage with the project on Github or fill out the OpenCBDC interest form.

Technical Specifications

OpenCBDC-tx is a modular, extensible transaction processor for a hypothetical CBDC that implements two architectures. The first, the atomizer, can process 170,000 transactions per second. The second, using two-phase commit, can process up to 1.7M transactions per second.

Core Features

  • A central transaction processor run by a trusted operator (such as a Central Bank)
  • Digital signatures to authorize payments using UTXOs (unspent funds are stored as cryptographic hashes)
  • A modular design supporting experimentation with models where intermediaries could take on a variety of different roles and serve different purposes, including non-custodial or self-custody
  • Currently, the design does not directly support intermediaries, fees, or identities outside of public keys, however, we are interested in exploring and benchmarking new features.

Key Concepts

  • Decoupling transaction validation and execution
  • Secure and flexible transaction formats
  • Efficiency of transaction execution

Two Different Architectures: Atomizer and 2 Phase Commit

Copyright

https://static1.squarespace.com/static/59aae5e9a803bb10bedeb03e/t/61fc25f91a0df9037488eb7d/1643914745989/Hamilton.Whitepaper-2022-02-02-FINAL2.pdf

Copyright

https://static1.squarespace.com/static/59aae5e9a803bb10bedeb03e/t/61fc25f91a0df9037488eb7d/1643914745989/Hamilton.Whitepaper-2022-02-02-FINAL2.pdf

Copyright

MIT Digital Currency Initiative

Privacy and Flexibility

Our design can support myriad access models without mandating specific policy choices. For example, our system could support, among other designs, models in which:

  • Users fully self-custody their funds and receive payments without requiring an account with anyone (even the central transaction processor);
  • Users engage an intermediary only to obtain authorization for high-value payments, while low-value payments might not require detailed identity checks; 
  • Users engage an intermediary to back up their credentials and payment information to prevent data loss; or
  • Users seek help from intermediaries simply to back up their own keys.

Please note that this list is not at all exhaustive, and is merely intended to be illustrative of the types of designs our system could support. It is also not intended to be a commentary on the viability or likelihood of the eventual adoption of these choices.

Get Involved

opencbdc@mit.edu - For all general inquiries re: OpenCBDC or Project Hamilton

github - Github (we are seeking contributors!)

dci-press@mit.edu - Email this address for press inquiries and speaking requests