Virtual Currency Verification Method
VCVM (Virtual Currency Verification Method) is an idea on how to verify currency on a computer-based economy. This system is created for digital worlds such as Second Life, World of Warcraft, etc.
This currency is built on a few basic concepts: ledger, mint, wallet, coin, transaction, and verification.
There is one, centralized ledger. The ledger records information about unique coins, wallets, and transactions on the system (if not a single server). As long as the ledger is maintained and exists, the economy can exist.
A mint creates unique coins and wallets. The mint is mostly just a program.
Wallets are unique containers of unique coins. A user is also a wallet owner. A new wallet is created when a new user is created.
When a wallet is created, it is generated with an unique key that is hashed.
A coin has its own unique key, which is identified by the ledger that stores hashed keys.
Coins do not need to be owned to exist.
The mint creates a deterministic amount of unique coins which are distributed later.
The mint owner (administrator of the system) initially distributes the unique coins. This can be done once or multiple times.
Once the coins are distributed, the mint cannot undo the action (no coins can be deleted or removed from individual wallets).
Deleted, banned, or abandoned wallets will retain all coins.
Coins are verified during a transaction.
Transaction is when coins move from one wallet to another.
Before a wallet receives or moves coins, the ledger verifies the transaction automatically. If the wallet contains coins that are not unique or do not match the ledger, the transaction cancels. Administrator is alerted of the problem; however, the administrator will not be able to move coins around – just a report of why the transaction is canceled. If someone is identified for exploiting the economy with non-unique coins or faux coins, the account freezes until an administrator looks at the issue.
Ledger puts the wallet and coins through a verification program that identifies the keys. The key information is also hashed, so that no one user – even the administrator – can see individual keys for coins or wallets.
Transactions will be traced in the ledger that may later to read by the administrator and users (though it may be obscured or modified on the front-end).
User sees 3 coins in wallet.
Wallet is made up of three separate coins with unique identifiable information that can be traced.
Each wallet has an unique identity which co-responds with an universal, centralized ledger.
Ledger is updated whenever wallets transfer coins.
This is a wallet of three coins.
0 Coin <- hash <- unique key 1 Coin <- hash <- unique key 2 Coin <- hash <- unique key
This is how the system sees the wallet.
Wallet <- hash <- list of coin hash <- unique key