Farcaster Project RFCs Save

Farcaster Specifications guiding core and node designs.

Project README

Farcaster Specifications

Hello hitchhiker, and welcome onboard to the Farcaster Specifications! The RFCs describe components that glue together to form a swap protocol between two blockchain based assets, currently focusing on Bitcoin and Monero.

Overview

Below is an index of the RFCs, loosely in the order we recommend studying them to familiarize yourself with the project.

00. Introduction

Introduction, Glossary and Terminology Guide that will help you familiarize with the Farcaster and Atomic swap terminology.

01. High Level Overview

Describes the high level concepts associated to the protocol such as roles and phases implemented inside Farcaster.

02. User Stories

Presents from a user perspective how participants interact during the swap depending on their roles.

03. Farcaster Architecture

Provides an overview of the technical architecture of the Farcaster software stack. Lists and explains the micro-services that compose Farcaster.

04. Protocol Messages

Specifies the messages exchanged between daemons during a swap and the peer-to-peer management between daemons.

05. Tasks & Blockchain Events

Specifies the tasks that syncers make available to daemons for the monitoring of chain-state through blockchain events and the broadcast of transactions.

06. Datum & Instructions

Specifies the messages that daemons and clients expect to receive from each other. They control the state transitions of an ongoing swap and allow information to flow between a client and a daemon.

07. Cryptographic Setup

Specifies the cryptographic primitives used to transfer secrets through transactions with adaptor signatures and specifies the cryptographic setup required at the beginning of a swap to guarantee safety of funds.

08. Transactions

Specifies the Bitcoin and Monero transactions involved in a swap with their temporal safety. Describes variants of Bitcoin transactions, depending on the SegWit version and multi-signature protocol used.

09. Swap state

Specifies what the swap state is, state-digests summarizing the swap state, what information has to be logged for recovery, and how to recover state after failure.

10. Public Offer

Specifies the public offer format and features for version 1, allowing makers in the negotiation phase to describe a potential swap, and allowing takers to connects to makers and thus potentially trade.

Acknowledgments

This project was funded by the Monero community through the Community Crowdfunding System (CCS). Thanks to all contributors and generous anonymous donors!

Open Source Agenda is not affiliated with "Farcaster Project RFCs" Project. README Source: farcaster-project/RFCs
Stars
61
Open Issues
10
Last Commit
2 years ago

Open Source Agenda Badge

Open Source Agenda Rating