Connect with us

Satoshi Nakamoto

Bitcoin minting: a critique of preceptions

But I do think that is is really important to point out that all that CPU power and electricity usage is absolutely NOT required for the task at hand.

Published

on

The following content was written by Red on August 06, 2010, 03:50:10 AM in the thread Bitcoin minting is thermodynamically perverse. All content is owned by the author of the bitcointalk.org post. (original)


Nicely written gridecon. I completely agree.

I’ve been considering posting a similar critique but you’ve laid the issue out clearly. if you don’t mind I’ll add my thoughts here.

As the minting process and the transaction recording process are one, there is really no reason to separate them. I don’t disagree with knightmb’s points at all. But I do think that is is really important to point out that all that CPU power and electricity usage is absolutely NOT required for the task at hand.

Generating blocks serves three critical but independent functions in the bitcoin system.

1. It permanently records valid transactions in a roughly chronological order.
2. It creates *consensus* among all nodes on what transactions took place and when, WITHOUT relying on a central authority. That was a hugely clever breakthrough.
3. It trickles bitcoins into circulation at a regularly scheduled rate. (roughtly 50 BTC/10 min) Also a nice motivational trick.


However, all of these required tasks could be done in a much more efficient manner.

Generally in a P2P system, if you add more nodes then the necessary machine resources needed per node decrease. (for a given usage level of the service)
However, if we add more nodes to the bitcoin network the necessary machine resources needed per node increase. This is true of CPU usage and network bandwidth.

Satoshi already pointed out that the goal of this is not to scale to millions of pure P2P nodes. But instead to have thousands of transaction checking peers each having thousands of clients. That means the goal is to create core “central authority” of peer nodes each of which is trusted by some clients, but the core peers do not necessarily need to trust each other. This is a absolutely critical design construct if the current implementation of bitcoin is expected to scale to millions of traders.

However, there are other design possibilities that could meet each of these three critical goals without exponential growth in resources utilization.

Implementing the transaction graph using a redundant distributed hash table comes to mind. This could be done with or without a core of central peers. Another possibility would be just to store the transaction graph in a SQL database and use database replication among the core peers. Either of those satisfies goal 1 and 2 using minimal system resources.

Goal 3 is implementable by simply generating a distributed shared secret, then using that shared secret as a concensus random node to send 50 BTC to.


I agree with gridecon that such an implementation would out compete the current implementation. Even if it otherwise following exactly the same external behavior and transaction validation rules.

The following content was written by gridecon on August 06, 2010, 03:53:24 AM in the thread Bitcoin minting is thermodynamically perverse. All content is owned by the author of the bitcointalk.org post. (original)


I understand that bitcoin’s utility as a currency is independent of the method of minting – that is crucial to what I’m trying to express. My claim is that the positive properties of bitcoin’s security could be implemented using a different method of minting, and that users will likely gravitate to currencies with whatever they believe are the most fair and efficient minting systems.

Maybe an even simpler way to put it is that I think that it is a huge waste of resources to generate a digital currency by doing fundamentally useless computational work. If you want to regulate currency production in this way, it should be done “parasitically” on top of useful computation, such as that done by distributed computing research projects.

Let me make an analogy that I believe is actually very close to the current truth of the matter. The current method of coin minting is similar to a currency based on photographs of burned wheat. People grow wheat, burn it, and take photos of the burned wheat to prove that it was really grown and burnt, and then use the photographs as a medium of exchange. Does that sound sensible? No, and fundamentally it is just as senseless to waste potentially useful computer cycles on calculating the hash of random data until you hit the winning number.

The following content was written by MoonShadow on August 06, 2010, 04:51:07 AM in the thread Bitcoin minting is thermodynamically perverse. All content is owned by the author of the bitcointalk.org post. (original)


I understand that bitcoin’s utility as a currency is independent of the method of minting – that is crucial to what I’m trying to express. My claim is that the positive properties of bitcoin’s security could be implemented using a different method of minting, and that users will likely gravitate to currencies with whatever they believe are the most fair and efficient minting systems.



Go for it.  In the meantime, I think that you both miss some fundamental truths.

1)  The point of the system is not to ‘mint’ coins at a high energy cost, but a high computational cost, to protect the system no matter how high Moore’s law may go. 

2)  The award of bitcoins is not ‘minting’ really anyway, it is an award by lottery for participating in the strenghtening the currency.  Those 50 bitcoins already existed from the moment that the rules were conceived and the process set into motion.  They are just distrubuted from the original owner in a systematic manner.

 The computations are a neccessary part of keeping the system strong and confidence high, and are a small price to pay when compared to the costs that we all incur from the administration of fiat currencies.  I think that it was a brilliant idea.

The following content was written by Insti on August 06, 2010, 08:30:23 AM in the thread Bitcoin minting is thermodynamically perverse. All content is owned by the author of the bitcointalk.org post. (original)


