Simplicity of The Canon Project
Canon is a multi faceted project which aims to provide:
- A stable cryptographic currency network which balances the requirements of the users.
- An ambitious initiative of creating an open source canon of approach.
This short paper provides the details of the software, it’s configuration and the rationale of design decisions.
Canon will be kept as stable as possible, but at the same time we encourage natural growth and wider adoption.
- Stable Client: Reference implementation created by merging the latest stable branches of prominent coins. Fusing Bitcoin with proven features of other alternative coins to add utility as required and when proven by succesful implementation.
- Stable Network: Block Chain Configuration designed to incentivize fair mining by those who wish to support the network over a longer period of time.
- Stable Growth: A very little premine, no instamine, no ICO, no artificial inflation, just natural growth. Canon isn’t about short term profit, any value given to the Canon will be a reflection of it’s adoption.
- Stable Development: To provide long term active development a donation based foundation fund which aims to collect a total of 7% CNN will been created.
- Ease of Use: Practical changes to user experience, combined with the traditional approach of banks. Additional enhancements to get practical data in and out of the coin interface without making it too complicated.
- No unnecessary bloat: We do not aim to add feature after feature, but rather to refine, consolidate, and simplify each area of existing functionalities. New areas of functionality and UI will be built upon the API rather than baked in to the software.
- Foster competition: By building everything on top of the API and releasing it to the public domain, any individual or company can then offer their own alternative interoperable versions of each module. In taking this approach we hope to encourage innovation.
- Backwards Compatibility: In with the new, in with the old. A wide array of existing applications, tooling, and integrations already exist for bitcoin and alt coins, we will keep full backwards compatibility by having two API versions.
- Refining: Many alternative crypto currencies feature new innovations, whilst many are marketing hype or unneeded, some come from genuine user requirements. As solutions come to the fore they will either be refined and integrated in to the Canon project, or where multiple viable offerings exist the intersection will be well defined and then implemented.
- Maturing: After features have matured in other alternative currencies, we will implement them in Canon, initially on the test network, then in a public beta, then in a new major release. We have no need to add things quickly, it’s more important that they work as expected and are as refined as possible, with all justifications for adding having been qualified and agreed by the community of users.
- Innovating: With the exception of our usability focused innovations around the API, we do not aim to pointlessly innovate. We aim to refine or standardize useful innovations and bring them to you from the alternative coin community as mature offerings.
Block Chain Parameters
Balanced and Reasonable. Longer block times can lead to user frustration, shorter block times can lead to wasted mining effort and network bloat by the increased occurrence of orphaned blocks.
This also mitigates advantages miners may gain over one another when network latency is taken in to account. If we consider that a miner may immediately start mining the subsequent block locally, whilst other miners must wait for the block to be received, processed, and accepted, before they can look for the next; then a network latency of 1 or 2 seconds can be a significant % advantage when block times are 60 seconds or less.
Finally, this has a notable effect on Network Health, Supply, and Distribution
Block Maturity & Difficulty
A relatively slow block maturity ensures that anybody mining Canon adheres to a contract that they will not spend (or “dump”) the reward within 24 hours. This should encourage a more stable coin, and give the advantage to miners who wish to the support the network and reap fair profit.
We match the difficulty to the block maturity to assure that no miner can access generated block rewards until after the difficulty has changed, this removes much of the incentive from multipools and high powered mining factories to hop on to and then leave the network. Additionally, an unhealthy network tends to negatively affect price, further removing the incentive.
Block Reward & Currency Supply
countblock < 25001 = 50 CNN
countblock < 75001 = 25 CNN
countblock < 100001 = 12.5 CNN
countblock < 150001 = 5 CNN
countblock < 250001 = 2.5 CNN
countblock < 450001 = 1 CNN
countblock > 900001 = 0.5 CNN
Total Supply: 123 000 000.
Halving Rationale: Rapid block halving creates early bird incentives, the quicker the reward halves the more unstable the coin and unfair the distribution, and the more likely it will be considered and act like a project/currency with no longevity.
Slow block halving reduces urgency to mine and allows more natural growth and adoption. There is no unfair benefit to mining on day 1 as opposed to day 400.
Interim half steps have been introduced to limit the impact of the block reward reduction events, whilst still ensuring there is an event which occurs.
Block Reward Rationale: For a currency to be viable, a single unit must be able to be perceived as having value, as such a large amount of currency entering the network daily can only be detrimental over time. Bitcoin achieved a steady flow of new coins on a daily basis, and that is a model we hope to improve on. We suggest that humans tend to prefer whole numbers, and feel more comfortable working with smaller integers on a daily basis.
Proof Of Work
Scrypt. A well balanced proof of work algorithm which is widely supported and for which hardware support is maturing. Large investment has been made by the mining community, and continues to be made. Whilst there are benefits to both Proof of Stake and multiple algorithm approaches, we feel that Scrypt PoW and the balanced coin release schedule which can be achieved with long term block rewards is the most suitable for this long term project. With an abundance of mining hardware available already it should also ensure a healthy network from the start.
- Lifecycle: Following on from the RI, work will immediately begin on specifying and coding the new API, this API will remain on the testnet for some time until a few different projects have utilized the API in order to flesh out any bugs. Once deemed safe it will be added to the public beta client versions and then mature to the following major release. Each feature which affects functionality or notably changes user experience will follow this release cycle.
- Public Domain: All code, specifications, and notes will be released in the public domain, using the unlicense or creative commons where applicable. Anybody is free to use anything created in this project for any purpose, including competition.
- Team: Initially there is one core developer, hopefully supported by the community, with others coming on board as the project grows.
- Project Target: To become a daily use currency that runs parallel to Bitcoin and the alternative currencies, identifying and maturing candidate features before rolling them out to an extensive user base on a quicker timeline.