Skip to content

WholesumNet/client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wholesum network Client CLI

Overview

Wholesum network is a p2p verifiable computing network tailored for ETH L2 sequencer proving. It builds on top of Risc0, Libp2p, and decentralized storage options like Swarm and Filecoin to facilitate verifiable computing at scale. The design of the network follows a p2p parallel proving scheme where Risc0 jobs are passed around, proved, and finally combined into a final proof ready for L1 verification.

Prerequisites

You would need to get certain environments ready for the client to function properly.

Docker

Docker runtime is needed as it is used to run Risc0 containers. This awesome guide from DigitalOcean is helpful in this regard.

Lighthouse@Filecoin/Swarmy@Swarm

  • Lighthouse:
    You would need a subscription plan from Lighthouse to run the client. Please obtain an api key and specify it with -d flag when running the client.

  • Swarmy: Still under development.

MongoDB

Install the MongoDB from here and make sure a Docker container runs and is listenning on localhost:27017

Library dependencies

To run a client agent, you would first need to fork the following libraries and put them in the parent("..") directory of the client:

The job file

You would need a job file to engage with the network. Here's a sample job file for the SHA example:

# schema of a tyipcal job

[prove]

# segments' cid
segments_cid = "bafybeigzlwqexnsbr2euhpgcivtx3ak7dejud6tg7dyiyja522qscdsovi"

#po2 limit
po2 = 19

# number of segments
num_segments = 5

[verification]

journal_file_path = "/foo/journal"

# Risc0 image_id of the "sha example"
image_id = "f3877c67f872cd6225e9d6038a5b7af0de2c3b5f3b2f27f76a8b09e2230a4f5c"

Save the above content to a file named simple_job.toml, and feed it to the CLI with the -j flag.

USAGE

Wholesum is a P2P verifiable computing marketplace and this program is a CLI for client nodes.

Usage: client [OPTIONS] [COMMAND]

Commands:
  new     Start a new job
  resume  Resume the job
  help    Print this message or the help of the given subcommand(s)

Options:
  -d, --dstorage-key-file   
      --dev                                    
  -k, --key-file                     
  -h, --help                                   Print help
  -V, --version                                Print version

Releases

No releases published

Packages

No packages published

Languages