I believe that the amount of energy input required to the bitcoin economy represents a serious obstacle to its growth. I think in the long-term, transactions may be even more serious than minting in this regard, but I will for the moment discuss minting because it is more precisely bounded and defined. The idea that the value of bitcoins is in some way related to the value of the electricity required, on average, to mint a winning block is generally accepted, but the precise nature of this relationship is contentious.

I don’t accept that.
The idea that the value of a Bitcoin is in some way related to the value of the electricity required on average is a fallacy that has been widely spread by armchair economists to get-rich-quick merchants who don’t understand the system.

Quote
My contention is that both of these arguments miss the point and the real problem, which is the fundamental perversity of wasting large amounts of energy and computations in generating the winning blocks for the minting process. The minting process exists because of the necessity of actually “printing” the currency, and certain desirable properties of crypto-math for making the currency’s behavior predictable. The fact that the current minting process requires a large energy input of computational work is highly unfortunate and has the perverse consequence that bitcoin may actually be “destroying wealth” in the sense of wasting energy producing a digital object worth less than the resources invested in it.

It’s not about the minting at all.

The computation required is to maintain the integrity of the system by growing the block chain which serves as a ‘timestamp’ of transactions.
It is probably possible to make the computation required for this process less than it currently is, but it would be at the expense of disk space or bandwidth or integrity or processing power required to validate transactions, or all of the above. The current system provides a good balance of all these things.

The minting is just a side effect, and an elegant way to reward those who have contributed processing power to the integrity of the system.
There are many other threads that try to propose ‘better’ ways of rewarding these contributions, but the ‘winner takes all’ system is the one we have at the moment.

Quote
As is often pointed out, a currency does not necessarily have, or need to have, any inherent value – a medium of exchange is a useful tool and can have value purely as a consequence of social convention. The cost of production of bitcoins in electricity consumed represents a waste, a “thermodynamic burden” that the currency has to carry. Consider a hypothetical alternative digital currency called “compucoin”, which purchases cpu cycles from nodes on the network. The market value of this currency would converge very closely with the cost of electricity required to generate cpu cycles. Instead of costing cpu cycles to mint, the value of the cpu cycles the coins could be exchanged for would create a rational basis for the currency’s value and integrate it with an existing market. I imagine that alternatives to Bitcoin (many of them probably sharing a lot of Bitcoin’s source code) will inevitably emerge and Bitcoin’s current minting process makes the currency “expensive” in terms of energy input. I believe this places it at a competitive disadvantage to other currencies and can only hinder its widespread adoption and long-term value.

Good luck with implementing compucoins..

Again, it is not about the minting


The following content was written by gridecon on August 06, 2010, 09:24:47 AM in the thread Bitcoin minting is thermodynamically perverse. All content is owned by the author of the bitcointalk.org post. (original)


I understand the bitcoin is not INTENDED to be about the minting. The essence of my criticism is that a digital currency SHOULD NOT be “about the minting” but the current bitcoin system works against that goal! My argument is that the current minting system limits the utility of the currency largely because entirely too much attention is focused on “winning the block generation lottery” and the process of choosing these winners is highly inefficient and resource intensive. If potential users of the currency believe that bitcoin is simply a way for botnet herders to convert spare cpu cycles into cash, they are unlikely to participate in the emergence of the economy. The current system could easily result in the perception that bitcoin is basically being used as a vector for the indirect monetization of the theft of electricity via compromised computer systems. I assume most people interested in bitcoin understand that self-interested individuals will obviously seek to exploit opportunities like this, and the design of a popular currency has to prioritize how a prospective user will evaluate its fairness.
Continue Reading
Click to comment

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Satoshi Nakamoto

Has someone made a “buy with bitcoins” button?

I mean an image. You know a nice one that people can put on their checkout webpages.

Published

on

The following content was written by mtgox on July 21, 2010, 08:48:44 PM in the thread Has someone made a “buy with bitcoins” button?. All content is owned by the author of the bitcointalk.org post. (original)


I mean an image. You know a nice one that people can put on their checkout webpages.

The following content was written by jgarzik on July 21, 2010, 09:01:11 PM in the thread Has someone made a “buy with bitcoins” button?. All content is owned by the author of the bitcointalk.org post. (original)


More than just an image…

Even though the bitcoin network itself handles fundamental transaction processing, web shopping carts will need additional amounts of payment processing to match purchases to incoming payments, be notified when a payment is processed (currently bitcoin purchase can take multiple hours to be confirmed), though order fulfillment and completion.

Even a simple “donate” button will require some sort of payment processing gadgetry a la Paypal’s web button engine, if you want people to provide names and/or messages along with their donation.

It’s tempting to code up a button engine myself, actually…

The following content was written by mtgox on July 21, 2010, 09:14:07 PM in the thread Has someone made a “buy with bitcoins” button?. All content is owned by the author of the bitcointalk.org post. (original)


Yeah I know. I’m 90% done with the code part of it. Just seeing if someone had already made a button image before breaking out photoshop.

So wait to code yours since hopefully you can just use mine 🙂
Continue Reading

Satoshi Nakamoto

On bitcoin generation, and bitcoin organizations

