Browse Source

new read me

pull/4/head
jl777 8 years ago
parent
commit
d7426190e4
  1. 122
      README.md
  2. 14
      src/main.cpp

122
README.md

@ -1,93 +1,111 @@
Zcash
=====
https://z.cash/
Where do I begin?
-----------------
We have a guide for joining the public testnet: https://github.com/zcash/zcash/wiki/Public-Alpha-Guide
What is Zcash?
--------------
Zcash is an implementation of the "Zerocash" protocol. Based on Bitcoin's code, it intends to
offer a far higher standard of privacy and anonymity through a sophisticiated zero-knowledge
proving scheme which preserves confidentiality of transaction metadata.
**Zcash is unfinished and highly experimental.** Use at your own risk.
Participation in the Zcash project is subject to a [Code of Conduct](code_of_conduct.md).
Security Warnings
-----------------
See important security warnings in
[doc/security-warnings.md](doc/security-warnings.md).
License
-------
Zcash is released under the terms of the MIT license. See [COPYING](COPYING) for more
information or see http://opensource.org/licenses/MIT.
>>>>>>>>>>>>>>>>>>>> Komodo specific notes:
Komodo Specific Notes
=====================
Installation of BDB
-------------------
```
if you dont have BDB installed:
#If you do not have BDB installed, do the following:
wget http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz
tar -xvf db-4.8.30.NC.tar.gz
cd db-4.8.30.NC/build_unix
cd db-4.8.30.NC/
mkdir -p build
BDB_PREFIX=$(pwd)/build
../dist/configure —disable-shared —enable-cxx —with-pic —prefix=$BDB_PREFIX
cd build
../dist/configure --disable-shared --enable-cxx --with-pic --prefix=$BDB_PREFIX
make install
cd ../..
The following packages are needed:
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 libboost-all-dev libssl-dev libprotobuf-dev protobuf-compiler libqt4-dev libqrencode-dev
```
Dependencies
------------
```
#The following packages are needed:
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 libboost-all-dev libssl-dev libprotobuf-dev protobuf-compiler libqt4-dev libqrencode-dev
```
Komodo
------
```
git clone https://github.com/jl777/komodo
cd komodo
./autogen.sh
./configure --with-incompatible-bdb --with-gui
# This command might finish with: configure: error: libgmp headers missing. This can be ignored.
./zcutil/fetch-params.sh
cp ~/.zcash-params/testnet3/z9* ~/.zcash-params
./zcutil/build.sh -j8 # -j8 uses 8 threads
Once things are setup, you can build komodod with make from komodo/src directory. Also the error: configure: error: libsnark include directory not found, might appear and it looks like it can be ignored.
Create ~/.komodo/komodo.conf:
#This can take some time.
```
Create komodo.conf
------------------
```
cd ~
mkdir .komodo
cd .komodo
gedit komodo.conf
#For the above, you can use any text editor other than gedit.
#Add the following lines to the komodo.conf file:
rpcuser=bitcoinrpc
rpcpassword=password
addnode="5.9.102.210"
addnode="78.47.196.146"
Start mining:
komodo/src/komodod -gen=1 -genproclimit=1 -addnode="78.47.196.146"
```
Start mining
------------
```
cd ~
cd komodo
#Go to your komodo directory
./src/komodod -gen=1 -genproclimit=1 &
#This starts komodo as a process
komodo/src/komodo-cli getinfo
#To view the process:
ps aux | grep komodod
#To view komodod output:
gedit ~/.komodo.debug.log
```

14
src/main.cpp

@ -2946,25 +2946,21 @@ bool FindUndoPos(CValidationState &state, int nFile, CDiskBlockPos &pos, unsigne
bool CheckBlockHeader(const CBlockHeader& block, CValidationState& state, bool fCheckPOW)
{
int32_t retval;
// Check timestamp
if (block.GetBlockTime() > GetAdjustedTime() + 60)
return state.Invalid(error("CheckBlockHeader(): block timestamp too far in the future"),REJECT_INVALID, "time-too-new");
if ( (retval= komodo_blockcheck((void *)&block)) == 0 )
{
// Check Equihash solution is valid
if (fCheckPOW && !CheckEquihashSolution(&block, Params()))
return state.DoS(100, error("CheckBlockHeader(): Equihash solution invalid"),
REJECT_INVALID, "invalid-solution");
return state.DoS(100, error("CheckBlockHeader(): Equihash solution invalid"),REJECT_INVALID, "invalid-solution");
// Check proof of work matches claimed amount
if (fCheckPOW && !CheckProofOfWork(block.GetHash(), block.nBits, Params().GetConsensus()))
return state.DoS(50, error("CheckBlockHeader(): proof of work failed"),
REJECT_INVALID, "high-hash");
return state.DoS(50, error("CheckBlockHeader(): proof of work failed"),REJECT_INVALID, "high-hash");
}
else if ( retval < 0 ) // komodo rejects block, ie. prior to notarized blockhash
return(false);
// Check timestamp
if (block.GetBlockTime() > GetAdjustedTime() + 600)
return state.Invalid(error("CheckBlockHeader(): block timestamp too far in the future"),
REJECT_INVALID, "time-too-new");
return true;
}

Loading…
Cancel
Save