Multicurrency White Paper Working CopyUnmoderated Thread: https://bitcointalk.org/index.php?topic=1254683OverviewHere I describe an extension of the Bitcoin/Peercoin Proof-of-Stake protocol termed "Multicurrencies". Multicurrencies are multiple first-class currencies carried on a single block chain. The concept might be considered the antithesis of "side chains", where information for a single currency is carried on multiple chains that interact.
A first class cryptocurrency is one that is fully supported by the standard input/output transaction mechanism of the bitcoin protocol and therefore is fully transferrable. A first class cryptocurrency is also one wherein the emission characteristics for it are "hard-coded" and therefore known upon genesis of the block chain. Coins of different first class currencies can be sent simply by using addresses specific to a given currency. Encoded addresses carry the currency information in base58-check encoding. The client interprets addresses and creates transactions accordingly. Balances for each currency are tracked separately. Full multicurrency support will be available by both remote procedure call (RPC) and graphical user interface (GUI).
The currencies of a multicurrency coin can have arbitrary many-to-one staking relationships, such that currency A could mint currency B, B could mint C, and C could mint itself. Cyclic relationships are also possible, where C could mint A in the preceding example. In the first version of the multicurrency platform, the ability for a single currency to mint more than one currency (one-to-many) will not be available. However, one-to-many staking is a planned improvement to the protocol.
Additionally, the multicurrency platform will have full support for a pure Proof-of-Work system, in that all currencies can be generated by Proof-of-Work. Moreover, it is possible to have some passive currencies that are generated for a limited time only (like a premine).
Clone-FriendlinessThe multicurrency platform will be very clone-friendly in that all multicurrency information will be consolidated in a single, clearly documented header file. Other developers will be able to freely clone the technology under the same open source license as bitcoin, change some parameters in the header file, and have a fully working multicurrency blockchain with minimal coding required.
Exchange-FriendlinessThe multicurrency platform is also exchange-friendly for every currency on the chain. The only limitation is that unless they retool their existing scripts to specify currencies, exchanges will need one instance per currency running on it's own ports. Exchange setup will consist of a single extra line in the configuration file: "defaultcurrency=TICKER" where "TICKER" is the ticker symbol for the currency they wish to control with the client.
I am taking the greatest pains to ensure "sideways compatibility", so that exchanges and other third-party service providers do not need to retool their workflows. The multicurrency platform will be plug-and-play for all practical purposes, with the exception of the "defaultcurrency" setting in the conf file.
Use CasesArbitrary many-to-one staking relationships give multicurrencies several use cases that will be detailed here in the coming weeks. One of these use cases serves as the impetus for creating multicurrencies. These use cases vary slightly from those of colored coins or NXT/Counterparty type assets. Briefly, these multicurrency use cases include but are not limited to:
- ICOs that can offer a staking currency for sale while reserving the full initial amount of the working currency for business purposes.
- Coins that have a non-anonymous currency that mints a currency that can only be spent with anonymous transactions.
- Incentive/collectible coins that can stake at very high rates. These coins can be limited in number, atomic (as described below), and only activate after a given time.
- Coins that can be offered by ICO with zero inflation and therefore do not need to be staked to keep up with the money supply.
Other FeaturesThe multicurrency platform will have the following novel features, which is not an inclusive list yet.
- Full transaction immutability, including TXID immutability. Because "a signature can not sign itself", the potential for trivial non-invalidating changes to the signatures themselves are unavoidable.
- Delegated staking, such that a third party may stake coins that mint back to the spender's private key. However, delegated stakers will not be able to spend the coins they mint for a spender.
- Atomic currencies that can only be exchanged in whole units and where transaction fees are payable in a different currency.
Some of these features may not be available on first release, which is on a time line. But these features are planned for inclusion soon thereafter.
Purpose of the White PaperThe purpose of this white paper is to claim the intellectual territory of multicurrencies and to preempt ICOs based on the idea of multicurrencies alone. I have been working on the implementation of multicurrencies for several months and they will be released under the MIT open source license. Completion is expected in about 7-8 weeks. The first implementation will be for a coin that itself has a purpose beyond simply being another alt coin. Please note:
no funds will be solicited on this thread.This white paper is incomplete and will be amended and modified as needed.