Zerocash is a new protocol that provides a privacy-preserving version of Bitcoin. Zcash is currently only available for Linux.
English version of this page under construction. You can read automatic translation.
Несколько дней назад вышла первая релизная версия новой криптовалюты zcash. Среди множества так называемых “альткоинов” – это пока первая и единственная полностью анонимная валюта. Дело в том, что bitcoin и все его форки – сохраняют историю всех транзакций, при этом некоторые версии позволяли ассоциировать кошельки с ip-адресами. В этой статье будет описано как собрать и запустить zcash-кошелёк v.1.0 с возможностью майнинга в linux.
Zcash (zerocash) использует протокол доказательства с нулевым разглашением (Zero-knowledge proof), что позволяет проводить полностью анонимные транзакции. Движение валюты по кошелькам в случае zcash отследить невозможно, чего нельзя сказать о bitcoin и его форках. Прочитать о zcash подробнее и обсудить новую валюту вы можете здесь. Сейчас zcash поддерживает исключительно операционные системы Linux с 64-битной архитектурой, и, минимум, 4ГБ оперативной памяти. Официальное руководство по установке и настройке zcash находится здесь.
В Debian/Ubuntu и основанных на них дистрибутивах вы можете использовать уже готовые пакеты из официального репозитория:
sudo apt-get install apt-transport-https
wget -qO - https://apt.z.cash/zcash.asc | sudo apt-key add -
echo "deb https://apt.z.cash/ jessie main" | sudo tee /etc/apt/sources.list.d/zcash.list
sudo apt-get update && sudo apt-get install zcash
Но предпочтительнее собрать программу самостоятельно из исходного кода.
Для этого в Debian/Ubuntu предварительно необходимо установить все зависимости:
sudo apt-get install \
build-essential pkg-config libc6-dev m4 g++-multilib \
autoconf libtool ncurses-dev unzip git python \
zlib1g-dev wget bsdmainutils automake
В основанных на Redhat (Fedora) дистрибутивах:
sudo dnf install \
git pkgconfig automake autoconf ncurses-devel python wget \
gtest-devel gcc gcc-c++ libtool patch
Далее, загрузите исходный код:
git clone https://github.com/zcash/zcash.git
cd zcash/
git checkout v1.0.0
./zcutil/fetch-params.sh
При этом, помимо исходного кода, загрузятся контрольные ключи, объем которых может достигать 1ГБ. После успешного завершения приступайте к компиляции:
./zcutil/build.sh -j$(nproc)
(если nproc у вас не работает — просто укажите количество ядер вашего процессора)
Компиляция может проходить несколько десятков минут. Если она у вас остановится на этапе «Fetching boost…» – это означает, что скорее всего программе не хватает оперативной памяти. Помните, что для работы ей необходимо 4ГБ, по этому на время компиляции рекомендуется закрыть все приложения (в том числе, браузеры). Также можно порекомендовать остановку графической среды и запуск компиляции в консоли.
После успешной сборки — потребуется сконфигурировать программу:
mkdir -p ~/.zcash
echo "addnode=mainnet.z.cash" >~/.zcash/zcash.conf
echo "rpcuser=username" >>~/.zcash/zcash.conf
echo "rpcpassword=`head -c 32 /dev/urandom | base64`" >>~/.zcash/zcash.conf
Для включения CPU-майнинга (генерации денег на центральном процессоре) выполните:
echo 'gen=1' >> ~/.zcash/zcash.conf
echo "genproclimit=$(nproc)" >> ~/.zcash/zcash.conf
Также можно включить более эффективный (но менее подробно описанный) майнер командой:
echo 'equihashsolver=tromp' >> ~/.zcash/zcash.conf
Здесь вы можете прочитать подробности о майнинге zcash.
После всех этих действий можно запускать zcash командой:
./src/zcashd
Вы увидите подобный вывод в консоли:
Также можно запускать кошелек в режиме демона:
./src/zcashd —daemon
Когда программа запущена, вы можете получить новый t-address:
./src/zcash-cli getnewaddress
Также, можете создать дополнительный z-address:
./src/zcash-cli z_getnewaddress
Просмотреть все z-адреса вашего кошелька:
./src/zcash-cli z_listaddresses
Просмотреть входящие транзакции:
./src/zcash-cli z_listreceivedbyaddress "$ZADDR"
(где вместо $ZADDR – укажите ваш z-address)
Послать монеты на чейто-то z-address:
./src/zcash-cli z_sendmany "$ZADDR" "[{\"amount\": 0.8, \"address\": \"$FRIEND\"}]"
(где $ZADDR — ваш z-address, 0.8 — здесь сумма перевода, а $FRIEND — адрес получателя)
Где-то через минуту вы можете проверить успешность перевода командой:
./src/zcash-cli z_getoperationresult
Если вы включили возможность майнинга – то включенный кошелек автоматически будет майнить zcash. Правда, вероятнее намайнить какое-то количество монет – подсоединившись к какому-нибудь mining pool’у.
0 Comments Leave a comment