# 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.


---NEW FILE---

# Question: How can I check my immature balance in a graphical Wallets?

## Verus Desktop

Verus Desktop shows your immature balance in your wallet dashboard, between the `Transparant Balance` and `Private Balance`.

## Agama (Deprecated)
1. In the Agama wallet click on the hamburger menu (the three stripes) on the top right
2. click on `Settings`
3. click on the item `</> CLI`
4. Select `VRSC` as coin
6. Type the following command: `getwalletinfo`
7. click `Execute`
8. scroll down and find \"immature_balance\":  which will give you the amount of time-locked coins in your wallet.

(submitted by @karero)

Note: last revision date 2020-04-24.


---NEW FILE---

# What versions of OSX/macOS are supported?

## Verus Desktop

Currently only macOS 10.12.x and up are tested and supported for Verus Desktop. Installing Verus Desktop on OSX 10.11.x or earlier may be possible but the wallet does not function and never completes the initial sync.

## Verus CLI wallet

The CLI wallet should run on lower versions without problems.

## File location

`VRSC Wallet and Data location` on Mac OS: `/Users//Library/Application Support/Komodo/VRSC`

### Necessary files:

Link 1: [How-To install the latest Wallet](#!/how-to/how-to_bootstrap.md)

## Procedure:

If you installed on OSX 10.11.x or earlier and need to remove it:

1. Quit your Wallet.
2. Eject the wallet dmg.
3. Make a backup of `wallet.dat` & `VRSC.conf` if necessary (Only if you had a wallet on this machine or if you used an existing `wallet.dat`)
4. If you installed the `Agama.app` in Applications, move this to the trash.
5. Move `~/Library/Application Support/Agama` to the trash or use the following command in terminal
`rmdir /Users//Library/Application\\ Support/Agama`.
6. Move `~/Library/Application Support/Komodo` to the trash or use the following command in terminal
`rmdir /Users//Library/Application\\ Support/Komodo`.
7. Upgrade OS.
8. Install Agama (Check `Link1` for a smooth install)

(submitted by @bigtom, edited by Oink.vrsc@)

Note: last revision date 2020-02-26.


---NEW FILE---

# How to import your Lite wallet address into your native Verus Desktop?

Attention: Read it completely before using.

### Important General Information

`verus command \"<userinput>\"` needs to be entered literally, with `<userinput>` replaced by your specific userdata. So if the text directs you to use for example `\"<Public Address>\"`, you replace that (including the `<` and `>`) with the address,
so it looks similar to this: `\"RYX6RYU3AAvwVCNyNM4cVyGUhSMUPvKs3r\"`.

This method is confirmed to work on Verus and all Komodo assetchains.

## Prerequisites

In order to convert your seedphrase into a Private key (WIF), you need to have a running native wallet first, that is fully synchronized. The earliest wallet that supports these functions is **Verus Desktop v0.6.4-beta-1**.

If needed, use this guide to quickly synchronize your wallet: https://wiki.verus.io/#!how-to/how-to_bootstrap.md

## Converting Seed to WIF
If you have a seed, you can retrieve your Private key (WIF) by having the Verus Desktop wallet convert it for you.
To convert your *seed phrase* in Verus Desktop, go to `settings` --> `Coin Settings`, select the chain you want to use in the top-right corner and enter the following command:
```
run convertpassphrase \"word_1 word_2 word_3 ... word_n\"
```

Note: Make sure you replace `Word1 word2 word3 ... word_n` with the actual seedphrase (12 or 24 words) of the address you want to import!

You will receive a response __similar__ to this:
```
{
\"walletpassphrase\": \"seedphrase\",
\"address\": \"RYX6RYU3AAvwVCNyNM4cVyGUhSMUPvKs3r\",
\"pubkey\": \"02ffc2f4b071afdec631e3fb7d435a0047be14a81ea1a269e4206b0068c0c1fa6f\",
\"privkey\": \"d899ed88e9ee2e90c2cf51cb47e7b4495ec1e1cb10763bb1c111b0bde48bf86c\",
\"wif\": \"UwGb5KvGPfMUr1tu74Desjh87ZeJM4wq5goLyThcogeLifc5aJqT\"
}
```
Copy that information and store it somewhere **SAFE**. With this information anyone having access to it will have full control over that address.

The 52-character string after **\"wif\":** that is shown, is what you want to import in the next step.


## Importing a single WIF for a public (transparent) address
To import your address, go to `settings` --> `Coin Settings`, select the chain you want to use in the top-right corner and enter the following command:
```
run importprivkey \"<wif>\" \"\" true
```
Replace `<wif>` with the actual **wif** you got from the `convertpassphrase` command earlier.

Note: Don't use the WIF from the example above, but use the one from the CLI-interface in Verus Desktop.

Note: The GUI wallet will not show any progress on the import and may give messages that the RPC daemon is not reacting. It will take quite some time for the process to finish in the background, especially if the address has many transaction on it.

## Importing multiple WIFs in one batch for public (transparent) addresses
To import your address, go to `settings` --> `Coin Settings`, select the chain you want to use in the top-right corner and enter the following command for every WIF except for the final one:
```
run importprivkey \"<wif>\" \"\" false
```
Import the final WIF with this command:
```
run importprivkey \"<wif>\" \"\" true
```
The last command triggers the chain to rescan all addresses in your wallet, including all the addresses you just imported.
Replace `<wif>` with the actual **wif** (like the one you got from the `convertpassphrase` command earlier).

Note: Don't use the WIF from the example above, but use the one from the CLI-interface in Verus Desktop.

The GUI wallet will not show any progress on the import and may give messages that the RPC daemon is not reacting. It will take quite some time for the process to finish in the background, especially if the address has many transaction on it.

## Importing a single WIF for a private address
To import your address, go to `settings` --> `Coin Settings`, select the chain you want to use in the top-right corner and enter the following command:
```
run z_importkey \"<wif>\" \"yes\" 1
```
Replace `<wif>` with the actual **wif** you got from the `convertpassphrase` command earlier.

Note: Don't use the WIF from the example above, but use the one from the CLI-interface in Verus Desktop.

The GUI wallet will not show any progress on the import and may give messages that the RPC daemon is not reacting. It will take quite some time for the process to finish in the background, especially if the address has many transaction on it.

## Importing multiple WIFs in one batch for private addresses
To import your address, go to `settings` --> `Coin Settings`, select the chain you want to use in the top-right corner and enter the following command for every WIF except for the final one:
```
run z_importkey \"<wif>\" \"no\"
```
Import the final WIF with this command:
```
run z_importkey \"<wif>\" \"yes\" 1
```
The last command triggers the chain to rescan all addresses in your wallet, including all the addresses you just imported.
Replace `<wif>` with the actual **wif** (like the one you got from the `convertpassphrase` command earlier).

Note: Don't use the WIF from the example above, but use the one from the CLI-interface in Verus Desktop.

### The GUI wallet will not show any progress on the import and may give messages that the RPC daemon is not reacting. It will take quite some time for the process to finish in the background, especially if the address has many transaction on it.


Information compiled by Oink.vrsc@.

Note: revision date 2021-05-02.


---NEW FILE---

# Question: What should I do if I end up on my own fork because of a network issue or having an old version of the wallet?

This solution can be solved in 2 ways: you can simply install the latest bootstrap file (less work, big download) or search manually for the forked block and invalidate that block (time-consuming, no download needed.)

## Procedure 1 (Easy, installing bootstrap)

For all GUI or CLI users.
1.  Stop the wallet/mining process by cleanly shutting down the program.
2.  Update your wallet if necessary.
3.  Follow the procedure in [HOW-TO Backup, Install or Update and Bootstrap your wallet.md](#!how-to/how-to_bootstrap.md) to efficiently rectify the problem.
4.  Do not be dismayed if it seems that your mining rewards suddenly seem to come to a halt.  Remember, when you mine to the wrong chain rewards can come in very quickly, but they are worth nothing.

## Procedure 2 (Time consuming, no extra download)

### Verus-Desktop
1.  The commands are **all** entered in the *Native Client Terminal* that is located under `Settings`, `Coin Settings`.
2.  Search for the **earliest** block that not matches the blockchain:
    `run getblockhash <suspected blocknumber>` will show you the blockhash for the blocknumber you filled in
    The response shown in the *Native Client Terminal* will be similar to this:
    `5cc7844973fb95ef17f1772ea4aba579f0d8273fb0ee6064cd8e707d1056c646`
3.  Check the blockhash your command gave you against the blockhash the [explorer](https://explorer.verus.io) shows.
4.  If the blockhash from the explorer is different than yours, repeat steps 2 & 3 until you find the earliest block that is different.
5.  Use the **earliest incorrect blockhash** from your system to invalidate that block:
    `run invalidateblock <earliest incorrect blockhash>`
    The *Native Client Terminal* will not give feedback on this command.
6.  Now use the **correct blockhash** that the explorer gave you for the block you just locally invalidated:
    `run reconsiderblock <correct blockhash>`
    Again the *Native Client Terminal* will not give feedback on this command.
7.  Once your wallet connects to a node that is on the correct chain, it will quicly synchronize.
    If needed you can either restart your wallet to force new connections or manually disconnect bad nodes.

### CLI
1.  Search for the **earliest** block that not matches the blockchain:
    `./verus getblockhash <suspected blocknumber>` will show you the blockhash for the blocknumber you filled in
    The response will be similar to this:
    `5cc7844973fb95ef17f1772ea4aba579f0d8273fb0ee6064cd8e707d1056c646`
2.  Check the blockhash your command gave you against the blockhash the [explorer](https://explorer.verus.io) shows.
3.  If the blockhash from the explorer is different than yours, repeat steps 1 & 2 until you find the earliest block that is different.
4.  Use the **earliest incorrect blockhash** from your system to invalidate that block:
    `./verus invalidateblock <earliest incorrect blockhash>`
    The deamon will not give feedback on this command.
5.  Now use the **correct blockhash** that the explorer gave you for the block you just locally invalidated:
    `./verus reconsiderblock <correct blockhash>`
    Again the daemon will not give feedback on this command.
6.  Once your daemon connects to a node that is on the correct chain, it will quicly synchronize.
    If needed you can either restart your daemon to force new connections or manually disconnect bad nodes.


(submitted by @jimboscott, Edited by Oink.vrsc@)

Note: last revision date 2020-11-11.


---NEW FILE---

# Question: ERROR: Your wallet.dat is not matching the blockchain. Please restart the wallet with -reindex param.

It seems you probably trying to move coinbase coins that you must move them through a private address (zaddress) first by shielding your coinbases, which is required by Verus blockchain rules.

## Procedure

1. go to the \"Receive\" screen and make sure you have a private address (starting with `zs`), if you don't have that create one.
2. Copy the new private address to your clipboard
3. Go to the \"Mining\" screen, select Verus and select \"Shield Rewards\"
4. Leave \"All unshielded funds\" as the source and paste the new zaddress into the destination
5. Click on \"Continue\"
6. Wait a while until you have a private balance showing on the Wallet screen
7. Send again, this time from your private address to any normal transparent receive address that you have.

(submitted by @keda666, solution written by mikeout.vrsc@)

Note: revised 2020-04-24


---NEW FILE---

# Worldwide Verifiable Digital Signatures for All!

Verus digital signatures, based on Verus ID, offer the first worldwide verifiable, decentralized, single or multi-sig friendly-name signatures for content such as messages and files, authentication, and attestations, with full support for revocation and recovery in case of key loss or theft.

Bitcoin, which was first to enable worldwide, P2P decentralized blockchain transactions, and most of its derivatives, offer ways to sign messages with specific private keys that can be verified against public addresses. While that does offer some limited signing capability, it does not offer capabilities that can compete with centralized services offering more sophisticated key management. A single public/private key pair lacks critical capabilities to make it suitable as an actual identity, most notable and obvious being the ability to recover from loss or theft of private keys, but arguably as important are friendly name aliases, modifiable multi-sig signing, updates, privacy, and the association of signed attestations by other identities to statements about properties of the identity.

Verus ID enables free verifiable digital signatures for all through the Verus ID protocol as just one of the many new capabilities it enables. It is also the foundation upon which many new applications and additional capabilities can be built.

For example, using Verus ID signatures, it\u2019s possible for any journalist anywhere to sign photos, videos, and content, establish a reputation for authenticity, and counter the potential for deep-fakes to make the truth harder to find. Open source projects can now create their own identities and digitally sign their binary releases, ensuring that not only can a file be verified by hash as the one downloaded from a particular server, but by signature as the actual file initially signed by the developer or release engineer. Signatures also form the basis for any attestation of one party to the validity of another. In fact, there are so many applications for digital signatures, from things listed already, to physical entry systems, to workflow applications, to new earning opportunities that a full discussion of use cases would overwhelm these release notes.

In any case, we are happy to release digital signatures for all, and we hope you enjoy using this new, simple capability, maybe even think of a new use case you\u2019d like to pursue yourself as a business opportunity on the Verus Network!


---NEW FILE---

# Question: How do I unshield my coin rewards and get them staking on CLI?

### Important General Information

`verus command \"<userinput>\"` needs to be entered literally, with `<userinput>` replaced by your specific userdata. So if the text directs you to use for example `\"<Public Address>\"`, you replace that (including the `<` and `>`) with the address,
so it looks similar to this: `\"RYX6RYU3AAvwVCNyNM4cVyGUhSMUPvKs3r\"`.

#### Remarks on Windows command line formatting:

The CLI help shows the command format for Linux and MacOS. On the native windows command prompt (`cmd.com`) the formatting is different.
* In windows command prompt, substitute the shown `'`-character with the `\"`-character.
* In windows command prompt, substitute the shown `\"`-character with the `\\\"`-characters.
* In windows command prompt, omit the preceding `./`.

Note: As an example, in Linux the command:
`./verus z_sendmany <my_private_address_without_quotationmarks> '[{\"address\":\"<my_transparent_address>\",\"amount\":<95.9998>}]'`
should be entered on the Windows command prompt as:
`verus z_sendmany <my_private_address_without_quotationmarks> \"[{\\\"address\\\":\\\"<my_transparent_address>\\\",\\\"amount\\\":<95.9998>}]\"`


## Procedure:
1) `./verus z_shieldcoinbase \"*\"` my_private_address_without_quotationmarks
this capture all so called coinbases, i.e. mined coins that are not yet staking.
you have to wait 100 blocks (minutes) after receiving them before being able to move them.
wait for a few minutes for the tx to be confirmed.
2) `./verus z_getbalance <my_private_address_without_quotationmarks>` this is to substract the 0.0001 VRSC fee from the balance in the next step.
3) `./verus z_sendmany <my_private_address_without_quotationmarks> '[{\"address\":\"<my_transparent_address>\",\"amount\":<95.9998>}]'`
amount is minus 0.0001 from balance and without quotation marks.
(4) to verify: `./verus z_gettotalbalance`
after a few minutes (operations from private addresses are a bit time consuming)

Note: I am always using the same private address.

(submitted by @karero, based on @dukeleto)

Note: last revision date 2020-04-12.


---NEW FILE---

# error while loading shared libraries: libgomp.so.1: No such file or directory
# error while loading shared libraries: libz.so: No such file or directory

When running `./verusd` on a Linux distro (eg Debian or Devuan), not all dependencies may be installed by default, resulting in the errormessage `error while loading shared libraries: libgomp.so.1: No such file or directory` or `error while loading shared libraries: libz.so: No such file or directory`.

To solve this you need to install the libgomp and zlib1g-dev libraries:
`sudo apt-get install libgomp1 zlib1g-dev`

Solution supplied by: Oink.vrsc@

Note: revision date 2021-12-01.


---NEW FILE---

# How-To: Restore my wallet from a backup?

## Important General Information

### Verus `Wallet.dat`, Chaindata & `VRSC.conf` standard locations
 * Linux:\t\t`~/.komodo/VRSC`
 * Mac OS: \t`~/Library/Application Support/Komodo/VRSC`
 * Windows 10: \t`%AppData%\\Roaming\\Komodo\\VRSC\\`
 * OS independent through Verus Desktop: Click `help`, `Show Verus data folder (default)`

`verus command \"<userinput>\"` needs to be entered literally, with `<userinput>` replaced by your specific userdata. So if the text directs you to use for example `\"<Public Address>\"`, you replace that (including the `<` and `>`) with the address,
so it looks similar to this: `\"RYX6RYU3AAvwVCNyNM4cVyGUhSMUPvKs3r\"`.

### Instruction Video
External YouTube link: [Restoring the Verus Desktop wallet](https://youtu.be/EO6EdPY32Rk)

## Procedure
### Using a backup of your `wallet.dat`.

1. Stop verusd. For Windows-Desktop or Agama, just exit and wait for it to close completely. For the linux cli run `./verus stop`, or for the windows cli run `verus stop`.
2. Once your wallet is finished closing copy the backup of your `wallet.dat` file from your backup location to the directory listed in the start of this document (see above).
3. Now restart your wallet by launching Verus Desktop, Agama or running verusd for the CLI.

### Using a `walletexport` file.

Note: The filename you replace`<mywalletimport>` with, can only contain letters and figures, no other characters, so it **cannot** have an file-extension

Attention: The command `z_importwallet` triggers the wallet to rescan in order to make all transactions to the freshly imported wallet addresses visible.
Rescanning your wallet may take a considerable time, during which your wallet may not respond to other commands. Please be patient.

The `<PATH>` in the `z_importwallet` command needs to be the **full absolute** path to the file. replace `LOGINNAME` with the actual loginname.

#### Verus Desktop:
   Go to `Settings`, `Coin Settings` and click `Import native wallet backup`.
   Click `Choose file`, browse to your backup file, select it and click `Open`
   Click `Import` to start the inport process
#### Agama:
   Go to settings, scroll to the bottom and click CLI, select VRSC in that section.
   Then below type `z_importwallet \"<PATH><mywalletimport>\"` and click the button below to run it.
#### linux/MacOS CLI:
   run `./verus z_importwallet \"<PATH><mywalletimport>\"`
#### Windows CLI:
   run `verus z_importwallet \\\"<PATH><mywalletimport>\\\"`

### Using individual seeds / WIF-keys
Importing individual keys is explained in detail in this wiki: [import your Lite wallet address into your native Verus Desktop](#!how-to/how-to_convert-seed-to-wif.md).

Information compiled by Oink.vrsc@.

Note: revision date 2022-09-12.


---NEW FILE---

# Remarks on Windows command line formatting:

The CLI help shows the command format for Linux and MacOS. On the native windows command prompt (`cmd.com`) the formatting is different.

 * For windows substitute the shown `'`-character with the `\"`-character.
 * For windows substitute the shown `\"`-character with the `\\\"`-characters.

Note: this only applies to giving commands from the windows command prompt. Verus Desktop will accept commands as listed.

Created by Oink.vrsc@

Note: last revision date 2020-03-02.


---NEW FILE---

# VerusID

**VerusIDs** are a fully functional blockchain protocol, not just an ID system. There is no corporation involved in the protocol, unlike most blockchain ID implementations. **VerusIDs** provide plenty of opportunity for identity applications. Specifically, **VerusID** provides:

### Quantum-ready friendly crypto-addresses on the worldwide Verus network
VerusIDs can be used to receive and send funds, which are controlled by the single or multi-sig addresses specified in the identity itself. If these controlling addresses or the single or multi-sig properties are changed, which can be done by the controller of the identity, all future spends of UTXOs sent to that identity follow the updated spend conditions and are subject to the updated keys. Although Verus 0.6.2 does not include quantum resistant signatures for transactions, Verus IDs are themselves resistant to quantum attack with known algorithms, and we have already started to integrate a quantum secure signature scheme, which we expect to activate on mainnet early next year. When that is available, it will be possible to change an ID and have all of the funds sent to it made retroactively quantum resistant. Verus IDs can also be used to publish ID->destination address mappings on other blockchains, but only the Verus ecosystem has the ability to revoke, recover, inherit, funds in existing UTXOs.

### Fully Decentralized Protocol
Anyone can create one and have complete, self sovereign control over it without permission to do so. All costs to create an ID go to miners, stakers, and ID referrers. Verus IDs are:

* Revocable -- each ID includes a revocation authority, which defaults to the identity self. If another ID is specified as the revocation authority it can be used to revoke the identity, which creates a valid transaction that, once mined into a block, prevents the identity from being used to spend or sign until it is recovered, effectively freezing all of its funds, for example, in the case of key theft or turnover in an organization.

* Recoverable -- each ID also includes a separate recovery authority, which also defaults to self. If another ID is specified as the recovery authority it can be used to recover the ID from its revoked state, with the option to alter the primary authorities used to spend and sign.

* Private - Each ID contains a set of zero-knowledge private addresses, which can be used as messaging, financial, or voting endpoints, and each ID also contains a content map of key-value hashes, intended to be used alongside applications and various identity policies to provide everything from private yet selectively provable claims and attestations to selectively provable components of a strong identity, attested to with a quantum secure signature when that is available.

* Powerful - Multiple addresses or other IDs can be defined as primary addresses, and any number of those may be required to spend, sign, or alter the identity (N of M). The revocation authority may only be altered by the revocation authority, and the same applies to the recovery authority, either of which may be another identity with its own N of M multisig controls for its primary addresses.


---NEW FILE---

[gimmick: math]()

# Question: I'm mining since XYZ with XYZ, why I haven't found a block yet?

$$ Average Time To Find One Block = ( \\frac{NetworkHashrate}{LocalHashrate} ) * BlockTime $$

One block = 6 coins (as now)
NetworkHashrate = retrieved by `getmininginfo` command from </>CLI
LocalHashrate = retrieved by `getmininginfo` command
BlockTime = 60 seconds (average)
note: The above formula assumes you are already mining and your hashrate is already included in the `NetworkHashrate`. For very large LocalHashrate calculations (what-if-I-had scenario) add it to the NetworkHashrate yourself.

Real example with - 31 threads AMD Ryzen 5950x @ 4.4Ghz -

$$ Average Time To Find One Block = ( \\frac{851125882237}{46159950} ) * 60 $$
$$ Average Time To Find One Block = 1,106,317 seconds (307 hours or little under 13 days) $$

Bear in mind that these are average times to find a block. In real life you may hit a block much sooner or later after finding the last. In the long run it averages out to the values predicted.

(submitted by @TexWiller, edited by Oink.vrsc@)

note: last revision date 2023-06-21


---NEW FILE---

# How do I install the Verus CLI (command line interface) wallet on a brand new (hosted) Linux system?

Notice: Read it completely before use.

#### Important General Information

`wallet.dat` location on Linux: `~/.komodo/VRSC`

#### Necessary files:

Link 1: [Download latest Wallet](https://verus.io/wallet)
Link 2: [Download Verus Bootstrap](https://bootstrap.verus.io/)

## Procedure:

1. First make sure your system is up to date:  
  `sudo apt-get update && apt-get upgrade -y`  

2. I suggest not to use the root account. I you have not yet done, set up a new user
  `sudo adduser newusername`
  `sudo usermod -aG sudo newusername`
3. Switch to new username
  `su -  newusername`
4. Test the your new user actually has root (SuDo) access, e.g.:
  `sudo ls -la /root`
  You should get some lines like this:
  `drwx------  6 root root 4096 Jul  3 15:56`
5. Download & install the wallet binaries:
  `wget https://github.com/VerusCoin/VerusCoin/releases/download/v0.9.3/Verus-CLI-Linux-v0.9.3-amd64.tgz`
 The downloaded archive contains another archive and a signature text file, enabling the archive within to be verified (You'll need a running wallet to do that)
 Also: Verify the URL to the latest version from the [Download latest Wallet](https://verus.io/wallet) above.
  `tar -xvf Verus-CLI-Linux-v0.9.3-amd64.tgz`
 Now extract the wallet archive:
  `tar -xvf Verus-CLI-Linux-v0.9.3-amd64.tar.gz`
 Change directory to verus-cli
  `cd verus-cli`
 Fetch parameters, takes time, more on slow Internet connection
  `./fetch-params`
Creating the chaindata directory
  `cd ~`
  `mkdir -p .komodo/VRSC`
  `cd ~/.komodo/VRSC`
Download the block-chain bootstrap, this considerably speeds up synchronisation of the block-chain from days to minutes... (optional)
  `wget https://bootstrap.verus.io/VRSC-bootstrap.tar.gz`
  `tar -xvf VRSC-bootstrap.tar.gz`
 Install libraries for Verus
  `sudo apt-get install libcurl3 g++-multilib -y`
 Install Tmux a terminal multiplexer with which you can run threads in the background see https://en.wikipedia.org/wiki/Tmux
  `sudo apt-get install tmux -y`
 Start tmux:
  `tmux`
 Launch Verus Daemon with or without number of threads
 (usually number of threads equals number of cores or double of that if the processor support hyper threading well)
  `~/verus-cli/verusd -gen -genproclimit`
  `~/verus-cli/verusd -gen -genproclimit=24`
 Once mining is operational \u2013 again this may take some time \u2013
 you\u2019ll see: 256 mega hashes complete - working
 then detach tmux
`[ctrl]&b d`

Disable login with Root User
(make sure your newly created user login works and has sudo rights)
  `sudo nano /etc/ssh/sshd_config`
Find: PermitRootLogin yes
And set to
PermitRootLogin no
Apply new settings:
  `sudo systemctl restart sshd`

(submitted by @karero, corrected by @Glennp, edited by Oink.vrsc@)

Note: last revision date 2022-08-19.


---NEW FILE---

# Guide to verify a new wallet download.

Attention: Read it completely before using.

## Important General Information
Wallet download page: [https://verus.io/wallet](https://verus.io/wallet)

## Using Verus-Desktop

1. download the new version
2. extract the archive
3. verify the signature using the data in the `*.signature.txt`-file through your existing Verus-Desktop, *VerusID* tab, Verify Signed Data and choose to verify a file. Only continue when this verification returns True.
4. stop your Verus-Desktop wallet
5. install the verified installer (Windows).
6. start your wallet.

## Using CLI Wallet


1. download the new version
2. extract the archive
3. verify the signature using the data in the `*.signature.txt`-file with the command `./verus verifyfile \"address or identity\" \"signature\" \"filepath/filename\"` command. Only continue when this verification returns True.
4. stop your verusdaemon verus stop
5. extract the verified archive to your current CLI-wallet location
6. start your wallet (verusd)

Compiled by: Oink@

Note: creation date 2020-11-11.


---NEW FILE---

# Question: What's the value of VRSC?

Use with: https://veruspay.io/api/ for simple USD VRSC price, or choose options now added!

Options (values are case insensitive):
      currency - BTC or Fiat code like USD or CAD
      ticker - ARRR or VRSC
      data - volume or price - volume only relevant if exchange is defined
      exch - name of supported exchange, e.g. digitalprice - If no exchange, price is average of all supported for that coin.

If no options are set, the default is average price in USD fiat of VRSC.

Examples:

https://veruspay.io/api/ - This get's the current price of VRSC in USD, weighted against 24hr volume across all exchanges. This is the default return.
https://veruspay.io/api/?exch=digitalprice&currency=cad - This will get the current price on digital price for VRSC and display in CAD fiat
https://veruspay.io/api/?currency=btc - This will get the average price of VRSC in BTC, weighted by 24 hr volume across both exchanges
https://veruspay.io/api/?currency=cad - This gets the current average price of VRSC in CAD, weighted by 24 hr volume across both exchanges
https://veruspay.io/api/?exch=cryptobridge&data=volume - This will get the 24 volume of VRSC on CryptoBridge in the default currency of USD
https://veruspay.io/api/?exch=cryptobridge&data=volume&currency=btc - This does the same but with BTC as the currency result
https://veruspay.io/api/?currency=cad&ticker=arrr - Gets the average price of ARRR.

(submitted by @Godballz, API created by @J Oliver Westbrook)


---NEW FILE---

# Welcome to Verus

## The Future Is Now

Here is a collection of information meant to span several platforms and services in order to keep all of us more informed on what\u2019s happening across the growing, world-wide community. It will also help to connect us, allowing us to discuss what\u2019s being worked on, what can be done to help and as a way to look ahead in a more involved way.

Verus, latin for \u201cTrue\u201d, combines all of the features we believe are important in a cryptocurrency, and provides a foundation for future development. Verus is a fork of Zcash and Komodo that leverages the Komodo platform, and we appreciate the contributions and support from those teams as well as the Bitcoin developers that created a foundation for us to launch new capabilities **in a system that supports Bitcoin and Zcash compatible transaction types as well as Komodo cross chain swaps** and dPoW security enhancements.

1. Verus Coin is a pure technology provider and does not endorse third party projects.
2. Be your own bank: **you** are responsible for securing your coins and taking backups.
3. **No VerusCoin community member, admin, or developer should __ever__, under __any__ circumstances, ask for your private keys or for you to send coins to them. Please __report__ any incident in the #community-support channel.**

## The VerusCoin Community is YOU\\!

If you\u2019ve been around long enough and feel a little skeptical or disillusioned from a few bad experiences elsewhere, it\u2019s totally understandable. We\u2019ve all had them and we know quite well that when unscrupulous projects abuse words like decentralization, interoperability, or protocol level solutions, it can have a *\u201cboy who cried wolf\u201d* effect.

We believe that actions speak louder than words. Anything that may be considered hype can be backed up with functional examples. What we\u2019re doing here is genuine. We are trying to be the real deal, **just as Bitcoin started out, as an open-source, fair launched, no ICO, or pre-mined, or even dev funded project.** Despite this, a foundation has been established by and for fellow community members. There is always more to be done and the foundation regularly pays out bounties to community members that help to make the Verus vision a reality. In fact, just about everything has been designed to reinforce the community. Designed with efficiency in mind, only the miners and stakers are rewarded for securing the chains. This ensures bare minimum costs to the end user starting up a chain and the sleek UI removes the technical barrier.

## NEW TO VERUS?

### What we\u2019re about:

Put simply, Verus is much more than any single ordinary blockchain; more of an entire ecosystem of **interconnected blockchains that all operate decentralized and at the protocol level**. Verus introduces Verus PBaaS (__**Public Blockchains as a Service**__), a true publicly notarized blockchain as a service with an easy to use built in wallet UI, designed to make it so that now anyone can start their very own full-fledged cryptocurrency so long as it can be funded or supported by miners. Newly created chains are just as secure as Verus itself and have the ability to be merge mined (up to __22x__ at once\\!)

Benefiting both the user and the miners, self-strengthening the ecosystem and ensuring minimal fees (no room for middlemen to take a cut). Reserve backed currencies are also possible with __fractional reserve__ capabilities and since interoperability is paramount, exchanging currencies in __cross-chain transactions__ is as simple as sending coins from one wallet to a different coin\u2019s wallet. __Conversions__ are handled by a built in market maker that automatically determines price based on a predetermined curve and issues orders fairly to all buy/sells within a block, with zero spread and the added benefit of eliminating the well- established problem of front-running, just some amount of slippage based on the net buy/sell.. With reserve currencies, buyers can make buys without even needing sellers (and vice versa).
Amazingly, everything is done at the __protocol level__ on a decentralized network, meaning Verus and it's associated chains can't be censored or stopped.

## Getting started:
### Important links:

Website: [*https://verus.io*](https://verus.io)
Wallet: [*https://verus.io/wallet*](https://verus.io/wallet)
GitHub: [*https://github.com/veruscoin*](https://github.com/veruscoin)
Explorer: [*https://explorer.verus.io*](https://explorer.verus.io)
Discord: [*https://verus.io/discord*](https://verus.io/discord) Check [https://youtu.be/YVOfIMjRf30](Human Verification) if you only see one empty channel.
Bitcointalk: [*https://bitcointalk.org/index.php?topic=4070404.0*](https://bitcointalk.org/index.php?topic=4070404.0)

Max Supply: 83,540,184
Algorithm: VerusHash 2.1 PoW/PoS - 50/50
Block time: 1 minute
Proof-of-Stake (PoS) ROI is currently between 6% and 8%
Halving Frequency: roughly every two years
Next Halving: Current ETA: Jan 2025 (Block \\#3,381,840)
Halving Countdown: [*https:/countdown.verus.io/halving*](https://countdown.verus.io/halving)

## VerusID

VerusIDs are true self-sovereign identities and aren't simply an ID system as much as a fully functional blockchain protocol. There is no business in the protocol, but plenty of opportunity for those who use what it can do for identity applications. Verus ID provides:

**Quantum ready** friendly crypto addresses on the worldwide Verus network -- VerusIDs can be used to receive and send funds, which are controlled by the single or multi-sig addresses specified in the identity itself. If these controlling addresses or the single or multi-sig properties are changed, which can be done by the controller of the identity, all future spends of UTXOs sent to that identity follow the updated spend conditions and are subject to the updated keys. Although Verus 0.6.0 does not include quantum resistant signatures for transactions, VerusIDs are themselves resistant to quantum attack with known algorithms, and we have already started to integrate a quantum secure signature scheme, which we expect to activate on mainnet early next year. When that is available, it will be possible to change an ID and have all of the funds sent to it made retroactively quantum resistant. Verus IDs can also be used to publish ID -> destination address mappings on other blockchains, but only the Verus ecosystem has the ability to revoke, recover, inherit, funds in existing UTXOs.

**Fully decentralized** -- anyone can create one and have complete, self sovereign control over it without permission to do so. All costs to create an ID go to miners, stakers, and ID referrers.

**Revocable** -- each ID includes a revocation authority, which defaults to the identity self, and which has the permission to revoke the identity, which creates a valid transaction that, once mined into a block, prevents the identity from being used to spend or sign until it is recovered, effectively freezing all of its funds, for example, in the case of key theft.

**Recoverable** -- each ID also includes a separate recovery authority, which also defaults to self, and which can recover the identity through redefining its primary state and the recovery state as well, though it cannot modify the revocation state, or vice versa, unless they are both controlled by the same underlying authority.

**Private** - Each ID contains a set of zero-knowledge private addresses, which can be used as messaging, financial, or voting endpoints, and each ID also contains a content map of key-value hashes, intended to be used alongside applications and various identity policies to provide everything from private yet selectively provable claims and attestations to selectively provable components of a strong passport, attested to with a quantum secure signature when that is available.

### A Built-in Decentralized Referral Program, Enabling Natural Growth.

Verus IDs will cost Verus to acquire, 100 Verus per ID to be exact, which can be discounted to 80 Verus with referral of an existing Verus ID. The interesting twist is that all of the cost of an ID goes back into the network, either as referral fees, which are a way to get discounts or possibly even make money through referrals and built into the identity transactions themselves, or as mining and staking fees. No one besides people participating in the network as miners, stakers, or ID referrers take any proceeds from the cost of an identity. If you refer someone new and they purchase an ID with your ID as a referral, they will receive a 20% discount on the ID. In addition:

1. You will receive 20 Verus directly
2. The person who referred you, if there is one, will receive 20 Verus
3. The person who referred person b, if there is one, will receive 20 Verus, and
3. The miner or staker will receive the remainder of the discounted 80 Verus cost

As you might expect from looking at the fact that anywhere from 20 to 100 Verus goes to miners and stakers of Verus for each new identity once identities hit mainnet, some Verus blocks may have VERY high rewards for some time. The best thing about that is that regardless of how much the Verus blockchain rewards miners over and above the pre-determined coinbase reward, it will be as a result of the **on-chain economy**, paid for by people buying identities with **no inflation** of the money supply\\! If you or your friends missed the early days of the Verus launch, **you don't want to miss this** new opportunity to be mining, staking or referring now **Verus IDs are activated on the mainnet\\!**.

## VerusPay

#### Blockchain-integrated payment gateway for accepting Verus Coin (VRSC) in a WooCommerce ecommerce store

This plugin extends *WooCommerce* on *Wordpress*, adding the ability to accept cryptocurrency payments in Verus Coin (VRSC) using either an on-store wallet daemon (best for VPS or dedicated hosting stores) or manually configured VRSC addresses (best for shared hosting stores).

When an order is submitted via the VerusPay gateway, the order will be placed \"on-hold\" while awaiting payment from the customer. The customer has a limited time wherein to send the payment and the store monitors the wallet/address to confirm payment received before releasing the order and redirecting the customer to the Thank You page.

VerusPay uses limited API functionality for Manual Mode, to communicate with the blockchain explorer in verifying payments and with the veruspay.io API to get up-to-date price data. These API's do not receive any private data either about the store owner, store, or customer. The only data sent to the block explorer API is the public/transparent blockchain transaction and address used. For VerusPay.io API price data, only the store-set currency is sent to retrieve the current fiat exchange rate for Verus Coin.

[*VerusPay installation instructions*](https://github.com/monkins1010/VerusPay/wiki)

## Be a part of it all

Focus on Verus\u2019 social media presence has picked up with new, fresh looking Facebook and YouTube channels so check them out and feel free to post something or simply explore the content. There\u2019s so much going on, plenty to learn about.

So much so that there is an *open call to anyone and everyone out there who can submit graphical or textual content* that can be used to help support the upcoming mainnet launch.

A stronger effort from our already wide base of members to post and utilize social media tools to help spread the word and generate new interested users is something we can all do right now. There is no better time than now and getting fresh new minds in here to discover what is being done is the first step in getting the great snowball rolling. To those of us who truly care and believe in this project, then this message is meant for you.

### Looking Ahead

Since we are on the verge of an historical mainnet release with capabilities that have the potential to revolutionize both the financial and technical sides of fintech and send shockwaves across many industries. There are still lots of things to be done but each day we collectively push closer and closer to making it a reality.

### Social Media Links

Check out the brand **new** community website, community social media pages, new Veruscoin YouTube and Facebook pages for helpful how to or to just keep up to date with things. Speaking of how to, we can always use more helpful videos if any community members would like to take it upon themselves to chip in. The Medium page also has lots of helpful guides and there\u2019s always something to Tweet about. Be sure to drop by the discord to meet the vibrant and helpful community in real- time, where it isn\u2019t uncommon to find the developers offering assistance. Where else can you find that?

We are all working together to realize something great. If you\u2019d like to join us and be a part of that special something but don\u2019t know how to, it can be as simple as checking out the links below and helping other\u2019s to understand that there\u2019s never been anything in existence quite like Verus, a complete, easy to use, fully decentralized blockchain ecosystem, designed specifically to benefit all participants in one of the most low cost yet efficient in every way, end-to-end systems to date.

Facebook - [*https://www.facebook.com/VerusCoin/*](http://www.facebook.com/VerusCoin/)
YouTube - [*https://www.youtube.com/channel/UC_-KCHBxaDwSgNMdE3LMThg*](https://www.youtube.com/channel/UC_-KCHBxaDwSgNMdE3LMThg)
Discord -[*https://verus.io/discord*](https://verus.io/discord)
Twitter -[*https://twitter.com/veruscoin*](https://twitter.com/veruscoin)
Medium - [*https://medium.com/@veruscoin*](https://medium.com/%40veruscoin)
Reddit -[*https://reddit.com/r/veruscoin*](https://reddit.com/r/veruscoin)
Community twitter - [*https://twitter.com/VerusCommunity*](https://twitter.com/VerusCommunity)

## Closing Thoughts

As a community project of just regular Joes, it can\u2019t be stressed enough how important each and every one of us all are. The true power of decentralization is putting power back in the hands of **YOU**.

created by Rozo@ and Godballz@

Note: last revision date 2022-03-09.


---NEW FILE---

# Linux pool-mining on low priority.

Attention: Read it completely before use.

### Links to VRSC miners:

[Miners download page](https://verus.io/get-vrsc)

## Procedure:

In order to let your mining not interfere with other processes running on your PC, we'll need to deprioritize the mining process. This will result in your miner throttling down whenever your PC needs processing power. People have reported to be able to use CPU-heavy applications, like games, without the miner interfering, with this method.

Because the Verus wallet (GUI and CLI) does a lot more than mining, it is not recommended to use this for a solo-mining setup. This is tested on Verus NHEQminer and Verus CCMiner on Ubuntu 18.04.

First thing you will need is pool-mining software. The link is supplied above this procedure. Download your preferred miner, extract it to your prefered location and configure the batchfile with the pool of your choice and your own mining address.

Now we'll need to adjust the batchfile to run on low priority:

##### NHEQMINER:

  - Run your miner as you normally would, with `nice -n 19 ` placed in front of the command you normally use,
    for example:
      `nice -n 19 ./nheqminer -v -l pool.verus.io:9999 -u RVjvbZuqSGLGDm1B9BFkbHWySPKEx4tfjQ.Donator -p x -t 6`
  - make sure you replace the pool (`pool.verus.io:9999`) with your prefered pool and the address
    (`RVjvbZuqSGLGDm1B9BFkbHWySPKEx4tfjQ`) with your own address. The address shown in this line is the veruscoin
    foundation donation address. If desired change the identifier (`Donator`) to a name that easily identifies the
    miner to you.

##### CCMINER:

  - Run your miner as you normally would, with `nice -n 19 ` placed in front of the command you normally use,
    for example:
      `nice -n 19 ./ccminer -a verus -o stratum+tcp://pool.verus.io:9999 -u RVjvbZuqSGLGDm1B9BFkbHWySPKEx4tfjQ.Donator -t 6`
  - make sure you replace the pool (`stratum+tcp://pool.verus.io:9999`) with your prefered pool and the address
    (`RVjvbZuqSGLGDm1B9BFkbHWySPKEx4tfjQ`) with your own address. The address shown in this line is the veruscoin
    foundation donation address. If desired change the identifier (`Donator`) to a name that easily identifies the
    miner to you.


Created by Oink.vrsc@.

Note: last revision date 2020-11-11.


---NEW FILE---

# Question: I accidentally send funds to my b-address and cannot move those funds

Funds sent to a b-address get locked in the same manner as the original coinbase reward was. However, because they were not sent using a script to lock those coins, they can be retrieved, without waiting the full unlock period (typically between 3 and 27 months).

Warning: DO NOT send to a b-address, unless you kow what you're doing.

## procedure

### First you need to determine the **TXID** of the locked funds.

1. The easiest way is to obtain the TXID from the send transaction you did in Verus-Desktop to the b-address. Make a copy of the TXID: you will need it for this procedure
2. The next easiest way is look up the b-address on the [explorer](https://explorer.verus.io) and examine the transactions to this address. The youngest transaction is usually the one you need. On the explorer the hash in the transaction is the TXID. Make a copy of the TXID: you will need it for this procedure
3. In Verus Desktop, go to `Settings` --> `Coin Settings` and make sure `VRSC` is selected in the top right. Run the command:
```bash
run listunspent 0 <BLOCKCOUNT> '[\"<YOUR-b-ADDRESS\"]'
```
 Replace `<BLOCKCOUNT>` with the current blockcount your wallet is on.
 Replace `<YOUR-b-ADDRESS` with the actual b-address where the coins are.
 You will receive a result similar to this:
 ```json
 [{
\"txid\": \"fa5962ebf61ef31867ba73b173433841f8f68578d53b4bb30cfe1432b5820f15\",
\"vout\": 10,
\"generated\": false,
\"address\": \"iBSUZSgXHEGGz65GTT6BGgchtkTHoFBs57\",
\"amount\": 2.20005763,
\"interest\": 0,
\"scriptPubKey\": \"050403000000cc1b04030001011504575dc6ae7484c83c0dc97a4218f88e2cbe9b659c75\",
\"confirmations\": 159,
\"spendable\": true
}]
```
Make a copy of the TXID: you will need it for this procedure

note: The above result is an example. ***DO NOT*** use data from it.

### Now we need to create a raw transaction

To create a raw transaction, we will need to use the CLI-interface. In Verus Desktop
`run createrawtransaction '[{\"txid\": \"yourtxid here\", \"vout\": fill in too}]' \"{\"destination addr\": <amount>}\" <current Blockheight -5>`

1. adapt the above `createrawtransaction` command, making sure to subtract the 0.0001 VRSC free from the amount that is in the original TXID, similar to this example:
```bash
run createrawtransaction '[{\"txid\": \"fa5962ebf61ef31867ba73b173433841f8f68578d53b4bb30cfe1432b5820f15\", \"vout\": 10}]' '{\"Oink@\": 2.20004763}' 890450
```
In this example, the result is a long HEX-string:
```json
0400008085202f8901150f82b53214fe0cb34b3bd57885f6f841384373b173ba6718f31ef6eb6259fa0a00000000feffffff019b011d0d0000000024050403000000cc1b04030001011504575dc6ae7484c83c0dc97a4218f88e2cbe9b659c7552960d006e960d000000000000000000000000
```
Copy the string that your command gave as response, from the CLI interface of your wallet. You will need it in the next step.

note: The above command and its result are examples. ***DO NOT*** use data from it. Use the results from your own wallet!

2. In the CLI interface adapt and issue this command`run signrawtransaction <string from step 1>`
In our example, that would look like this:
```bash
run signrawtransaction 0400008085202f8901150f82b53214fe0cb34b3bd57885f6f841384373b173ba6718f31ef6eb6259fa0a00000000feffffff019b011d0d0000000024050403000000cc1b04030001011504575dc6ae7484c83c0dc97a4218f88e2cbe9b659c7552960d006e960d000000000000000000000000
```
and your command will show a result similar to this example:
```json
{
\"hex\": \"0400008085202f8901150f82b53214fe0cb34b3bd57885f6f841384373b173ba6718f31ef6eb6259fa0a000000694c67010101012102c9ca37dac14c819a99ce4a71533ab8d3d5e37643ede9c4da0981081a074f75df40531ea63fb3de6111949652111bbe524506999c97c06302715e85aa5c5813519b3eace4ac15bb3950600f968c0c555a935fd826f1a51e00bd2a7f12d035757fc5feffffff019b011d0d0000000024050403000000cc1b04030001011504575dc6ae7484c83c0dc97a4218f88e2cbe9b659c7552960d006e960d000000000000000000000000\",
\"complete\": true
}
```

note: The above command and its result are examples. ***DO NOT*** use data from it. Use the results from your own wallet!

3. In the CLI interface adapt and issue this command `sendrawtransaction <\"hex\"-string from step 2>`.
In our example that would look like this:
```bash
run sendrawtransaction 0400008085202f8901150f82b53214fe0cb34b3bd57885f6f841384373b173ba6718f31ef6eb6259fa0a000000694c67010101012102c9ca37dac14c819a99ce4a71533ab8d3d5e37643ede9c4da0981081a074f75df40531ea63fb3de6111949652111bbe524506999c97c06302715e85aa5c5813519b3eace4ac15bb3950600f968c0c555a935fd826f1a51e00bd2a7f12d035757fc5feffffff019b011d0d0000000024050403000000cc1b04030001011504575dc6ae7484c83c0dc97a4218f88e2cbe9b659c7552960d006e960d000000000000000000000000
```
and your command will show a result similar to this example:
```json
4a5202327e6ed2ce20d3b146155ec92e52fae6c4481362faf6f8a072017b41f1
```
The result of this command is the TXID of the coins moving out of your b-address. You can monitor the progress in your wallet or look up the TXID in the [explorer](https://explorer.verus.io).

note: The above command and its result are examples. ***DO NOT*** use data from it. Use the results from your own wallet!

Some words of advice after succesfully removing funds locked in a b-address:
* Pay attention to which addresses you send.
* It may be an idea to import the addresses you use into a fresh wallet, omitting all unused (b-) addresses.

note: Created 2020-11-11 by Oink.vrsc@


---NEW FILE---

# Is mining profitable?
#### Necessary files:
Link 1: [Verush Hashrates](https://docs.google.com/spreadsheets/d/1RrSYJDV0Mjj3X-myMC3aQDGkcipivxHsD7ZxJ3r5f_A/edit?usp=sharing)

## Answer:
Mining VRSC with Verushash is at this time one of the most profitable coins to mine with your CPU.
If you want to know how profitable it is, you need to know a few important details about your own conditions.
1. What hardware will I use to mine with?
  1. CPU -  If that is a fairly modern CPU with AES and AVX instructions built in.
  This will be true if your processor is produced in 2013 or later. For processors between 2008 and 2012 you need to check the specifications.
  Older processors can still mine, but they will not perform well.
  2. GPU - It is possible to mine with fairly modern Nvidia GPU's, but since Verushash uses specific functions from the
  mentioned AES and AVX instruction sets, they will perform better than old CPUs, but worse than modern CPUs.
  3. FPGA - Many of these semi-specialized machines can be reprogrammed to mine VRSC. They don't have the same power per processor as a CPU, but they often have multiple processors running parrallel. The stronger ones can outperform a CPU easily, but need a lot of power to do so.

2. What is my energy price?

3. Do I use existing hardware or do I buy?

If you know the answer to the hardware, you can look op a comparable one in the Spreadsheat from Link 1, to give you an
idea of the performance.

If you know your energy price also, you can [calculate](#!faq-allos/faq-allos02_average_time_to_find_a_block_manual_calculation.md) an estimation of how much your hardware can earn you at this moment.

If you have to get new hardware just to mine, think about it for a moment: would you have bought new hardware anyway? If so,
you can use this information to get an idea what kind of hardware you want to buy.

Created by Oink.vrsc@


---NEW FILE---

# Windows pool-mining on low priority.

## Links to VRSC miners:

[Miners download page](https://verus.io/getVRSC.html)

## Procedure:

In order to let your mining not interfere with other processes running on your PC, we'll need to deprioritize
the mining process. This will result in your miner throttling down whenever your PC needs processing power.
People have reported to be able to use CPU-heavy applications, like games, without the miner interfering, with
this method.

Because the Verus wallet (GUI and CLI) does a lot more than mining, it is not recommended to use this for a
solo-mining setup. This is tested on Verus NHEQminer and Verus CCMiner on Windows 10.

First thing you will need is pool-mining software. The link is supplied above this procedure. Download your
preferred miner, extract it to your prefered location and configure the batchfile with the pool of your choice
and your own mining address.

Now we'll need to adjust the batchfile to run on low priority:

##### NHEQMINER:

  - change to the folder you extracted the download
  - edit the `start.bat`
  - Scroll down to the line, that needs to be adjusted:
      `nheqminer.exe -v -l %PoolHost%:%Port% -u %PublicVerusCoinAddress%.%WorkerName% -t %Threads%  %1 %2 %3 %4 %5 %6 %7 %8 %9`
  - adjust the line so it looks like this:
      `%windir%\\system32\\cmd.exe /c start \"NHEQminer VRSC\" /Low \"%THIS_DIR%\
heqminer.exe\" -v -l %PoolHost%:%Port% -u %PublicVerusCoinAddress%.%WorkerName% -t %Threads%  %1 %2 %3 %4 %5 %6 %7 %8 %9`
  - save and exit the file
  - run `start.bat` to start mining

##### CCMINER:

  - Change to the folder you put the three files from the downloaded archive in (`run.verushhash.bat`, `libcrypto-1_1-x64.dll` & `ccminer.exe`)
  - edit the `run.verushhash.bat`
  - The line, that needs to be adjusted:
      `ccminer -a verus -o stratum+tcp://na.luckpool.net:3956 -u REoPcdGXthL5yeTCrJtrQv5xhYTknbFbec.Donator -p d=6 -t 8`
  - adjust the line, so it looks like:
      `C:\\Windows\\System32\\cmd.exe /c start \"ccminerCPUv3.5 VerusPool\" /Low \"c:\\Miners\\CCminer 2.0 CPU Release 3.5\\ccminer.exe\" -a verus -o stratum+tcp://pool.verus.io:9999 -u RVjvbZuqSGLGDm1B9BFkbHWySPKEx4tfjQ.Donator -t 16`
  - make sure you replace the pool (`stratum+tcp://pool.verus.io:9999`) with your prefered pool and the address
    (`RVjvbZuqSGLGDm1B9BFkbHWySPKEx4tfjQ`) with your own address. The address shown in this line is the veruscoin
    foundation donation address. If desired change the identifier (`Donator`) to a name that easily identifies the
    miner to you.
  - save and exit the file
  - run `run.verushhash.bat` to start mining.

Submitted by Oink.vrsc@
Note: last revision date 2020-11-11.


---NEW FILE---

# Question: what are the staking pools that I can join?

- [Dudezmobi](https://docs.google.com/spreadsheets/d/1Up1WbMuCR21e6TxLae6zjLJePu_RIOVZwqShRj9vVvc/edit?usp=sharing)
- [Ginasis](https://discord.gg/4FJJRY5)

A staking pool has advantages and disadvantages over solo staking:

**Disadvantages**:
 1. It causes centralization on the network
 2. The pool owner is in control of **all** funds in the pool, including yours.
 3. You need to trust the pool operator to share the rewards fairly.
 4. You need to trust the pool operator to release your funds back to you on request.
 5. You need to trust the pool operator to securely run the pool 24/7.

**Advantages**:
 1. You don't need to run your wallet 24/7 in native mode.

Warning: **Do your own research** before you decide anything!

Note: last revision date 2020-10-14.


---NEW FILE---

# Question: How do I know when an immature block will \"unlock\" (mature)?

## Procedure:
1. Get the values of the current block height (\"blocks\") and the \"blockstomaturity\" the distance to maturity of the transaction in question.  (i.e. the number of blocks between current block height and where it unlocks. You can see the number is decreasing all the time, and if you add it to the current block height you'll see a constant.)
2. Apply this formula: blockstomaturity / 1440 = days to maturity (unlocking)
   e.g. 925558/1440=643 days

(submitted by @J Oliver Westbrook, edited by @elvinsophus )


---NEW FILE---

# How-To Join VRSC testnet.

Attention: Read it completely before using.

#### Important General Information

`VRSCTEST data location`:
Linux GUI: `~/.komodo/VRSCTEST`
Mac OS: `/Users//Library/Application Support/Komodo/VRSCTEST`
Windows 10: `%AppData%\\Roaming\\Komodo\\VRSCTEST\\`

#### General remarks on CLI wallet:

On Windows command line enter the commands as shown without the surrounding quotation marks
In Linux shell preceed the commands without surrounding quotation marks with `./`
In MacOS shell preceed the commands without surrounding quotation marks with `./`
Example: the windows version `verus listtransactions` transforms in Linux or MacOS to `./verus listtransactions`.

#### General remarks on Windows command line formatting:

The CLI help shows the command format for Linux and MacOS.
For windows substitute the shown `'`-character with the `\"`-character.
For windows substitute the shown `\"`-character with the `\\\"`-characters.

### Necessary files:

Link 1: [Download latest Wallet](https://verus.io/wallet.html)

## Procedure:

Joining Verus testnet to test the latest capabilities before they are released to mainnet or simply test if your goals are possible without spending VRSC (testnet coins hold no value) is easy.

### Download a wallet

The first thing you need is a VRSC wallet. The CLI-wallet and Verus Desktop GUI wallet are available on the link above for Windows,
Linux and MacOS. If you already have a wallet verify that the wallet is the most recent version and update if needed.

### Verus Desktop Wallet ###

1. Start your Verus Desktop wallet.
2. If you have never run Verus testnet on your system before:
  1. Go to `settings` (cogwheel icon) and select `General Settings`.
  2. Select `Enable VRSCTEST`.
  3. Click `Save Changes`
  4. Restart Verus desktop
3. When logged in, click `Add Coin`, select `Verus Testnet` and click `Continue`.
4. Select the startup parameters you desire (Native (Lite mode is not available on testnet), Staking, mining (specify number of threads), reindex blockchain and/or rescan wallet) and click `Add Coin`.


**CLI wallet**
1. start CLI walletdaemon using these parameters:
   `verusd -chain=VRSCTEST`  
   Any extra parameter that you are used to for VRSC (like `-mint` or `-pubkey=`) can be appended as well.
2. commands through the CLI are in the following format:
   `verus -chain=VRSCTEST`  
   The only difference with the normal VRSC chain is the `-chain=VRSCTEST` option, that is added.



Created by Oink.vrsc@, inspired by 0x03.vrsc@.

Note: revision date 2020-11-11.


---NEW FILE---

# Options available to the Verusd coindaemon.

## Important General Information

#### Verus Daemon version 1.2.2-4

Usage: `verusd [options]` Start Verus Daemon

The options can be issued from the command line as shown above, but they can also be stored in the `VRSC.conf` file.
The `VRSC.conf` file is loaded on the daemon startup and provides the standard configuration.
Options supplied at the command line will override any conflicting settings in the `VRSC.conf` file.
To use the options in the `VRSC.conf` file, omit the leading `-`-character.
Example of a `VRSC.conf`-file:
```
rpcuser=user
rpcpassword=pass
rpcport=27486
server=1
txindex=1
rpcallowip=127.0.0.1
rpchost=127.0.0.1
addnode=195.253.48.236:27485
```

## Verus `Wallet.dat`, Chaindata & `VRSC.conf` standard locations

Linux:\t\t`~/.komodo/VRSC`
Mac OS: \t`~/Library/Application Support/Komodo/VRSC`
Windows 10: \t`%AppData%\\Roaming\\Komodo\\VRSC\\`

# Options:

## General Options:

  `-?`
       This help message

  `-alerts`
       Receive and display P2P network alerts (default: 1)

  `-alertnotify=<cmd>`
       Execute command when a relevant alert is received or we see a really long fork (%s in cmd is replaced by message)

  `-blocknotify=<cmd>`
       Execute command when the best block changes (%s in cmd is replaced by block hash)

  `-bootstrap`
       Removes previous chain data (if present), downloads and extracts the bootstrap archive.

  `-checkblocks=<n>`
       How many blocks to check at startup (default: 288, 0 = all)

  `-checklevel=<n>`
       How thorough the block verification of -checkblocks is (0-4, default: 3)

  `-conf=<file>`
       Specify configuration file (default: VRSC.conf)

  `-daemon`
       Run in the background as a daemon and accept commands

  `-datadir=<dir>`
       Specify data directory

  `-dbcache=<n>`
       Set database cache size in megabytes (4 to 16384, default: 450)

  `-exportdir=<dir>`
       Specify directory to be used when exporting data

  `-loadblock=<file>`
       Imports blocks from external blk000??.dat file on startup

  `-maxorphantx=<n>`
       Keep at most <n> unconnectable transactions in memory (default: 100)

  `-mempooltxinputlimit=<n>`
       [DEPRECATED FROM OVERWINTER] Set the maximum number of transparent
       inputs in a transaction that the mempool will accept (default: 0 = no
       limit applied)

  `-par=<n>`
       Set the number of script verification threads (-4 to 16, 0 = auto, <0 =
       leave that many cores free, default: 0)

  `-pid=<file>`
       Specify pid file (default: verusd.pid)

  `-prune=<n>`
       Reduce storage requirements by pruning (deleting) old blocks. This mode
       disables wallet support and is incompatible with `-txindex`.
       **Warning** Reverting this setting requires re-downloading the entire blockchain.
       (default: 0 = disable pruning blocks, >550 = target size in MiB to use
       for block files)

  `-reindex`
       Rebuild block chain index from current blk000??.dat files on startup

  `-sysperms`
       Create new files with system default permissions, instead of umask 077
       (only effective with disabled wallet functionality)

## Index options:

  `-addressindex`
       Maintain a full address index, used to query for the balance, txids and
       unspent outputs for addresses (default: 1)

  `-idindex`
       Maintain a full identity index, enabling queries to select IDs with
       addresses, revocation or recovery IDs (default: 0)
       !!! Activating requires reindexing, not compatible with bootstrap!!!

  `-timestampindex`
       Maintain a timestamp index for block hashes, used to query blocks hashes
       by a range of timestamps (default: 0)
       !!! Activating requires reindexing, not compatible with bootstrap!!!

  `-spentindex`
       Maintain a full spent index, used to query the spending txid and input
       index for an outpoint (default: 1)

  `-insightexplorer`
       If enabled, forces addressindex, spentindex and timestampindex to enabled
       If disabled, forces timestampindex to disabled
       (default: 0)
       !!! Activating requires reindexing, not compatible with bootstrap!!!

## Connection options:

  `-addnode=<ip>`
       Add a node to connect to and attempt to keep the connection open

  `-banscore=<n>`
       Threshold for disconnecting misbehaving peers (default: 100)

  `-bantime=<n>`
       Number of seconds to keep misbehaving peers from reconnecting (default:
       86400)

  `-bind=<addr>`
       Bind to given address and always listen on it. Use [host]:port notation
       for IPv6

  `-connect=<ip>`
       Connect only to the specified node(s)

  `-discover`
       Discover own IP addresses (default: 1 when listening and no -externalip
       or -proxy)

  `-dns`
       Allow DNS lookups for -addnode, -seednode and -connect (default: 1)

  `-dnsseed`
       Query for peer addresses via DNS lookup, if low on addresses (default: 1
       unless -connect)

  `-externalip=<ip>`
       Specify your own public address

  `-forcednsseed`
       Always query for peer addresses via DNS lookup (default: 0)

  `-listen`
       Accept connections from outside (default: 1 if no -proxy or -connect)

  `-listenonion`
       Automatically create Tor hidden service (default: 1)

  `-maxconnections=<n>`
       Maintain at most <n> connections to peers (default: 384)

  `-maxreceivebuffer=<n>`
       Maximum per-connection receive buffer, <n> * 1000 bytes (default: 5000)

  `-maxsendbuffer=<n>`
       Maximum per-connection send buffer, <n> * 1000 bytes (default: 1000)

  `-onion=<ip:port>`
       Use separate SOCKS5 proxy to reach peers via Tor hidden services
       (default: -proxy)

  `-onlynet=<net>`
       Only connect to nodes in network <net> (ipv4, ipv6 or onion)

  `-permitbaremultisig`
       Relay non-P2SH multisig (default: 1)

  `-peerbloomfilters`
       Support filtering of blocks and transaction with Bloom filters (default:
       1)

  `-port=<port>`
       Listen for connections on <port> (default: 7770 or testnet: 17770)

  `-proxy=<ip:port>`
       Connect through SOCKS5 proxy

  `-proxyrandomize`
       Randomize credentials for every proxy connection. This enables Tor
       stream isolation (default: 1)

  `-seednode=<ip>`
       Connect to a node to retrieve peer addresses, and disconnect

  `-timeout=<n>`
       Specify connection timeout in milliseconds (minimum: 1, default: 5000)

  `-torcontrol=<ip>:<port>`
       Tor control port to use if onion listening enabled (default:
       127.0.0.1:9051)

  `-torpassword=<pass>`
       Tor control port password (default: empty)

  `-tlsdisable=<0 or 1>`
       Disable TLS connections. (default: 0)

  `-tlsenforcement=<0 or 1>`
      Only connect to TLS compatible peers. (default: 0)

  `-tlsfallbacknontls=<0 or 1>`
      If a TLS connection fails, the next connection attempt of the same peer
      (based on IP address) takes place without TLS (default: 1)

  `-tlsvalidate=<0 or 1>`
      Connect to peers only with valid certificates (default: 0)

  `-tlskeypath=<path>`
      Full path to a private key

  `-tlskeypwd=<password>`
      Password for a private key encryption (default: not set, i.e. private
      key will be stored unencrypted)

  `-tlscertpath=<path>`
      Full path to a certificate

  `-tlstrustdir=<path>`
      Full path to a trusted certificates directory

  `-uacomment=<string>`
       Set a User Agent to your daemon. (default: disabled/none)
       Shows as appended text in the `\"subver\"` string on connected nodes
       Using this option has implications on your anonymity!

  `-whitebind=<addr>`
       Bind to given address and whitelist peers connecting to it. Use
       [host]:port notation for IPv6

  `-whitelist=<netmask>`
       Whitelist peers connecting from the given netmask or IP address. Can be
       specified multiple times. Whitelisted peers cannot be DoS banned and
       their transactions are always relayed, even if they are already in the
       mempool, useful e.g. for a gateway

## Wallet options:

  `-arbitragecurrencies`
     Either a JSON array or a comma separated list of currency names.

  `-arbitrageaddress`
     A valid wallet address or identity controlled by this wallet that will
     hold the arbitrage currencies to use.

  `-cheatcatcher=<sapling-address>`
       same as \"-defaultzaddr\"

  `-defaultid=<i-address>`
       VerusID used for default change out and staking reward recipient

  `-defaultzaddr=<sapling-address>`
       sapling address to receive fraud proof rewards and if used with
       \"-privatechange=1\", z-change address for the sendcurrency command

  `-disablewallet`
       Do not load the wallet and disable wallet RPC calls

  `-keypool=<n>`
       Set key pool size to <n> (default: 100)

  `-maxtxfee=<amt>`
       Maximum total fees (in VRSC) to use in a single wallet transaction;
       setting this too low may abort large transactions (default: 0.10)

  `-migration`
       Enable the Sprout to Sapling migration

  `-migrationdestaddress=<zaddr>`
       Set the Sapling migration address

  `-paytxfee=<amt>`
       Fee (in VRSC/kB) to add to transactions you send (default: 0.0001)

  `-privatechange`
      directs all change from sendcurency or z_sendmany APIs to the
      defaultzaddr set, if it is a valid sapling address

  `-rescan`
       Rescan the block chain for missing wallet transactions on startup

  `-salvagewallet`
       Attempt to recover private keys from a corrupt wallet.dat on startup

  `-sendfreetransactions`
       Send transactions as zero-fee transactions if possible (default: 0)

  `-spendzeroconfchange`
       Spend unconfirmed change when sending transactions (default: 1)

  `-storagefeefactor`
       Defaults to 6.0, which is used for 6K outputs to price storage in a currency's TransactionExportFee (ie. 6.0 = 1 TransactionExportFee per K).

  `-txconfirmtarget=<n>`
       If paytxfee is not set, include enough fee so transactions begin
       confirmation on average within n blocks (default: 2)

  `-txexpirydelta`
       Set the number of blocks after which a transaction that has not been
       mined will become invalid (min: 4, default: 20 (pre-Blossom) or 40
       (post-Blossom))

  `-upgradewallet`
       Upgrade wallet to latest format on startup

  `-wallet=<file>`
       Specify wallet file (within data directory) (default: wallet.dat)

  `-walletbroadcast`
       Make the wallet broadcast transactions (default: 1)

  `-walletnotify=<cmd>`
       Execute command when a wallet transaction changes (%s in cmd is replaced
       by TxID)

  `-zapwallettxes=<mode>`
       Delete all wallet transactions and only recover those parts of the
       blockchain through -rescan on startup (1 = keep tx meta data e.g.
       account owner and payment request information, 2 = drop tx meta data)

## ZeroMQ notification options:

  `-zmqpubhashblock=<address>`
       Enable publish hash block in <address>

  `-zmqpubhashtx=<address>`
       Enable publish hash transaction in <address>

  `-zmqpubrawblock=<address>`
       Enable publish raw block in <address>

  `-zmqpubrawtx=<address>`
       Enable publish raw transaction in <address>

## AMQP 1.0 notification options:
all AMQP support options require `-experimentalfeatures`.

  `-amqppubhashblock=<address>`
      Enable publish hash block in <address>

  `-amqppubhashtx=<address>`
      Enable publish hash transaction in <address>

  `-amqppubrawblock=<address>`
      Enable publish raw block in <address>

  `-amqppubrawtx=<address>`
      Enable publish raw transaction in <address>

## Debugging/Testing options:

  `-debug=<category>`
       Output debugging information (default: 0, supplying <category> is
       optional). If <category> is not supplied or if <category> = 1, output
       all debugging information. <category> can be: addrman, alert, bench,
       coindb, db, estimatefee, http, libevent, lock, mempool, net,
       partitioncheck, pow, proxy, prune, rand, reindex, rpc, selectcoins, tor,
       zmq, zrpc, zrpcunsafe (implies zrpc).

  `-experimentalfeatures`
       Enable use of experimental features

  `-help-debug`
       Show all debugging options (usage: --help -help-debug)

  `-logips`
       Include IP addresses in debug output (default: 0)

  `-logtimestamps`
       Prepend debug output with timestamp (default: 1)

  `-minrelaytxfee=<amt>`
       Fees (in VRSC/kB) smaller than this are considered zero fee for relaying
       (default: 0.000001)

  `-printtoconsole`
       Send trace/debug info to console instead of debug.log file

## Node relay options:

  `-datacarrier`
       Relay and mine data carrier transactions (default: 1)

  `-datacarriersize`
       Maximum size of data in data carrier transactions we relay and mine
       (default: 10000)

## Block creation options:

  `-blockminsize=<n>`
       Set minimum block size in bytes (default: 0)

  `-blockmaxsize=<n>`
       Set maximum block size in bytes (default: 2000000)

  `-blockprioritysize=<n>`
       Set maximum size of high-priority/low-fee transactions in bytes
       (default: 1000000)

## Mining options:

  `-defaultid=<i-address>`
      VerusID used for default change out and staking reward recipient

  `-equihashsolver=<name>`
      Specify the Equihash solver to be used if enabled (default: \"default\")

  `-gen`
      Mine/generate coins (default: 0)

  `-genproclimit=<n>`
       Set the number of threads for coin mining if enabled (-1 = all cores,
       default: 0)

  `-mineraddress=<addr>`
       Send mined coins to a specific single address

  `-minetolocalwallet`
       Require that mined blocks use a coinbase address in the local wallet
       (default: 1)

  `-miningdistribution={\"addressorid\":<n>,...}`
       destination addresses and relative amounts used as ratios to divide
       total rewards + fees

  `-mint`
       Mint/stake coins automatically (default: 0)

  `-pubkey=<hexpubkey>`
       If set, mining and staking rewards will go to this address by default

## PBaaS options:

  `-acceptfreeimportsfrom=<i-address>,<i-address>,...`
       \"%s\" no spaces - accept underpaid imports from these PBaaS chains or
       networks - default is empty

  `-allowdelayednotarizations`
       Do not notarize in order to prevent slower notarizations (default = 0, notarize to prevent slowing down)

  `-alwayssubmitnotarizations`
       Submit notarizations to notary chain whenever merge mining/staking and eligible (default = 0, only as needed)

  `-approvecontractupgrade=<0xf09...>`
       When validating blocks, vote to agree to upgrade to the specific
       contract. Default is no upgrade.

  `-blocktime=<n>`
       Set target block time (in seconds) for difficulty adjustment (default: 60)

  `-chain=pbaaschainname`
       loads either mainnet or resolves and loads a PBaaS chain if not vrsc or vrsctest

  `-miningdistributionpassthrough`
      uses the same miningdistribution values and addresses/IDs as Verus when merge mining

  `-notarizationperiod=<n>`
      Set minimum spacing consensus between cross-chain notarization, in blocks (default: 10, min 10 min)

  `-notaryid=<ID@>`
      VerusID used for PBaaS and Ethereum cross-chain notarization

  `-notificationoracle=<i-address>`
      VerusID monitored for network alerts, triggers, and signals. Current default is \"Verus Coin Foundation@\" for Verus and the chain ID for PBaaS chains

  `-powaveragingwindow=<n>`
      Set averaging window for PoW difficulty adjustment, in blocks (default: 45)

  `-testnet`
           loads PBaaS network in testmode

## RPC server options:

  `-server`
       Accept command line and JSON-RPC commands

  `-rest`
       Accept public REST requests (default: 0)

  `-rpcbind=<addr>`
       Bind to given address to listen for JSON-RPC connections. Use
       [host]:port notation for IPv6. This option can be specified multiple
       times (default: bind to all interfaces)

  `-rpcuser=<user>`
       Username for JSON-RPC connections

  `-rpcpassword=<pw>`
       Password for JSON-RPC connections

  `-rpcport=<port>`
       Listen for JSON-RPC connections on <port> (default: 7771 or testnet:
       17771)

  `-rpcallowip=<ip>`
       Allow JSON-RPC connections from specified source. Valid for <ip> are a
       single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0)
       or a network/CIDR (e.g. 1.2.3.4/24). This option can be specified
       multiple times

  `-rpcthreads=<n>`
       Set the number of threads to service RPC calls (default: 4)

## Metrics Options (only if -daemon and -printtoconsole are not set):

  `-showmetrics`
       Show metrics on stdout (default: 1 if running in a console, 0 otherwise)

  `-metricsui`
       Set to 1 for a persistent metrics screen, 0 for sequential metrics
       output (default: 1 if running in a console, 0 otherwise)

  `-metricsrefreshtime`
       Number of seconds between metrics refreshes (default: 1 if running in a
       console, 600 otherwise)

# Additional debug options:
These are options for developers to debug/test the chain or daemon. These options are **not** for general use on users daemons.

## General options:

  `-enforcenodebloom`
       Enforce minimum protocol version to limit use of Bloom filters (default: 1)

## Debugging/Testing options:

  `-checkpoints`
       Disable expensive verification for known chain history (default: 1)

  `-dblogsize=<n>`
       Flush database activity from memory pool to disk log every <n> megabytes (default: 100)

  `-disablesafemode`
       Disable safemode, override a real safe mode event (default: 0)

  `-testsafemode`
       Force safe mode (default: 0)

  `dropmessagestest=<n>`
       Randomly drop 1 of every <n> network messages

  `-fuzzmessagestest=<n>`
       Randomly fuzz 1 of every <n> network messages

  `-flushwallet`
       Run a thread to flush wallet periodically (default: 1)

  `-stopafterblockimport`
       Stop running after importing blocks from disk (default: 0)

  `-nuparams=hexBranchId:activationHeight`
       Use given activation height for specified network upgrade (regtest-only)

  `-limitfreerelay=<n>`
       Continuously rate-limit free transactions to <n>*1000 bytes per minute (default: 15)

  `-relaypriority`
       Require high priority for relaying free or low-fee transactions (default: 0)

  `-maxsigcachesize=<n>`
       Limit size of signature cache to <n> MiB (default: 40)

  `-maxtipage=<n>`
       Maximum tip age in seconds to consider node in initial block download (default: 86400)

  `-printpriority`
       Log transaction priority and fee per kB when mining blocks (default: 0)

  `-privdb`
       Sets the DB_PRIVATE flag in the wallet db environment (default: 1)

  `-regtest`
       Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.

## Node relay options:

  `-blockversion=<n>`
       Override block version to test forking scenarios (default: 4)

## RPC options:

  `-rpcworkqueue=<n>`
       Set the depth of the work queue to service RPC calls (default: 16)

  `-rpcservertimeout=<n>`
       Timeout during HTTP requests (default: 30)


compiled by Oink.vrsc@.
Note: last revision date 2024-05-03.


---NEW FILE---

### Verus `Wallet.dat`, Chaindata & `VRSC.conf` standard locations
 * Linux:\t\t`~/.komodo/VRSC`
 * Mac OS: \t`~/Library/Application Support/Komodo/VRSC`
 * Windows 10: \t`%AppData%\\Roaming\\Komodo\\VRSC\\`
 * OS independent through Verus Desktop: Click `help`, `Show Verus data folder (default)`

Note: last revision date 2020-09-30.


---NEW FILE---

# Guide to change Verus-Desktop from Lite Mode to Native Mode.

Attention: Read completely before use.

#### Important General Information

### Verus `Wallet.dat`, Chaindata & `VRSC.conf` standard locations
 * Linux:\t\t`~/.komodo/VRSC`
 * Mac OS: \t`~/Library/Application Support/Komodo/VRSC`
 * Windows 10: \t`%AppData%\\Roaming\\Komodo\\VRSC\\`
 * OS independent through Verus Desktop: Click `help`, `Show Verus data folder (default)`

#### Necessary files & links:

Link 1: [Download Verus Bootstrap](https://bootstrap.verus.io)
Link 2: [Import Lite wallet address in Verus Desktop native](https://wiki.verus.io/#!how-to/how-to_convert-seed-to-wif.md)
Link 3: [Checking the signature](https://verus.io/verify-signatures)

## Procedure:
1. Make sure you have your seed phrase and password you use to log into your Lite mode wallet available.
2. First of all make a notition of your address and balance of VRSC you have in your wallet, before closing Verus Desktop.
3. Make sure the latest version of Verus-Desktop is installed.
 1. Download the latest Verus-Desktop.
 2. Verify the signature of your download, so you have an untampered installer. [Link 3](https://verus.io/verify-signatures) or [Video](https://youtu.be/sFUnKCnHx98)
 3. Run the file you just downloaded to install it.
4. Getting Verus-Desktop ready for Native mode:
\t1. Start Verus-Desktop and enter your profile (if not loaded automatically).
  2. If present in your profile, `deactivate` Verus Lite.
  3. Click `+ Add Coin`, select **Verus** from the dropdown list and continue.
  4. Select **Native**, tick the option `bootstrap` and optionally tick the options `Start staking`, `Start Mining` and fill in the amount of threads to mine with.
  5. Click `Add Coin`. Verus-Desktop will add Verus as Native chain to your screens.
\t6. You may get a red warning message about Zcash params. (Verus Desktop will detect if you have the necessary ZCash parameter files and download them if needed)
\t7. As soon as the download is finished, Verus-Desktop will continue and bring you into your wallet. It will automatically start to synchronize the blockchain. Since we already put the majority of the chain in place, this will take just a few minutes.
6. Importing your existing Address:
\t* This procedure is described in detail in: [Import Lite wallet address in Verus Desktop native](https://wiki.verus.io/#!how-to/how-to_convert-seed-to-wif.md).

If you followed these steps, installed the bootstrap, switched from Lite to Native mode and imported your existing address into Verus-Desktop. You can now stake your balance and use Private (sapling) addresses.

Created by Oink.vrsc@

Note: last revision date 2023-06-03.


---NEW FILE---

# ERROR: Cannot Get a lock on data directory /root/.komodo/VRSC.

Komodo is probably already running.

## Procedure:

It just means you can't start it when it's already running. If it isn't running we can take a look at it.
Check to see if it is running by running:

  `./verus getinfo`

If it's running you'll get info back, if it isn't you'll get an error.
If that throws an error, it's worth checking using this command:

  `ps fax |  grep verus`

and seeing if any processes are listed besides the process you're using to search.
You would see verusd with a child process of komodo and all its cli arguments.


(submitted by @keda666, solution written by englal.vrsc@)

Note: last revision date 2020-02-26.


---NEW FILE---

# My wallet is stuck on block number XXXX. It does not synchronize properly anymore.

note: Read it completely before use.

### Verus `Wallet.dat`, Chaindata & `VRSC.conf` standard locations
 * Linux:\t\t`~/.komodo/VRSC`
 * Mac OS: \t`~/Library/Application Support/Komodo/VRSC`
 * Windows 10: \t`%AppData%\\Roaming\\Komodo\\VRSC\\`
 * OS independent through Verus Desktop: Click `help`, `Show Verus data folder (default)`

#### Usefull links:
Link 1: [Download latest Wallet](https://verus.io/wallet.html)
Link 2: [Show current blockheight](https://explorer.verus.io/api/getblockcount)

## Procedure:
In case your wallet is not synchronized with the blockchain and restarting doesn't connect to any peers:

Compare your blockheight with the one Link 2 above is showing to make sure you are
not synchronized anymore. If the blockheight of the link above is significantly higher (more than 10) than
the blockheight your wallet is showing, follow the rest of the procedure.
If the numbers are equal or close, your wallet is synchronized and the procedure below will not solve any problems.

Close your wallet.
Go to the appropriate location for your OS as mentioned above.

Add a similar list to the bottom of your `VRSC.conf`, just below `rpcallowip=127.0.0.1`:
```
  addnode=157.90.113.198:27485
  addnode=95.217.1.76:27485
```
Save and exit the file.
An up-to-date list of working nodes can be found in Verus Discord in the #tipbot channel, by messaging `/peerinfo` in that channel.

After you added nodes, remove `peers.dat` that is in the VRSC folder.
(At least rename or move to a different location).
Make sure you don't remove any other files/folders, or you'll have to [bootstrap](http://blacksquare/#!how-to/how-to_bootstrap.md) your wallet.
Then start your wallet as you're used to.

If the problem persists, continue with this WIKI: [Recover from forking, network or old wallet problems](https://wiki.verus.io/#!faq-allos/faq-allos19_what_should_i_do_if_i_end_up_on_my_own_fork_because_of_a_network_issue_or_having_an_old_version_of_the_wallet.md)

Submitted by Oink.vrsc@ & Thoskk.vrsc@

Note: last revision date 2023-06-03.


---NEW FILE---

# Verus Information Page.

There's a lof of information about the Veruscoin project. We have gathered as much information and resources and bundled them into this FAQ, as to give a quick overview

#### `VRSC Wallet & data location` on different OS:

Linux GUI: `~/.komodo/VRSC`
Mac OS: `/Users//Library/Application Support/komodo/VRSC`
Windows: `%AppData%\\Komodo\\VRSC\\`

#### CLI binaries location in Verus Enhanced Agama installation:

Note: All locations are relative to the installation location of Agama:

Windows Verus binaries: `resources\\app\\assets\\bin\\win64\\verusd\\` contains `verusd` and `verus`
Windows Komodo (and asset chains) binaries: `resources\\app\\assets\\bin\\win64\\` contains `komodod` and `komodo-cli`
Linux Verus binaries: `resources\\app\\assets\\bin\\linux64\\verusd`  contains `verusd` and `verus`
Linux Komodo (and asset chains) binaries: `resources\\app\\assets\\bin\\linux64\\` contains `komodod` and `komodo-cli`

#### CLI binaries location in Verus Desktop installation:

Note: All locations are relative to the installation location of Verus Desktop:

Windows Verus binaries: `\\resources\\app\\assets\\bin\\win64\\verusd\\` contains `verusd` and `verus`
Windows Komodo (and asset chains) binaries: `\\resources\\app\\assets\\bin\\win64\\komodod` contains `komodod` and `komodo-cli`
Windows Zcash binaries: `\\resources\\app\\assets\\bin\\win64\\zcash` contains `zcashd` and `zcash-cli`
Linux Verus binaries: `\\resources\\app\\assets\\bin\\linux64\\verusd`  contains `verusd` and `verus`
Linux Komodo (and asset chains) binaries: `\\resources\\app\\assets\\bin\\linux64\\` contains `komodod` and `komodo-cli`


#### Various links:

Website: [Official VerusCoin website](https://verus.io)
GitHub: [VerusCoin source code for the VerusCoin wallet, miner and explorer](https://github.com/veruscoin)
Block explorer: [Main VerusCoin Explorer](https://explorer.verus.io)
Block explorer: [VerusCoin Backup Explorer](https://explorer.vrsc.0x03.services/)
Block explorer: [Explorer for all Komodo Ecosystem chains](https://dex.explorer.dexstats.info/)
Social Media: [Bitcointalk](https://bitcointalk.org/index.php?topic=4070404.0)
Social Media: [Discord](https://verus.io/discord)
Social Media: [Twitter](https://twitter.com/veruscoin)
Social Media: [Medium](https://medium.com/@veruscoin)
Social Media: [Reddit](https://reddit.com/r/veruscoin)
Overview: [Chain specifications](https://cdn-images-1.medium.com/max/2000/1*GUXCVTqV455RoOQzj9FGSw.jpeg)
Miner: [Monkins ccminer for CPU (recommended) or GPU](https://github.com/monkins1010/ccminer/releases)
Miner: [nheqminer for Windows, Linux, and MacOS](https://github.com/VerusCoin/nheqminer/releases)
Reported mining speeds: [spreadsheet to compare hashrates](https://docs.google.com/spreadsheets/d/1RrSYJDV0Mjj3X-myMC3aQDGkcipivxHsD7ZxJ3r5f_A/edit#gid=201266774)
Mining pool: https://luckpool.net/verus
Mining pool: https://pool.verus.io/
Mining pool: https://zergpool.com/
Mining pool: https://vrsc.mcmpool.eu/
Mining pool: https://wattpool.net/
Mining pool: https://www.nlpool.nl/
Mining pool: https://vrsc.dev-codex.com/
Mining pool: http://vrsc.52hash.com/
Mining pool: https://vrsc.ciscotech.dk/
Mining pool: http://www.lepool.com.cn:8088/
Mining pool: http://verus.bcmonster.com/
Exchange: https://atomicdex.io/ (VRSC/any listed coin)
Exchange: https://app.stex.com/de/trade/pair/BTC/VRSC/1D (VRSC/BTC)
Exchange: https://safe.trade/trading/vrscbtc (VRSC/BTC, VRSC/SAFE)
Exchange: https://www.aacoin.com/#/trade?symbol=VRSC_BTC (VRSC/BTC)
Exchange: https://graviex.net/markets/vrscbtc (VRSC/BTC, VRSC/KMD, VRSC/USD)
Exchange: https://www.kuangex.com/#/exchange/vrsc_usdt (VRSC/USDT)
Guide: [How to mine in under 5 minutes](https://medium.com/veruscoin/how-to-start-cpu-mining-verus-coin-vrsc-from-your-laptop-in-under-5-minutes-f69c9aae340e)
Wallet: [Verus Desktop releases](https://github.com/VerusCoin/Verus-Desktop/releases)
Wallet: [CLI wallet releases](https://github.com/VerusCoin/VerusCoin/releases/)
Mobile wallet: [Android Mobile Wallet](https://github.com/VerusCoin/Verus-Mobile/releases/tag/v0.1.6-beta)
Mobile wallet: [iOS Mobile Wallet](https://testflight.apple.com/join/ZS43lYcw)
Paper wallet: [Verus Paper wallet](https://paperwallet.verus.io/)
Bootstrap: [Download Verus Bootstrap](https://bootstrap.verus.io)
VerusPay: [VerusPay setup guide](https://veruspay.io/setup/)

## Information:

|||
|---|---|
|Platform:           |Komodo|
|Project type:       |Decentralized public blockchain|
|                    |Open source, fair launch, no ICO|
|                    |Community driven project|
|Privacy:            |Sapling enhanced, zk-SNARKs zero knowledge proofs|
|Website:            |https://verus.io/|
|Github:             |https://github.com/veruscoin There is the VerusCoin source code for the VerusCoin wallet, miner and explorer.|
|Block explorers:    |https://explorer.verus.io/|
|                    |https://explorer.vrsc.0x03.services/|
|                    |https://dex.explorer.dexstats.info/|
|Announcement:       |https://bitcointalk.org/index.php?topic=4070404.0|
|Discord:            |https://discord.gg/VRKMP2S|
|Twitter:            |https://twitter.com/veruscoin|
|Medium:             |https://medium.com/@veruscoin|
|Reddit:             |https://reddit.com/r/veruscoin|
|Mining Algorithm:   |VerusHash 2.1 - PoW/PoS 50/50 = **Proof of Power - 51% attack resistant**|
|                    |CPU targeted, non-discriminatory, CPU/FPGA equalizing algorithm|
|Block time:         |1 min|
|Block reward:       |24 VRSC since 09/28/2018 (both mining and staking; next halving on Sept. 28, 2020)|
|Total supply:       |83'540'184, no premine, no ICO.|
|Reward emission schedule:| Started with linear ramp, changing every block for the first 10,080 blocks (0 to 384 VRSC) and then halving every month for the following 5 months, then every 2 years after that. All rewards, at or above 192 are time locked for random release between block 129,600 and 1,181,520 (3 months to 2 years and 3 months after genesis).|
|Reward maturing:    |100 blocks to maturity|
|PoS Period:         |150 blocks cooldown of UTXO|
|Unique features:    |VerusID: VerusIDs are a fully functional blockchain protocol, not just an ID system. There is no corporation involved in the protocol, unlike most blockchain ID implementations. VerusIDs provide plenty of opportunity for identity applications.|

#### Mining:

VerusCoin can be mined with CPUs, GPUs and FPGAs, solo and in pools. However, the algo is carefully designed for CPUs, and they still substantially outrange GPUs.
ARM mining works in general, but although fairly efficient, without high hashrates. FPGAs can mine this coin, but don't outperform CPUs by much.

##### Miners:
Besides solo-mining with Verus Desktop or CLI wallet, you can use:
ccminer for CPU (efficient for most modern CPUs) or GPU https://github.com/monkins1010/ccminer/releases;
nheqminer https://github.com/VerusCoin/nheqminer/releases (for Windows, Linux, and MacOS);

A spreadsheet to compare hashrates can be found here: https://docs.google.com/spreadsheets/d/1RrSYJDV0Mjj3X-myMC3aQDGkcipivxHsD7ZxJ3r5f_A/edit#gid=201266774
You can also compare older and current algos

##### Mining pools:
https://pool.verus.io/ (fees will go to VERUS foundation)
https://luckpool.net/verus
https://zergpool.com/
https://vrsc.mcmpool.eu/
https://wattpool.net/
https://www.nlpool.nl/
https://vrsc.dev-codex.com/
http://vrsc.52hash.com/
https://vrsc.ciscotech.dk/
http://www.lepool.com.cn:8088/
https://zpool.ca/
http://verus.bcmonster.com/

#### Staking pools:
https://discord.gg/4FJJRY5 (Ginasis Staking pool, 5% fee)
https://docs.google.com/spreadsheets/d/1Up1WbMuCR21e6TxLae6zjLJePu_RIOVZwqShRj9vVvc/edit?usp=sharing (Dudezmobi Staking pool, 1% fee)
https://www.aacoin.com/#/trade?symbol=VRSC_BTC (Technically not a pool, but it stakes your VRSC on the exchange, 20% fee)

Price: https://veruspay.io/price/

#### Exchanges:
https://app.stex.com/de/trade/pair/BTC/VRSC/1D
https://safe.trade/trading/vrscbtc
https://www.aacoin.com/#/trade?symbol=VRSC_BTC
https://graviex.net/markets/vrscbtc
https://atomicdex.io/ (in Beta)
https://www.kuangex.com/#/exchange/vrsc_usdt

Also check out the Guide on how to mine in under 5 minutes: https://medium.com/veruscoin/how-to-start-cpu-mining-verus-coin-vrsc-from-your-laptop-in-under-5-minutes-f69c9aae340e

#### Wallets:
Verus Agama GUI wallet is a forked Agama Desktop App for multiple coins (for Win, Linux and Mac). It's been deprecated now and no longer supported;
Verus Desktop GUI wallet is a newly developed multi-coin wallet supporting VerusID https://github.com/VerusCoin/Verus-Desktop/releases (for Win, Linux, Mac and ARM Linux);
the CLI wallets can be found here: https://github.com/VerusCoin/VerusCoin/releases/
There's also possibilities to test coming PBaaS functionality in this wallet.

A beta version of the Android mobile wallet can be found here: https://github.com/VerusCoin/Verus-Mobile/releases
A beta version of the iOS mobile wallet can be accessed via this Apple TestFlight invite https://testflight.apple.com/join/ZS43lYcw

Our Paper Wallet can be accessed here: https://paperwallet.verus.io

If you need a bootstrap, you can find it here: https://bootstrap.verus.io
(a guide how to apply is pinned in #community-support channel in Discord: https://discord.gg/VRKMP2S or in the HOW-TO & FAQ section of our website https://wiki.verus.io/how-to/how-to_bootstrap.md)

For those interested in VerusPay, a guide can be found here: https://veruspay.io/setup/
And finally for those interested in running various Veruscoin services: https://github.com/VerusCoin/VerusServicesSetup


Information compiled by Thoskk.vrsc@, complemented by Godballz.vrsc@ and Oink.vrsc@.

Note: revision date 2020-11-11.


---NEW FILE---


# Standard file location for Verus Desktop

The installer for Verus-Desktop suggests a standard location to install to, depending on the choice whether you want to install it for all users or just yourself.

## Anyone who uses the computer (All Users)

`%ProgramFiles%\\Verus-Desktop`

## Only me:

`%USERPROFILE%\\AppData\\Local\\Programs\\Verus-Desktop`

Normally you don't need to worry about these locations, but in some instances you will be asked by community members providing support to look up a file in a folder in your Verus-Desktop installation.

note: changing files in these folders or subfolders may result in a corrupt installation. Only do so when instructed by our support community members.

## Deamons

The daemons are located in the `komodod`, `verusd` and `zcashd` folders that can be found in the
`resources\\app\\assets\\bin\\win64\\` subfolder of your installation folder.

## Program settings

Verus Desktop saves it program settings on a different folder:
`%AppData%\\Verus-Desktop`
The users settings are stored in `appdata\\config.json` in the program settings folder.

## Standard chain data and wallet locations

#### KMD

`%AppData%\\Komodo`

### Verus

`%AppData%\\Komodo\\VRSC`

#### Komodo asset chains
Any Komodo asset chain will create a subfolder in the KMD chain data and wallet folder, which is standard named. The names will be in capitals and are identical to the **official** asset-chain name.
`%AppData%\\Komodo\\<CHAIN-NAME>`

Note: examples
Pirate: `%AppData%\\Komodo\\PIRATE`
Utrum: `%AppData%\\Komodo\\OOT`
Zexo: `%AppData%\\Komodo\\ZEXO`
And so on...

For easy access to the binaries folders, Verus-Desktop program settings and VRSC chain folder and all binary folders, you can use the debug menu in Verus-Desktop.

note: updated at 2020-12-03 by Oink.vrsc@


---NEW FILE---

# Question: What reward do I get for staking (PoS) or Mining (PoW) a block?

The reward received depends of the blocknummer:

##### Era 1:
1st week: Block 0 - 10080 ==> 0 to 384 VRSC reward ==> 16,588,800 VRSC total this period (reward rising linearly and changing each block)
##### Era 2:
1st month: Block 10080 - 53279 ==> 384 VRSC reward ==> 8,294,400 VRSC total this period
2nd month: Block 53280 - 96479 ==> 192 VRSC reward ==> 4,147,200 VRSC total this period
3rd month: Block 96480 - 139679 ==> 