Skip to content

cashubtc/cashu-feni

Repository files navigation

cashu-feni

made-with-Go GoReportCard example Docker Github tag codecov

Cashu is a Chaumian Ecash wallet and mint with Bitcoin Lightning support.

Disclaimer: The author is NOT a cryptographer and this work has not been reviewed. This means that there is very likely a fatal flaw somewhere. Cashu is still experimental and not production-ready.

Cashu is an Ecash implementation based on David Wagner's variant of Chaumian blinding. Token logic based on minicash (description) which implements a Blind Diffie-Hellman Key Exchange scheme written down by Ruben Somsen here. The database mechanics and the Lightning backend uses parts from LNbits.

Please read the Cashu documentation for more detailed information.

This project aims to replicate the python mint implementation of cashu.

Install

Source · Download · Docker

From source

These steps will help you installing cashu-feni from source. This project has two parts, a Cashu command line wallet and a mint.

Requirements

Building

git clone https://github.com/cashubtc/cashu-feni && cd cashu-feni

Copy config_example.yaml to config.yaml and update configuration values.

Wallet

go build -o feni cmd/cashu/feni.go && ./feni

Mint

go build -v -o cashu-feni cmd/mint/mint.go && ./cashu-feni

Download

Download the latest binary from releases

Using Docker

Start cashu-feni using docker. Please provide a local volume path to the data folder.

docker pull cashubtc/cashu-feni
docker run -it -p 3338:3338 \
-v $(pwd)/data/:/app/data/ \
cashubtc/cashu-feni

Mounting custom config.yaml to /app/config.yaml

docker run -it -p 3338:3338 \
-v $(pwd)/config.yaml:/app/config.yaml \
-v $(pwd)/data/:/app/data/ \
cashubtc/cashu-feni

Build image

git clone https://github.com/cashubtc/cashu-feni && cd cashu-feni
docker build -t cashu -f Dockerfile .