Bitcoin is a currency, literally, in its infancy. The concept is, as far as I know, the first of its kind.

Published

on

The following content was written by jgarzik on February 20, 2011, 06:44:53 AM in the thread Pros and cons of using new Bitcoin addresses for each transaction?. All content is owned by the author of the bitcointalk.org post. (original)


Can someone please give me a list of the pros and cons of using new Bitcoin addresses for each transaction? It seems very inconvenient to use a new address each time.

warning, I am a newbie…liked the videos presentations, did some research…and tried it.  Bitcoin.exe on an i7 –only application—24/7 x 10 days—on generate mode.  Only successful in the gratuitous .05 BTC from faucet per computer per public ip address.  I had plans to accept Bitcoins on all my websites…hired web developers  …faced ZERO SUPPORT ANYWHERE.

Bitcoin definitely needs to grow some organizations that can offer technical advice and software support for bitcoin itself.  Most major open source projects have one or more companies doing this.  That would help with bitcoin adoption, too.

Quote
So question number ONE.  What happens to the Bitcoin if I don’t use it, save it?  I speculate it ONLY serves to increase the value of those users and optimists who are “fan boys”.  I have spent too much time…wasting…which cost me more money than I could have possibly made  in two weeks.

Bitcoin is a currency, literally, in its infancy.  The concept (distributed notary service with digital signatures) is, as far as I know, the first of its kind.  It is still being “bootstrapped,” meaning that bitcoin does not have a self-supporting economy — which must, by its nature, encompass mundane things like buying gasoline with BTC, paying rent or mortgage with BTC, buying groceries with BTC.

So, what can you do with the bitcoins you have right now?  Not a lot, if you ignore bootstrapping services (services like currency exchanges or bitcointo.com).  Mostly software services like web hosting, and an odd assortment of tangible goods.

But it seems like most folks in the bitcoin community recognize that we just started construction of a very interesting and unique experiment in currency.  Any endeavour is, unfortunately, very high risk from an investment standpoint.  It might fail for dozens of reasons…  but wouldn’t be fun and interesting if it succeeded?

Quote
Question Number Two.  My PC’s were set up by my SYSADMIN’s.  After a few bouts of “actvity”….I ended up with 100% CPU on all cores…and the “connect” prompt  says unconnected.  Thats a lot of power and CPU cycles for Nothing…a big fat waste of time.  You want me to be impressed so we can get the concept moving?  Put up simple to understand “NOOB” isms…so that morons like myself…can learn HOW to connect.  If no connect…why the 100% CPU on all cores and NOTHING going on?  FOR DAYS?  I don’t have time for games.  When you guys are serious…I’ll be back.   I love all the concepts supporting it…but I will not GIVE AWAY valuable product from my websites for coins that have no value TO ME.

Step 1: Turn off “Generate coins” option.  It is a waste of time and electricity.

Step 2: Wait for all the blocks to download.  As of this writing, there are 109245 of them.

Step 3: Don’t panic, and read the forums.  If you can post specific problems you are seeing after following steps #1 and #2, you can get answers.

Step 4: Hire better SYSADMIN’s.  They should be able to answer these basic questions and offer basic support, or not install software that neither you or they understand.


Continue Reading

Satoshi Nakamoto

How many bitcoin addresses exist?

The larger the hash160 is, the more base58 characters required to represent its address.

Published

on

The following content was written by davux on November 10, 2010, 10:21:15 PM in the thread Pros and cons of using new Bitcoin addresses for each transaction?. All content is owned by the author of the bitcointalk.org post. (original)


It’s not. It’s 62^33, which is slightly over 10^59.
How did you arrive to this result?

An address has 33 significant characters, each of which has 62 possible values (10 numbers, 26 uppercase letters, 26 lowercase).
So you have 62 * 62 * … * 62 possibilities (33 times).

Actually, now that I remember, it’s 58 (uppercase i and lowercase L are not included because they look too similar, same for zero and uppercase o).

So there are 58^33 possibles values, which is slightly more than 10^58. Still high, but not quite as high as 10^92.

The following content was written by theymos on November 10, 2010, 10:40:57 PM in the thread Pros and cons of using new Bitcoin addresses for each transaction?. All content is owned by the author of the bitcointalk.org post. (original)


An address has 33 significant characters, each of which has 62 possible values (10 numbers, 26 uppercase letters, 26 lowercase).
So you have 62 * 62 * … * 62 possibilities (33 times).

Actually, now that I remember, it’s 58 (uppercase i and lowercase L are not included because they look too similar, same for zero and uppercase o).

So there are 58^33 possibles values, which is slightly more than 10^58. Still high, but not quite as high as 10^92.

As ByteCoin already explained earlier in the topic, an address contains a non-data check code and version number. There are actually “only” 160 bits of randomness in each address: 2^160, or 1.46×10^48 possible addresses.

Addresses can also be 25-34 characters in length, depending on how numerically large the hash160+check code is (the larger it is, the more base58 characters required).
Continue Reading

Trending