github VerusCoin/VerusCoin v0.5.9-42
v0.5.9-42 Verus Identity Release Candidate 3

latest releases: v1.2.2-4, v1.2.2-3, v1.2.2-2...
pre-release4 years ago

Notable Changes

  • Set content hashes will be a key/value map instead of an array
  • Improve invalid block and invalid transaction handling.

Verus ID and VerusHash 2.1 Network Upgrade

This is the third release candidate (RC3) for the next major upgrade to the Verus network. It is considered fully ready for testing on both VRSCTEST testnet and VRSC mainnet. While this release is likely to work fine on mainnet through the coming activation, it is not yet an official release that you should expect to support mainnet activation. If you install this version, please make sure to upgrade to an official release before network activation, which will happen at block 800200, expected to be mined or staked on December 15th.
This release enables two technology upgrades, one that would be considered big news to most cryptocurrency projects, an improvement to the FPGA-equalizing hash algorithm, and a revolutionary, new decentralized identity technology, Verus IDs, that will disrupt today’s centralized systems with the most secure, quantum ready, fully decentralized, self-sovereign digital identity system in the world.

Verus ID

Verus ID includes built-in privacy at the core through integration of zk-SNARKs, and provides a revolutionary improvement to blockchain address security, making it possible to actually recover your money after losing your keys, secure against identity and key theft, prove things about yourself without having to show more details than needed, and transfer assets to heirs as part of your estate.
This release also introduces a new smart transaction technology that is unique to the Verus network and replaces its use of Komodo compatible crypto-conditions. The Verus ID system was made possible through the use of Verus Smart Transactions, which will be available for everyone to use on their own blockchains in the upcoming PBaaS network upgrade. Verus Smart Transactions use standard Bitcoin style serialization rather than the ASN.1 used in crypto conditions, which makes support on lite or mobile wallets simpler to implement than the crypto-condition protocol, which is still used on the Verus network for Stake Guard.

VerusHash 2.1

VerusHash 2.0 was the first algorithm to significantly equalize FPGAs dominance over CPUs, once they were introduced on the Verus network. While FPGAs were intentionally not blocked completely, which would simply drive the performance battle to the higher end and further into secret, the VerusHash 2.0 algorithm was developed to explicitly equalize FPGAs and modern CPUs and has met its original goals in keeping FPGA performance for the price under 2x of CPU. VerusHash 2.1 introduces an adjustment to the equalization technology, which we expect to tilt the balance a bit more favorably towards CPUs, while still enabling FPGAs to operate on the hash algorithm with minor modifications. Verus Developers have proactively reached out to FPGA manufacturers and made the new algorithm available to them, so that everyone will have an opportunity to mine and stake when the Verus economy starts to roll and identity rewards, which will not inflate the currency, but should far exceed the potential for block rewards, begin streaming from the network.

Verus ID - A Better Blockchain Identity Technology

If you’ve been around crypto for even a little while, you’ll start to hear things like “not your keys, not your coins”, “lose your keys, lose your coins”. If you lose your keys, no one will ever be able to recover your money.

In fact, trading off decentralized, censorship resistant public systems for this risk to your cryptocurrency assets is such a fundamental issue in blockchain systems today that it is considered an acceptable price for having the benefit of full control over your own funds and blockchain assets.

Verus ID provides an elegant solution to these previously unsolved, fundamental problems, and also provides quantum-ready friendly identity names and blockchain funds addresses as self-sovereign, revocable, recoverable identities that provide the following advantages over today’s blockchain systems:

  1. Identity and currency address are one and the same. Your friendly name can be used as both a reference to who you are and an on-chain destination for any funds transfer.
  2. Each identity must have a set of addresses (1 or more) and a minimum number of signatures required from those addresses to spend or sign on behalf of an identity. Each identity also refers to two additional identities that have authority over:
    • Primary - this is the self identity and may modify any part of the identity except its name, its parent, which is derived from the blockchain on which it is defined, and unless it is also one of the two other authorities, it may not modify any data under their control, including the identity of the other authorities once specified.
    • Revocation - this identity may revoke the primary identity, which will also revoke access to all funds and transactions under its control, but it may not spend any funds or sign on behalf of the identity.
    • Recovery - this authority may redefine/recover a revoked identity, but it may not change the revocation authority, nor may it modify an unrevoked identity at all.
  3. Identities are transferable by defining them with primary addresses with private keys, which are under another party’s control. When identities are transferred, the revocation and recovery authorities may or may not be modified as well, as long as the party updating the ID has the authority to do so.
  4. If an identity is transferred from one party to another, all funds in transactions that are under the control of that identity will also transfer to the party to which control is being transferred. In the native wallet, these changes are automatically reflected in the wallet balance and visibility of the balance of an identity using z_getbalance identity@”.
  5. If later, a new address type or signature algorithm, such as one that is quantum secure s added to the Verus blockchain, all transactions sent to an identity that is updated to be under the control of the new address type will be subject to its spend conditions as well. That means that if you have 1000 transactions sent to your identity name/address, an upgrade to a quantum secure address, when they are available, will retroactively secure all 1000 transactions under the control of that address.

Making a new identity

Arguably, the hardest part of the new Verus identity technology is just making your first identity, especially without a GUI. Once you have your own identity, a lot becomes easier, not the least of which is the ability to send money to a friendly name instead of a base58 blockchain address or hash. For example, once you have your identity, either of the following commands will work as well as just about any other CLI command that takes an address:

