<p>This seems kind of pointless. Bitcoin makes a lot of design sacrifices and tradeoffs to support decentralized mining and an initial distribution that can't be gamed with no need for a central authority. It sounds like you just want balances maintained by a central authority.</p>

CC BY-SA 3.0
2014-04-22T22:54:32.603Z
2014-04-22T22:54:32.603Z
David Schwartz
<p>You first need to understand some concepts on how Bitcoin and its descendants work.</p>

<ul>
<li><p>As of now, <a href="https://github.com/bitcoin/bitcoin/tree/0.9.1" rel="nofollow">Bitcoin 0.9.1</a> is the latest <strong>stable</strong> version. For newest source-code with latest changes by the core developers (updated almost daily!), you can connect to the repository and download a snapshot from the <a href="https://github.com/bitcoin/bitcoin" rel="nofollow">master development branch</a>. To understand the difference, I recommend reading <a href="http://svnbook.red-bean.com/" rel="nofollow">this book</a> or <a href="http://www.ericsink.com/vcbe/" rel="nofollow">this one</a>.</p></li>
<li><p>You do can premine (mining coins before announcing the software to the public), but it's more efficient to insta-mine: configure the altcoin so that first mined blocks yield an insanely high number of coins and then mining reward drops.</p>

<p>You can tweak a lot of parameters in an alt-coin: target block generation time, reward in coins per block, how much and when will such reward fall down (if ever), final total amount of coins (some coins don't have a hard limit), etc. Nothing stops you from setting a hard limit on coins, setting the genesis block (the very first one) to generate all the coins that will ever exist and the coin reward for all subsequent blocks to zero.</p></li>
<li><p>Network difficulty is set by the network so as to keep the average time between blocks as close to the pre-defined one as possible. It cannot be directly configured when designing the coin, much less be fixed, and will never be zero. Difficulty should be free to go up when a powerful miner enters and down when only a few miners are working.</p></li>
<li><p>You're never 100% sure your coins are really yours, you get degrees of certainty. The more confirmations you get, the more likely you'll not fall for a <a href="https://en.bitcoin.it/wiki/Double-spending" rel="nofollow">double-spend attack</a>. Nobody forces you to wait for 1, 10, or 100 confirmations, you cannot limit that number in any way. You <em>do</em> can change the number of blocks for a newly-minted coin to "mature" and be spendable - but since you want all your coins to be premined, makes no sense in this context.</p></li>
<li><p>There's no "wallet activation". You never know, from the trillions of possible addresses, which ones already have a public/private key until their owners send coins to/from then. And no way to know until then. The closest I can think of is how Nxtcoin works: you must send at least one coin from a newly created wallet to mark its address as yours.</p></li>
</ul>

<p>Have a look at that coin, <a href="http://nextcoin.org/" rel="nofollow">NXT</a>. It's not a Bitcoin descendant and has a number of the properties you seem to want.</p>

CC BY-SA 3.0
2014-04-23T05:40:23.883Z
2014-04-23T05:40:23.883Z
Joe Pineda
<p>In creating a new SHA-256 based coin, I have a few basic questions that I hope someone can offer some help with (I do not have development background):</p>

<ul>
<li>Is bitcoin-0.6.3-linux.tar the latest and newest source available? Is this updated on a regular basis?</li>
<li>Can the following modifications be done to the code (a simple yes/no answer would be great):
<ul>
<li>All coins are pre-mined.</li>
<li>All mining is done by only one central point, not the general public.</li>
<li>To accomplish above, keep network difficulty at zero or less than one, and never changes.</li>
<li>To accomplish above, limit number of confirmations required for transactions to one or two only?</li>
<li>Automatic deposit of a changeable amount of coins (after a changeable mandatory waiting period) in every new wallet activated.</li>
</ul></li>
</ul>

<p>Can these changes be implemented, and if so, how?</p>

CC BY-SA 3.0
2014-04-23T15:28:27.810Z
Primarily opinion based because difficulty in these terms is relative.
KJ O
CC BY-SA 3.0
2014-04-24T01:05:57.137Z
@Jacob Torba: I made the question more objective by editing "how hard" to "how," and wonder if it can be reopened in its current form.
Tom Au
CC BY-SA 3.0
2014-04-24T04:16:59.130Z
@TomAu I'd say that's really broad for a question. Someone would have to write pages on this and spend hours putting together an answer, not to mention multiple possibilities to answer with.
John T
<wallet><altcoin>
How is it possible to modify bitcoin source to change behavior of a newly-created altcoin?
user15405
# How is it possible to modify bitcoin source to change behavior of a newly-created altcoin?

(Asked by: username_0 on 2014-04-22)

In creating a new SHA-256 based coin, I have a few basic questions that I hope someone can offer some help with (I do not have development background):

* Is bitcoin-0.6.3-linux.tar the latest and newest source available? Is this updated on a regular basis?
* Can the following modifications be done to the code (a simple yes/no answer would be great):
  + All coins are pre-mined.
  + All mining is done by only one central point, not the general public.
  + To accomplish above, keep network difficulty at zero or less than one, and never changes.
  + To accomplish above, limit number of confirmations required for transactions to one or two only?
  + Automatic deposit of a changeable amount of coins (after a changeable mandatory waiting period) in every new wallet activated.

Can these changes be implemented, and if so, how?

**Tags:** wallet, altcoin

> **Comments:**
> **username_1**: Primarily opinion based because difficulty in these terms is relative.  
> **username_2**: @Jacob Torba: I made the question more objective by editing "how hard" to "how," and wonder if it can be reopened in its current form.  
> **username_3**: @username_2 I'd say that's really broad for a question. Someone would have to write pages on this and spend hours putting together an answer, not to mention multiple possibilities to answer with.  

---

## 2 answers

### Answer by username_4 on 2014-04-22. Score: 3

This seems kind of pointless. Bitcoin makes a lot of design sacrifices and tradeoffs to support decentralized mining and an initial distribution that can't be gamed with no need for a central authority. It sounds like you just want balances maintained by a central authority.


---

### Answer by username_5 on 2014-04-23. Score: 1

You first need to understand some concepts on how Bitcoin and its descendants work.

* As of now, [Bitcoin 0.9.1](https://github.com/bitcoin/bitcoin/tree/0.9.1) is the latest **stable** version. For newest source-code with latest changes by the core developers (updated almost daily!), you can connect to the repository and download a snapshot from the [master development branch](https://github.com/bitcoin/bitcoin). To understand the difference, I recommend reading [this book](http://svnbook.red-bean.com/) or [this one](http://www.ericsink.com/vcbe/).
* You do can premine (mining coins before announcing the software to the public), but it's more efficient to insta-mine: configure the altcoin so that first mined blocks yield an insanely high number of coins and then mining reward drops.

  You can tweak a lot of parameters in an alt-coin: target block generation time, reward in coins per block, how much and when will such reward fall down (if ever), final total amount of coins (some coins don't have a hard limit), etc. Nothing stops you from setting a hard limit on coins, setting the genesis block (the very first one) to generate all the coins that will ever exist and the coin reward for all subsequent blocks to zero.
* Network difficulty is set by the network so as to keep the average time between blocks as close to the pre-defined one as possible. It cannot be directly configured when designing the coin, much less be fixed, and will never be zero. Difficulty should be free to go up when a powerful miner enters and down when only a few miners are working.
* You're never 100% sure your coins are really yours, you get degrees of certainty. The more confirmations you get, the more likely you'll not fall for a [double-spend attack](https://en.bitcoin.it/wiki/Double-spending). Nobody forces you to wait for 1, 10, or 100 confirmations, you cannot limit that number in any way. You *do* can change the number of blocks for a newly-minted coin to "mature" and be spendable - but since you want all your coins to be premined, makes no sense in this context.
* There's no "wallet activation". You never know, from the trillions of possible addresses, which ones already have a public/private key until their owners send coins to/from then. And no way to know until then. The closest I can think of is how Nxtcoin works: you must send at least one coin from a newly created wallet to mark its address as yours.

Have a look at that coin, [NXT](http://nextcoin.org/). It's not a Bitcoin descendant and has a number of the properties you seem to want.


---

