Author

Topic: bitcoin is the first ever trustworthy time measurement device (Read 4143 times)

legendary
Activity: 1288
Merit: 1076
In a nutshell, when a newbie asks "What is all this computing power used for?",  we should answer:  "To provide proof of time".

Except that's misleading as well.  The computing power does not provide the proof of time, the block order does.  The computer power only provides security against malicious reordering of previously accepted transactions.

Bitcoin doesn't provide "undisputable chronological order", because it can easily post transactions in a different sequence than they chronologically took place.  It does so by design anytime it recovers from an accidental fork in the block chain.


"Undisputable" might be misleading.  "Provable" is better, maybe.


Except that's misleading as well.  The computing power does not provide the proof of time, the block order does.  The computer power only provides security against malicious reordering of previously accepted transactions.

Yes, computing power is not time, but it's pretty close, as computing things takes some time.   Time is made of sequences of events.  Trying to reorder previous transactions is therefore trying to mess up with time records.  That's the whole point.  Computing power provides proof of time, and thus prevent reordering transaction orders.

Sorry guys, this thread annoys me.  I lock it for now.
legendary
Activity: 1708
Merit: 1007
In a nutshell, when a newbie asks "What is all this computing power used for?",  we should answer:  "To provide proof of time".

Except that's misleading as well.  The computing power does not provide the proof of time, the block order does.  The computer power only provides security against malicious reordering of previously accepted transactions.
full member
Activity: 182
Merit: 100
Distributed databases existed before bitcoin.  But AFAIK they don't offer robust ways to handle concurrent entries, nor a consistent way to deciide which entry was created first.  For most databases this functionnality is not critic anyway, that's why most distributed databases work just fine without it.

You probably haven't worked with databases much.

True.  I won't deny it.  Consistency or robustness may not be the most accurate words.  I don't know.

All I know is that if a distributed database was capable of offering undisputable chronological order between concurrent entries, we wouldn't need bitcoin in the first place.  We would just use such a distributed database to store chained signed transactions, without using any single proof of work.


A real database application has a lot more data dependencies to worry about than does this address have this amount as of the previous block.  Most application's can't define their data dependencies in one sentence.  The other big difference with bitcoin is there is no way to administrator the bitcoin database, and that's a feature.
hero member
Activity: 481
Merit: 529
A lot of bitcoin newbies don't understand what is the CPU used for in the bitcoin network.   They think bitcoins value is backed by electric energy.  It is not.

{snip}

In a nutshell, when a newbie asks "What is all this computing power used for?",  we should answer:  "To provide proof of time".

As I see it, the product of the computations is a "supersignature" on the block chain.  A block solution carries the hashing community's endorsement of the transaction history and attests to its completeness, thus protecting receivers against double spends.

I am thinking of replacing the reply at https://en.bitcoin.it/wiki/Myths#Bitcoin_mining_is_a_waste_of_energy_and_harmful_for_ecology with the following text.  I would appreciate expert comment:

The electricity spent in hashing is not wasted. It creates a product of value to the Bitcoin economy. The product is a supersignature on the complete list of transactions to date (the Block chain). This supersignature attesting to the chain's completeness is Bitcoin's defense against double spending.

Many sources of energy vary in their availability in ways that do not match the variations in demand. The law of supply and demand should require Bitcoin to soak up a lot of energy that is currently "wasted" before it makes a big dent in the otherwise usable energy supply. [Perhaps cite estimates of the break-even point for mining profitability that imply near-zero-cost electricity.]

Cheers,
John
vip
Activity: 1386
Merit: 1136
The Casascius 1oz 10BTC Silver Round (w/ Gold B)
All I know is that if a distributed database was capable of offering undisputable chronological order between concurrent entries, we wouldn't need bitcoin in the first place.  We would just use such a distributed database to store chained signed transactions, without using any single proof of work.


The novelty added by Satoshi wasn't that he invented a distributed database, but that he designed one that, in addition to the ACID properties sought after, would have no central point of failure and would be resilient all sorts of attack due to its base upon crypto.  It is not as though there is such thing as "a distributed database" we could just "use" (i.e. "distributed Oracle or MSSQL in a box")

Bitcoin doesn't provide "undisputable chronological order", because it can easily post transactions in a different sequence than they chronologically took place.  It does so by design anytime it recovers from an accidental fork in the block chain.