./verus -chain=VRSCTEST z_sendmany bob@ ‘[{“address”:”alice@”, “amount”:100}]’

or

./verus -chain=VRSCTEST sendtoaddress alice@ 100

Making a Verus ID requires two steps, steps that are designed to prevent potentially selfish miners from replacing your purchase of an ID from the Verus blockchain with their own purchase of the same name instead. To prevent this name “front running”, you must first commit to a name that you wish to have in your identity as its friendly name. Friendly names are unique to a blockchain, so if someone already has a specific name you must have, you will need to either be the first to purchase that name from the blockchain or acquire it from the controlling individual or organization.

Creating a name commitment registers your commitment, but keeps the name completely secret until you register it and reveal your commitment. When you register a name, you must pay 100 VRSC or 100 VRSCTEST, unless you have a referral from someone who already has an identity. With a referral, the price is 80 VRSC or 80 VRSCTEST. When you register an identity with the CLI wallet, the correct amount of money, 100 VRSC without and 80 VRSC with a referral is automatically spent along with your registration. The funds for a referral are distributed as follows:

  • 20 VRSC to the referrer’s ID
  • 20 VRSC to the referrer’s referrer’s ID
  • 20 VRSC to the referrer’s referrer’s referrer’s ID
  • 20 VRSC to the miner of the block in which the ID is mined

100% of all funds that are not paid to referrers go to miners or stakers of the blockchain.

To create an identity:

Create your commitment with the following command:

./verus -chain=VRSCTEST registernamecommitment Name youraddressorid referrerfriendlyname@
That will respond with something like:
{
  "txid": "377576f8ada1acc2aeb013ddf7a9ad86756cb990d4c5fc70b5a9a0fca43d727e",
  "namereservation": {
    "name": "Name",
    "salt": "7b981f0a1ff2593167ef078150d0116335a7f329f9403b0abaeca30a42d8876a",
    "referral": "iSJLKp1hvn51Zg2Y6FBKjzLs9AAy7fomWN",
    "parent": "",
    "nameid": "iDXx9FPrAS5k2XCGss6FFmDQQMsts63uUg"
  }
}

You then wait for the commitment to be mined into a block, then use the information returned above as follows:

./verus -chain=VRSCTEST registeridentity '{"txid":"377576f8ada1acc2aeb013ddf7a9ad86756cb990d4c5fc70b5a9a0fca43d727e", "namereservation": {
    "name": "Name", "salt": "7b981f0a1ff2593167ef078150d0116335a7f329f9403b0abaeca30a42d8876a", "referral":"referrerfriendlyname@"}, "identity":{"name":"Name", "primaryaddresses":["RKo5u8N1sStZu81fU8kaxhoDcFcJmNEwSp"], "minimumsignatures":1, "privateaddress":"zs14y0aa096em2as6n4fauyumqeywz45rfpze38c39fksgtjsac9vmms7fmstcylpaalm7rseu8838"}}'

As long as you have enough funds and you are registering a new identity on the blockchain, you will be able to use your new identity in place of an address as soon as the transaction created by the registration command is mined into the blockchain.
You may list the identities in your wallet with the command listidentities, and you may display specific identities with the command getidentity. If you have the authority, or use identities under your control as revocation or recovery authorities for other identities, you may also revoke and recovery identities as well.

Testnet Reset

The testnet was deleted and relaunched on this release. IF YOU HAVE LAST LAUNCHED VRSCTEST FROM A VERSION PRIOR TO THIS, PLEASE DELETE THE FOLLOWING DIRECTORIES BEFORE RUNNING THIS NEW UPDATE:
Linux:

~/.komodo/VRSCTEST
~/.verustest

MacOS

 ⁨Users⁩/⁨{YourUserName}/⁨Library⁩/⁨Application Support⁩/⁨Komodo/VRSCTEST
 ⁨Users⁩/⁨{YourUserName}/⁨Library⁩/⁨Application Support⁩⁨/VerusTest

Windows

"%APPDATA%"\Komodo\VRSCTEST
"%APPDATA%"\VerusTest

Launching the testnet:

./verusd -chain=VRSCTEST

Disclaimer

This is experimental and unfinished software. Use at your own risk! No warranty for any kind of damage!
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The enclosed copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

MacOS:
https://www.virustotal.com/#/file/512b039b4cfd1a561372c0858c1c592efcab9a7d0bcba9fc2a9f2a298e77bb8c/detection
Linux-AMD64: https://www.virustotal.com/#/file/d3ab563b621a6953be5b0e3405d27608425f8fd7491d7dd0fcb347d0b535d265/detection
Windows:
https://www.virustotal.com/#/file/8f6b826b008ad66397cd4091a52fccc0ff1c8b3b54e2f7f73249e1ef92296f73/detection

Avast and Kaspersky may flag the software as "not-a-virus" or "PUP". These are warnings that you are installing mining software, which may be installed by a third party to exploit your PC.
To find out more about the false positives, review the following resources:
https://blog.malwarebytes.com/detections/pup-optional-bitcoinminer/
https://www.kaspersky.com/blog/not-a-virus/18015/

Don't miss a new VerusCoin release

NewReleases is sending notifications on new releases.