Cum creăm o monedă virtuală, clonând una deja existentă, utilizând BlackWeb OS sau Ubuntu

Pasul 1: Instalarea dependențelor

sudo apt-get install git

sudo apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils

sudo apt-get install libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev

sudo apt-get install libboost-all-dev

sudo apt-get install software-properties-common

sudo add-apt-repository ppa:bitcoin/bitcoin

sudo apt-get update

sudo apt-get install libdb4.8-dev libdb4.8++-dev

sudo apt-get install libminiupnpc-dev

sudo apt-get install libzmq3-dev

sudo apt-get install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler

sudo apt-get install libqt4-dev libprotobuf-dev protobuf-compiler

git clone -b 0.8 https://github.com/litecoin-project/litecoin.git


Comenzile pentru înlocuirea numelui, folosite în tutorialul video:

find . -type f -print0 | xargs -0 sed -i ‘s/litecoin/liberalcoin/g’
find . -type f -print0 | xargs -0 sed -i ‘s/Litecoin/Liberalcoin/g’
find . -type f -print0 | xargs -0 sed -i ‘s/LiteCoin/Liberalcoin/g’
find . -type f -print0 | xargs -0 sed -i ‘s/LITECOIN/LIBERALCOIN/g’
find . -type f -print0 | xargs -0 sed -i ‘s/LTC/LCN/g’

Pasul 2: Înlocuirea porturilor și generarea alertkey-urilor

find . -type f -print0 | xargs -0 sed -i ‘s/9333/9666/g’
find . -type f -print0 | xargs -0 sed -i ‘s/9332/9665/g’

openssl ecparam -genkey -name secp256k1 -out alertkey.pem
openssl ec -in alertkey.pem -text > alertkey.hex
openssl ecparam -genkey -name secp256k1 -out testnetalert.pem
openssl ec -in testnetalert.pem -text > testnetalert.hex
openssl ecparam -genkey -name secp256k1 -out genesiscoinbase.pem
openssl ec -in testnetalert.pem -text > genesiscoinbase.hex


Adresa prefixelor, dacă doriți ca moneda dvs. să înceapă cu o literă anume:

https://en.bitcoin.it/wiki/List_of_address_prefixes

Pasul 3: Codul utilizat în videoclip

Copiem codul de pe Pastebin.com

Pasul 4: Generarea blocului geneză

Acest pas am încercat să îl prezint prin printscreen-uri, deoarece un tutorial video v-ar fi amețit de tot, pe cei fără experiență. Nici așa, nu promit nimic… 🙂

Deschidem terminalul și scriem comanda ./liberalcoind -testnet

O să întâmpinăm această eroare:

Mergem în folderul .liberalcoin:

part 4 - 1ii

Și deschidem fișierul debug.log:

part 4 - 1iii

În debug.log dăm scroll down până la sfârșitul documentului și copiem nNonce, căruia îi vom da paste în Main.cpp:

Dăm paste la nNonce, la fel cum se vede în imagine:

Tot de la sfârșitul fișierului debug.log, copiem acum hash-ul inițial:

Pe care îl copiem în Main.cpp, sub testnet:

part 4 - 12iii

Deschidem terminalul, intrăm din terminal în fișierul src și scriem din nou comanda de compilare:

make -f makefile.unix

Așteptăm să se compileze, apoi scriem comanda:

./liberalcoind (desigur, voi scrieți numele monedei voastre, cu d la sfârșit)

O să primim o nouă eroare în care ni se spune ceva de genul: main.cpp:2854 bool InitBlockIndex(): Assertion ‘hash == hashGenesisBlock’ failed

Nu vă speriați, este un lucru normal. Era mai grav dacă nu primeați această eroare. 🙂

Intrăm din nou în debug.log și copiem din nou nNonce.

Ne întoarcem din nou în Main.cpp și dăm paste la Nnonce:


În Main.cpp mergem câteva linii mai jos, iar la testnet, scriem false în loc de true, la hashGenesisBlock:

part 4 - 13iii

Exact cum am făcut mai jos:

Deschidem din nou debug.log și copiem hash-ul de sub nNonce:

La linia 38 în Main.cpp, adăugăm hash-ul copiat din debug.log:

Deschidem fișierul checkpoints.cpp:

Ștergem checkpoint-urile, cu excepția primei linii:

La prima linie, adăugăm 0 în loc de 1500. Ștergem apoi hash-ul și îl adăugăm pe cel din debug.log:

În Main.cpp, de la linia 2794, copiem nTime de la main net:

L-am evidențiat, să-l vadă toată lumea:

Îi dăm paste în checkpoints.cpp, în dreptul timestamp-ului:


Sub timestamp, setăm numărul de tranzacții efectuate pe blockchain-ul nostru, adică 0:

Sub acesta, specificăm numărul estimativ de tranzacții pe zi: 1.0.

Din main.cpp luăm nTime-ul de la testnet și îl copiem în checkpoints.cpp:

Adăugat în checkpoints.cpp.

Tot în checkpoints.cpp, schimbăm numărul 546 în 0.

Va trebui să copiem din nou hash-ul blocului geneză. Îl găsim în Main.cpp:

Și îi dăm paste în checkpoints.cpp, exact ca mai jos:

Tot în checkpoints.cpp, la data testnet, schimbăm numărul 547 în 0, iar numărul 576 în 1.0

Salvăm toate modificările din Main.cpp și Checkpoints.cpp, apoi deschidem terminalul în directorul monedei noastre. Atenție, nu mai navigăm în directorul src, s-a înțeles?Aici, scriem comanda qmake

Primim următoarele erori. Nu le băgați în seamă, e normal. 🙂

În același director, scriem acum comanda make

Și așteptăm compilarea interfeței grafice a portofelului nostru:

Pasul 5: Cum minăm



0 0 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments