Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

pearld

Build Status ISC License GoDoc

pearld is the reference implementation of the Pearl Protocol. It is a full node that downloads, validates, and serves the Pearl blockchain. pearld includes zero-knowledge proof-of-work verification and XMSS post-quantum signature support.

pearld properly relays newly mined blocks, maintains a transaction pool, and relays individual transactions that have not yet made it into a block. It ensures all transactions admitted to the pool follow the consensus rules and also includes stricter checks which filter transactions based on miner requirements ("standard" transactions).

pearld does not include wallet functionality. That is provided by the Oyster wallet.

Requirements

  • Go 1.26 or newer
  • Rust toolchain (for ZK verification library)
  • C compiler (for XMSS library)
  • Task runner

Building

From the repository root:

task build:pearld

Or to build all binaries (pearld, prlctl, oyster):

task build:blockchain

Binaries are placed in bin/.

Getting Started

pearld has several configuration options available to tweak how it runs, but all of the basic operations work with zero configuration.

./bin/pearld

See sample-pearld.conf for the full list of options.

Documentation

Documentation is located in the docs folder.

Issue Tracker

The integrated GitHub issue tracker is used for this project.

License

pearld is licensed under the copyfree ISC License.