A distributed database seeking "chronological order" among competing concurrent entries endeavors to ensure the first one posts first, on the other hand, Bitcoin settles conflicting entries (e.g. simultaneous double spends) literally at random, and orders the transactions pretty much the same way (based on the view of the miner that mined the block, who is essentially selected at random).  What Bitcoin provides is at least some sequence that is hardened (the D in ACID stands for Durability) and can be deemed correct, and nothing more.  This sequence isn't chronologically anything other than a reasonable approximation.
legendary
Activity: 1288
Merit: 1076
Distributed databases existed before bitcoin.  But AFAIK they don't offer robust ways to handle concurrent entries, nor a consistent way to deciide which entry was created first.  For most databases this functionnality is not critic anyway, that's why most distributed databases work just fine without it.

You probably haven't worked with databases much.

True.  I won't deny it.  Consistency or robustness may not be the most accurate words.  I don't know.

All I know is that if a distributed database was capable of offering undisputable chronological order between concurrent entries, we wouldn't need bitcoin in the first place.  We would just use such a distributed database to store chained signed transactions, without using any single proof of work.
vip
Activity: 1386
Merit: 1136
The Casascius 1oz 10BTC Silver Round (w/ Gold B)
Distributed databases existed before bitcoin.  But AFAIK they don't offer robust ways to handle concurrent entries, nor a consistent way to deciide which entry was created first.  For most databases this functionnality is not critic anyway, that's why most distributed databases work just fine without it.

You probably haven't worked with databases much.  A distributed database lacking consistency?  Consistency is the C in ACID, and ACID is a database fundamental.

A prominent example of a functioning distributed database is Microsoft's Active Directory.  If Satoshi invented consistency, then perhaps we should let Bill Gates or Steve Ballmer know that if someone adds or deletes the same user on two faraway nodes on an Active Directory tree at the same time, that their whole database goes to pot, and that Satoshi has the answer on how to fix it.  Grin
legendary
Activity: 1288
Merit: 1076
So a distributed sequence server?  Order server?

Or even just a "distributed database" - I introduced the term to Bitcoin's Wikipedia article.  If you consider that a decent database implies ACID (atomicity, consistency, isolation, durability), this term is somewhat already inclusive.  The sequence of transactions just happens to be what the database contains.

It's hard to call it a "server" of any kind:  there is no in-built functionality for asking the Bitcoin network the time-of-day, so it's not what is well known as a "timestamp server".  There's no real functionality for asking the network really anything, so it's hardly a "server" of any kind.  The only fundamental "services" it offers is the ability to query for data, and to submit new records for inclusion, which makes it quack like a database to me.

Distributed databases existed before bitcoin.  But AFAIK they don't offer robust ways to handle concurrent entries, nor a consistent way to deciide which entry was created first.  For most databases this functionnality is not critic anyway, that's why most distributed databases work just fine without it.

With a distributed database that is supposed to handle data associated to some economic value, such a functionnality is critic.  When concurrent entries occurs, there HAS to be a way to say, without any doubt of possibility of dispute, that one of them occured before the other.

In the bitcoin network, once a node signs a transaction, he needs to prove that this transaction occured after all the previous transactions it knows about.  This history of transactions is "the past" for this node, and adding a proof-of-work at the end of a chain of previous proofs-of-work is what satoshi called the "timestamp".   Miners provide this timestamping service and that's what they get their reward for.
vip
Activity: 1386
Merit: 1136
The Casascius 1oz 10BTC Silver Round (w/ Gold B)
So a distributed sequence server?  Order server?

Or even just a "distributed database" - I introduced the term to Bitcoin's Wikipedia article.  If you consider that a decent database implies ACID (atomicity, consistency, isolation, durability), this term is somewhat already inclusive.  The sequence of transactions just happens to be what the database contains.

It's hard to call it a "server" of any kind:  there is no in-built functionality for asking the Bitcoin network the time-of-day, so it's not what is well known as a "timestamp server".  There's no real functionality for asking the network really anything, so it's hardly a "server" of any kind.  The only fundamental "services" it offers is the ability to query for data, and to submit new records for inclusion, which makes it quack like a database to me.
legendary
Activity: 1708
Merit: 1007
So a distributed sequence server?  Order server?
vip
Activity: 1386
Merit: 1136
The Casascius 1oz 10BTC Silver Round (w/ Gold B)
I loathe the use of the term "timestamp server" despite Satoshi's use of it, because this term already has a meaning in the computing world: something that issues time stamps.  A timestamp server means to the average computer engineer a server that provides synchronized time (e.g. NTP) and which potentially signs it with public key cryptography (e.g. RFC 3161).

