Home

Recovery and Checkpoint Protocols in NexRes

The view-change protocol and checkpoint algorithm provide PBFT with liveness by allowing the system to make progress when the primary fails. In this blog, we introduce how we implement the PBFT view-change protocol and checkpoint algorithm in NexRes, list what Byzantine failures our current version is resilient to, and illustrate how our view-ch...

Read more

Using the NexRes Explorer

Our Explorer page is a tool for visualizing the NexRes blockchain. The Explorer displays specific blocks on the blockchain, transactions within the blocks, ledger configuration data, and a chart exposing transaction history. Install Go to our install tutorial for instructions on how to install NexRes. Set Up You will need to clone three repos...

Read more

GeoBFT in NexRes

In this article, we present a comprehensive introduction to the Geo-Scale Byzantine Fault-Tolerant consensus protocol (GeoBFT) through the lens of the NexRes codebase. We will illustrate the algorithm of inter-cluster sharing and remote view-change of the protocol, and how to implement it on NexRes. We will also show the performance experiment r...

Read more

NexRes Durability Layer

We provide two databases to choose from to use for durable storage: LevelDB and RocksDB. Both are key-value stores based on log-structured merge (LSM) trees. LSM trees are optimized for write-heavy workloads, and consist of multiple levels, with the keys sorted at each level. The top level is called the memtable, where the most recently inserted...

Read more

UTXO On NexRes

An unspent transaction output (UTXO) model helps us to make crypto transactions more efficient and it is a crucial core part in Bitcoin. In this document, we introduce the UTXO implementation on NexRes. Crypto key A Crypt key is a private-public key pair to provide the security of the transaction. We use ECDSA as the encoding algorithm and sig...

Read more

Getting Started On UTXO

Here we illustrate how to run the UTXO service on NexRes. We provide steps by steps tutorial to set up the UTXO service locally with 4 nodes and 1 client. We also provide tools to access the UTXO transactions and the user wallets. Create a Wallet Beginning using UTXO transactions on NexRes, we need to create a wallet by generating a private ke...

Read more

Using the NexRes Python SDK

We provide a Python SDK for committing transactions to create and transfer assets. Despite NexRes being written in C++, the code for validating transactions is written in Python so that we can use the cryptoconditions library, which provides functionalities not available in any widely distributed C++ libraries currently. Install NexRes and Pyth...

Read more

Getting Started with Smart Contract on Nexres

Here we illustrate how to run a smart contract on Nexres locally. We provide step-by-step tutorials to set up locally with 4 nodes and use the built-in smart contract service. Install Please check the install tutorial for Nexres to install. Running Contract Service Locally Running the setup script to start the server: ./service/tools/contra...

Read more