mirror of
https://github.com/aljazceru/nutshell.git
synced 2025-12-22 03:24:18 +01:00
7c62ce4038e8f67b4e6a11c8bbc3298bdbb50f23
cashu
The author is NOT a cryptographer and has not tested the libraries used or the code nor has anyone reviewed the work. This means it's very likely a fatal flaw somewhere. This is meant only as educational and is not production ready.
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.
Install
git clone https://github.com/callebtc/cashu.git
sudo apt install -y build-essential pkg-config libffi-dev libpq-dev zlib1g-dev libssl-dev python3-dev
# on mac: brew install postgres
# install python using pyenv
curl https://pyenv.run | bash
echo export PYENV_ROOT="$HOME/.pyenv" >> ~/.bashrc
echo command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH" >> ~/.bashrc
echo eval "$(pyenv init -)" >> ~/.bashrc
echo eval "$(pyenv virtualenv-init -)" >> ~/.bashrc
source ~/.bashrc
pyenv install 3.9.13
# install poetry
curl -sSL https://install.python-poetry.org | python3 -
echo export PATH="$HOME/.local/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
# install cashu
cd cashu
pyenv local 3.9.13
poetry install
Run mint
cd mint/
poetry run flask run --port 3338
Run wallet
poetry run ./cashu --wallet=wallet --mint=420
Description
Languages
Python
99.7%
Shell
0.2%