Bitcoin transactions aren't time stamped other than in a rough manner that is verified only for rough accuracy.  To call Bitcoin a timestamp server would be tantamount to using the term "GPS" to describe a compass and pocket watch - all of which could be used to roughly determine what country you're in based on the apparent position of the sun and the time of day, but nothing further.

Blocks are timestamped, but that says nothing of the transactions, which could be several days old, or which could have been grafted in from an orphan chain.  Bitcoin's block chain function would be better described as something that imposes a sequence on all the transactions and then hardens it against reversal.  The block chain asserts sequence, not time.

sr. member
Activity: 294
Merit: 273
Indeed this is a very good point. If we could have a decentralized time-stamping service, the problem of double-spending would be resolved, since only the first time-stamped transaction will be considered valid, and any subsequent attempts to respend coins will be rejected by the network.

You just described exactly how and why BitCoin works.
full member
Activity: 136
Merit: 100
Indeed this is a very good point. If we could have a decentralized time-stamping service, the problem of double-spending would be resolved, since only the first time-stamped transaction will be considered valid, and any subsequent attempts to respend coins will be rejected by the network.

full member
Activity: 140
Merit: 100
Interesting side-effect: if a distributed timestamp system is found to be generally useful, difficulty could indeed drive price---the price of a bitcoin will be supported by the average willingness to pay for the security of such a system. (If bitcoins weren't honored, the good selfish people would stop processing transactions, and the bad selfish people would eventually be able to damage the block chain.

This is actually a compelling argument for extending the use of non-standard transactions---specifically for time-sensitive matters of public record, like academic priority or new laws. The more generally useful the blockchain is, the better.
sr. member
Activity: 294
Merit: 273
An excellent point.  I aim to write an article on this sometime.  If I had to sum up what BitCoin really is in one sentence, I would say:

BitCoin solves the problem of how to have a widely used monetary unit without trusting anyone, by implementing a distributed proof-of-time server.
Better work on that somewhat. Anyone who you tell that to is going to be totally confused as to what a time server has to do with a monetary unit, and if you don't have time to elaborate you've lost them.

There's no "them".  It's not a pitch.  It's just a factual description of particular interest to the unique few who understand what it means.  When I'm evangelizing bitcoin I talk about digital cash, email, and ponies.  Sometimes puppies.  But mostly ponies.
legendary
Activity: 1288
Merit: 1076
BitCoin solves the problem of how to have a widely used monetary unit without trusting anyone, by implementing a distributed proof-of-time server.
Better work on that somewhat. Anyone who you tell that to is going to be totally confused as to what a time server has to do with a monetary unit, and if you don't have time to elaborate you've lost them.

Sure.  I just think this distributed timestamp network is a cool side effect.
member
Activity: 98
Merit: 20
An excellent point.  I aim to write an article on this sometime.  If I had to sum up what BitCoin really is in one sentence, I would say:

BitCoin solves the problem of how to have a widely used monetary unit without trusting anyone, by implementing a distributed proof-of-time server.
Better work on that somewhat. Anyone who you tell that to is going to be totally confused as to what a time server has to do with a monetary unit, and if you don't have time to elaborate you've lost them.
sr. member
Activity: 294
Merit: 273
An excellent point.  I aim to write an article on this sometime.  If I had to sum up what BitCoin really is in one sentence, I would say:

BitCoin solves the problem of how to have a widely used monetary unit without trusting anyone, by implementing a distributed proof-of-time server.
legendary
Activity: 1288
Merit: 1076
A lot of bitcoin newbies don't understand what is the CPU used for in the bitcoin network.   They think bitcoins value is backed by electric energy.  It is not.


CPU is used to implement what Satoshi called a "peer-to-peer distributed timestamp server".

In any paiement system, there has to be a way to prove that some transaction occured before an other one.  There has to be some time measurement device.

A simple clock is an efficient time measurement device.  But it is not trustworthy.  Anyone can modify it and set it to 3:50AM instead of 4:00AM for instance.

A decentralised time measurement device must not just MEASURE time, it must PROVE it.

CPU power in bitcoin is used to provide proof-of-work, but the real purpose is to provide proof-of-time.



Bitcoin is not as accurate as a clock.  Not even remotely.   But it is much more trustworthy.



In a nutshell, when a newbie asks "What is all this computing power used for?",  we should answer:  "To provide proof of time".
Jump to: