Skip to content

v0.4.0 Crypto-conditions, StakeGuard, Cheat Catcher Stake Delegation

Compare
Choose a tag to compare
@Asherda Asherda released this 15 Oct 17:20
· 929 commits to master since this release
e9f86ed

VerusCoin 0.4.0 - Release Notes

IMPORTANT

IF TWO OF YOUR MACHINES STAKE BLOCKS WITH THE SAME COINS, EACH ON A SEPARATE FORK, YOU CAN NOW LOSE YOUR BLOCK REWARD TO A CHEAT-CATCHER.

STAKING IS NOW OFF BY DEFAULT TO PREVENT MULTI-MACHINE STAKING OF THE SAME COINS OR ADDRESSES. YOU CAN EASILY ENABLE STAKING WITH THE “-mint” PARAMETER TO verusd, “setgenerate true 0” WITH “verus” CLI, OR THE STAKING BUTTON IN THE GUI.

ONLY STAKE ANY ADDRESS OR WALLET ON ONE COMPUTER AT A TIME, NOT MORE, UNLESS YOU CAN BE ABSOLUTELY SURE THEY ARE IN SYNC AND ON THE SAME CHAIN AT EVERY BLOCK. YOU CAN STILL MINE ON AS MANY MACHINES AS YOU’D LIKE.

Sapling

Verus Coin 0.4.0 includes support for Sapling addresses and transactions, including memory usage reduction of near 98% and performance improvements over previous z-transactions typically 40-50x. As with Zcash Sapling upgrade rules, older “Sprout” addresses and “Sapling” addresses may not be mixed in the same transaction. That means if you have Verus Coin that you would like to move from an older Sprout z-address to a Sapling z-address, you must first send it to a transparent address, then to the Sapling z-address. Sapling addresses can be used for shielding coinbase transactions or other functions. Retrieving viewing keys for Sapling addresses, which is not required for normal transactions, is not yet supported, and will be included in the next Sapling technology update.

Crypto-conditions and StakeGuard

Verus-enhanced, Komodo crypto-condition technology, enabling smart transactions and new types of on-chain functionalities. Verus has enhanced the original crypto-condition technology to make integration with standard transactions easier and enable things like StakeGuard, the Verus nothing-at-stake solution. In later releases, the same technology will enable PBaaS, voting, identity capabilities, and more.

Cheat Catcher

In addition to Stake Guard, which supports the nothing at stake solution, this version of Verus includes an early, functional version of the Cheat Catcher, a system that enables every miner or staker to catch stake cheating, when someone stakes two blocks with the same coins on two or more forks. With this version, all known orphaned stake transactions are compared to successful stakes when they mature, and if the orphan was trying to stake the exact same coins but on a different fork and the real fork at the same time, the miner of the block that is 100 blocks later, when that coinbase matures, will mine or stake a spend transaction for that cheat into the block, and send it to a sapling address the miner or staker has set in their wallet. If your wallet catches and spends a cheat transaction the reward for that coinbase will be automatically shielded to your address at the same time as you win the block. The early Cheat Catcher does not broadcast cheating transactions, and it will not catch all possible cheats on the network. It will make it a statistically losing proposition to cheat. This means you should not stake the same addresses on more than one computer at a time. Doing so creates the possibility that you will stake on two forks with the same coins, which puts your earnings at risk. Future cheat catcher implementations will excel at catching cheats on the network.

Stake Delegation

In the new Verus network protocol that activates at the same time as Sapling, you can now set the parameter -pubkey in the command line wallet, which will redirect both mining AND staking rewards to the public key of an address, which can be obtained from an address with the “validatekey” command.

Verus 0.4.0 GUI Specific Updates

Performance on large wallets is significantly improved
Sorting of all columns now works properly
Separate controls for mining and staking
New Zcash parameters for Sapling will be downloaded, and are much smaller than earlier params