Mining Guide

Cypherium
Cypherium
Published in
3 min readAug 13, 2021

--

Dear CypherTroophers,

It has been a couple months since our last post! We apologize for the delay, and hope that you have all been eagerly awaiting our next post. Today, we bring to the community instruction guide for how to mine Cypherium. Without further ado, let’s get straight into it!

Installing the Cypherium Network:

Firstly, you need to open Cypherium’s git clone at /cypherBFTBin.

Next, you will need to install the openssl, of which there are two separate options. If you are using Linux, you will need to input:

sudo apt-get install openssl

sudo apt-get install libssl-dev

On the other hand, if you are using Mac, you will need to input:

git clone https://github.com/openssl/openssl

cd openssl

sudo ./config — prefix=/usr/local/openssl

make

make install

openssl version

At this point, if you get an error that says libssl1.0.0 is not found, you must manually install it. You will need to input:

wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u12_amd64.deb

apt install multiarch-support

dpkg -i libssl1.0.0_1.0.1t-1+deb8u12_amd64.deb

Remember to let the chain sync fully before moving on. You will see the blocks being output as each one is confirmed and downloaded.

Basic console and RPC commands:

By basic console, we mean that it is running in terminal mode, whereas RPC command signifies running via RPC commands. RPC commands are our recommended method.

In order to start the node, input:

Console: sudo ./start.sh 1

RPC: sudo ./start.sh 0

In order to get block, input:

Console: cph.txBlockNumber

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“id”:”1", “method”: “cph_txBlockNumber”}’ 0.0.0.0:18004

In order to create an account, input:

Console: personal.newAccount(“password”)

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“id”:”1", “method”: “personal_newAccount”, “params”: [“password”]}’ 0.0.0.0:18004

In order to create view accounts, input:

Console: personal.listAccounts

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“id”:”1", “method”: “personal_listAccounts”}’ 0.0.0.0:18004

In order to create view balance, input the information below. You must replace the information within the brackets with your own address:

Console: cph.getBalance(“0x23b30deee3257a6ecee5d3c6b84a1303227d0ec6”)

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“method”: “cph_getBalance”, “params”: [“0x23b30deee3257a6ecee5d3c6b84a1303227d0ec6”, “latest”], “id”:”1"}’ 0.0.0.0:18004

In order to unlock your account, input the information below. You must replace the information within the brackets with your own address and password:

Console: personal.unlockAccount(“0x23b30deee3257a6ecee5d3c6b84a1303227d0ec6”, “password”, 60)

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“id”:”1", “method”: “personal_unlockAccount”, “params”: [“0x23b30deee3257a6ecee5d3c6b84a1303227d0ec6”, “password”, 60]}’ 0.0.0.0:18004

In order to send coins, input the information below. You must replace the information within the brackets with your own address to and from, as well as change value

Console: var tx = {

from: “0x23b30deee3257a6ecee5d3c6b84a1303227d0ec6”,

to: “0x918e1fdb477bb094a18ee466e3df95472b051d5c”,

value: 0x64 }

personal.sendTransaction(tx, “password”)

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“method”: “cph_sendTransaction”, “params”: [{ “from”: “0xe4de3f885bec248b3c02ef006d4c6520290a9b65”, “to”:”0x918e1fdb477bb094a18ee466e3df95472b051d5c”, “gas”: “0x76c0”, “gasPrice”: “0x9184e72a000”, “value”: “0xDE0B6B3A7640000” }], “id”:”1"}’ 0.0.0.0:18004

In order to start the miner, input the information below. You must replace the information within the brackets with your own address and password that you generated:

Console: miner.start(1,”0x23b30deee3257a6ecee5d3c6b84a1303227d0ec6", “password”)

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“id”:”1", “method”: “miner_start”, “params”: [1,”0x23b30deee3257a6ecee5d3c6b84a1303227d0ec6", “password”]}’ 0.0.0.0:18004

In order to check the miner status, input:

Console: miner.status()

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“id”:”1", “method”: “miner_status”}’ 0.0.0.0:18004

In order to stop the minder, input:

Console: miner.stop()

RPC: curl -X POST -H “Content-Type: application/json” — data ‘{“id”:”1", “method”: “miner_stop”}’ 0.0.0.0:18004

Or…if you would prefer to follow a visual screencast version, there is also a great YouTube video detailing those same steps!

Mining Guide — Screencast Video

About Cypherium

Cypherium is a decentralized smart contract platform for creating and connecting dApps, CBDCs (Central Bank Digital Currencies), Enterprise Applications, and Digital Assets. We are one of the first blockchain companies with real, tangible blockchain applications in partnership with industry-leading enterprises and government institutions.

Website | Telegram | Twitter | Github | Whitepaper | Reddit | LinkedIn | Facebook

--

--