About Litecoin (LTC)
Litecoin is the result of some of us who joined together on IRC in an effort to create a real alternative currency similar to Bitcoin. We wanted to make a coin that is silver to Bitcoin’s gold. Various alternative currencies have come and gone. Some brought innovation, but they all had problems.
- ixcoin – Nasakioto premined 580k coins. Seemed like a pump and dump. Competed with Bitcoin for GPU resources – Dead (~2 gh/s)
- i0coin – Basically ixcoin without the premine. Not much support was given to this coin after it was released. – Dead (~5 gh/s)
- SolidCoin – Innovative quick transaction times. Appears to have been run aground by CoinHunter, its creator, due to insecure changes and immature forum presence. – Dead, shutdown by CoinHunter
- GeistGeld – Lolcust premined 7.7 million coins. 15 second block time is probably a bit extreme. – Alive, but limping (~15 gh/s)
- Tenebrix – Lolcust premined 7.7 million coins. CPU proof of work using scrypt is very innovative. Price doing fairly well on btc-e.com. – Alive (~0.003 gh/s)
- Fairbrix – Basically Tenebrix without the premine. First launch was crippled due to bad config. Relaunch attacked initially – Doing OK now, but no exchange so far. – Alive, but limping (~0.0001 gh/s)
We wanted the best innovations of Bitcoin and these other currencies to create a coin with all of their benefits, but nearly none of their problems.
Proof of Work
We really liked Tenebrix’s Scrypt proof of work. Using Scrypt allows one to mine Litecoin while also mining Bitcoin. We humbly offer a big thanks to ArtForz for the implementation.
Litecoin will come with 150 premined coins: just the genesis block and the first 2 blocks to confirm the genesis is valid. We believe a coin needs to be released in a fair manner. Having one person (or a group) control a large amount of coins that can be used as they see fit is against the decentralized vision of Bitcoin. Yes, it is true that without a stash of premined coins, we will not be able to afford to pay for bounties, but we believe people will see the virtue of this coin, invest in it as early adopters, and will be willing to spend time creating services to make this coin better.
We were impressed by the convenience of SolidCoin’s fast transactions. Although we know that fast confirmations are not necessarily as secure as Bitcoin’s slower confirmations, they are very convenient for small merchants who don’t need transactions to be super secure. The average Litecoin block takes 2.5 minutes, one quarter of Bitcoin’s 10 minutes. So if merchants wanted to be as safe as Bitcoin, they can wait for 4 times the number of Litecoin confirmations as compared to Bitcoin. But most merchants can readily accept 1-confirmed transactions for small amounts of litecoins.
We will keep the retarget block the same as Bitcoin’s 2016, but because blocks are found 4 times faster, difficulty will retarget about every 3.5 days. The combination of fast retarget times and Scrypt proof of work (Litecoin will not compete with Bitcoin for miners) means we expect to not see the sort of problem Namecoin encountered; hashing power that leaves more suddenly than it came, causing a high difficulty slog for everyone who stayed.
Miners will generate 50 coins per block. In light of our faster blocks, to properly mimic Bitcoin’s generation trajectory, we needed to change the blocks at which coin generation is halved. Bitcoin generation is halved every 210,000 blocks. Litecoin generation will be halved every 840,000 blocks. For those of you doing the math, Litecoin is scheduled to produce roughly 4 times as many coins as Bitcoin, about 84 million litecoins.
We have come up with a plan that we believe is most fair. Some previous coins were released without Windows binaries or without source code; we consider this as unfair as it is unsafe.
We released the source code and binaries ahead of time… 3 days before launch. People had time to compile the source and run the client on their machines against the Litecoin testnet. So people were able to make sure everything was working well before the launch. We also had a poll so that people can vote for a launch time that best suits them. At the time of the launch (Oct 12 03:00 GMT), we released the genesis hash and everyone started mining at the same time. All it took was a simple change in the config file in order to mine the real coin instead of the testnet coin.
The problem with alternative currencies is that the network hashrate is likely low when the coin starts up, making an easy target for any potential 51% attacker. With a little hope, a little prayer, a lot of hype, and due to our innovative release, there was a large hashrate from minute one. We believe this deterred any attackers from targeting this chain. As expected, there was a lot of natural orphaning of blocks, due to having so many people mining on the chain at once. With block locking at every difficulty change, we were able to avoid any attacks from succeeding. (if there were any)
Litecoin Core integration/staging tree
What is Litecoin?
Litecoin is an experimental digital currency that enables instant payments to anyone, anywhere in the world. Litecoin uses peer-to-peer technology to operate with no central authority: managing transactions and issuing money are carried out collectively by the network. Litecoin Core is the name of open source software which enables the use of this currency.
For more information, as well as an immediately useable, binary version of the Litecoin Core software, see https://litecoin.org.
Litecoin Core is released under the terms of the MIT license. See COPYING for more information or see https://opensource.org/licenses/MIT.
master branch is regularly built and tested, but is not guaranteed to be
completely stable. Tags are created
regularly to indicate new official, stable release versions of Litecoin Core.
The contribution workflow is described in CONTRIBUTING.md.
The developer mailing list should be used to discuss complicated or controversial changes before working on a patch set.
Developer IRC can be found on Freenode at #litecoin-dev.
Testing and code review is the bottleneck for development; we get more pull requests than we can review and test on short notice. Please be patient and help out by testing other people's pull requests, and remember this is a security-critical project where any mistake might cost people lots of money.
Developers are strongly encouraged to write unit tests for new code, and to
submit new unit tests for old code. Unit tests can be compiled and run
(assuming they weren't disabled in configure) with:
make check. Further details on running
and extending unit tests can be found in /src/test/README.md.
There are also regression and integration tests, written
in Python, that are run automatically on the build server.
These tests can be run (if the test dependencies are installed) with:
The Travis CI system makes sure that every pull request is built for Windows, Linux, and OS X, and that unit/sanity tests are run automatically.
Manual Quality Assurance (QA) Testing
Changes should be tested by somebody other than the developer who wrote the code. This is especially important for large or high-risk changes. It is useful to add a test plan to the pull request description if testing the changes is not straightforward.
We only accept translation fixes that are submitted through Bitcoin Core's Transifex page. Translations are converted to Litecoin periodically.
Translations are periodically pulled from Transifex and merged into the git repository. See the translation process for details on how this works.
Important: We do not accept translation changes as GitHub pull requests because the next pull from Transifex would automatically overwrite them again.