Bitcoin Forum
June 23, 2024, 01:48:07 AM *
News: Voting for pizza day contest
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: integrity of the system  (Read 627 times)
pringesgood (OP)
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
January 02, 2013, 11:50:33 PM
 #1

where is this 'bitcoin system' stored?

in every individual's computer?  ( p2p network..)

what if there's a malicious version of this system and a large population is using this malicious version of the bitcoin system, would't that damage the system?



ok so lets say there's a fail safe that all individual computer routinely checks with the 'original system', then what if that 'original was tampered with' ?
FreeMoney
Legendary
*
Offline Offline

Activity: 1246
Merit: 1015


Strength in numbers


View Profile WWW
January 02, 2013, 11:59:34 PM
 #2

Really briefly there are two important parts, the blockchain and the rules (protocol)

The blockchain (currently) contains every bitcoin transaction.

Every full node has a copy of the blockchain, all you have to do to be a full node is run bitcoin-qt or similar and wait for download (from peers) and processing/checking the data they give you.

The rules are essentially enforced by ostracism, if you try to do something like spend money you don't have everyone else will just ignore you. If anyone is willing to play along, then they'll just be ignored as well.

Play Bitcoin Poker at sealswithclubs.eu. We're active and open to everyone.
sounds
Full Member
***
Offline Offline

Activity: 140
Merit: 100

1221iZanNi5igK7oAA7AWmYjpsyjsRbLLZ


View Profile
January 03, 2013, 12:19:33 AM
 #3

FreeMoney's explanation is really good.

One thing that sometimes gets mentioned is a "51% attack," that is, if 51% of all miners suddenly decided to corrupt the bitcoin system, then the rules (protocol) would get derailed by them.
RyNinDaCleM
Legendary
*
Offline Offline

Activity: 2408
Merit: 1009


Legen -wait for it- dary


View Profile
January 03, 2013, 01:07:49 AM
 #4

FreeMoney's explanation is really good.

One thing that sometimes gets mentioned is a "51% attack," that is, if 51% of all miners suddenly decided to corrupt the bitcoin system, then the rules (protocol) would get derailed by them.

Or if one person has 51% of the hashrate, he can then do the same, though very unlikely at this point! It would cost millions of dollars to pull it off between Hardware, electricity, development of a custom client, time... Not really worth it yet!

Foxpup
Legendary
*
Offline Offline

Activity: 4396
Merit: 3062


Vile Vixen and Miss Bitcointalk 2021-2023


View Profile
January 03, 2013, 01:58:03 AM
 #5

Transactions are stored in blocks, which are linked together in a structure called the blockchain. The blockchain is stored on everyone's computer. To prevent the blockchain from being modified, Bitcoin uses a proof-of-work system (mining). Each block requires a certain amount of computational to produce it, and it is impossible to produce a modified block without redoing that computational work. Furthermore, since each block builds on the one that came before it in the chain, modifying one block causes all the blocks that came after it to become invalid (since they're built on a block that no longer exists), so you have to redo the work for all those blocks, too.

When confronted with two conflicting blockchains, the software will accept whichever one required the most work to produce (and is not otherwise invalid, see below). In order to produce a malicious blockchain that will be accepted by the network, you have to produce malicious blocks faster than everyone else is producing good blocks (since while you're working on your malicious chain, everyone else is blissfully ignoring you and adding blocks to the good chain, forcing you to work even harder in order to keep up). To only way to do this is to have more processing power than the rest of the network combined (the 51% attack). Otherwise all your efforts will be wasted.

Also note that even if you do have this much processing power, you're still limited in what you can do with it, since proof-of-work is not the only thing that determines if a block is valid. A block which breaks the rules of Bitcoin will never be accepted (and nor will any blockchain that includes such blocks), regardless of how much work was involved. You can't create bitcoins out of thin air. You can't spend other people's coins (they're protected by public-key cryptography). Basically the only things you can do are reverse recent transactions (and, in case of your own coins only, spend those coins elsewhere to prevent the transaction being un-reversed later), and prevent other people's transactions from being confirmed.

Will pretend to do unspeakable things (while actually eating a taco) for bitcoins: 1K6d1EviQKX3SVKjPYmJGyWBb1avbmCFM4
I am not on the scammers' paradise known as Telegram! Do not believe anyone claiming to be me off-forum without a signed message from the above address! Accept no excuses and make no exceptions!
JoelKatz
Legendary
*
Offline Offline

Activity: 1596
Merit: 1012


Democracy is vulnerable to a 51% attack.


View Profile WWW
January 03, 2013, 02:09:11 AM
Last edit: January 03, 2013, 02:23:27 AM by JoelKatz
 #6

what if there's a malicious version of this system and a large population is using this malicious version of the bitcoin system, would't that damage the system?
If lots of people want to run a program that tells them they have a million bitcoins, more power to them. It won't hurt anyone who isn't running such a program.

Quote
ok so lets say there's a fail safe that all individual computer routinely checks with the 'original system', then what if that 'original was tampered with' ?
Unlike most other systems which determine what data is valid by who holds it or where it is held, Bitcoin has a set of objective rules for determining what data "wins" that looks only at the content of that data. So introducing bogus or nonsense data into the system does no harm. If it wins by the rules, then it's valid and not bogus or nonsense. If it loses by the rules, then it will be ignored.

If I create some chunk of data that says I have a million bitcoins, one of two things will be the case:

1) By the rules, this data is valid. In this case, I actually *do* have a million bitcoins because that's what it means to have a million bitcoins.

2) By the rules, this data is invalid. In which case, everyone will ignore this data because it's invalid. It doesn't matter who I send it to or where it's stored.

Bitcoin does *not* rely on any central authority of what is valid and what is invalid. Data is validated by objective rules that look only at the content of that data. The only exception to this is blockchain checkpoints.

The Satoshi client enforces all these rules. If sent data that doesn't comply with the rules, the client ignores it. If sent data that does comply with the rules, it accepts it. It isn't reliant on trusting some authority to tell it what data is valid or invalid.

The two vulnerabilities the system has in this area are the 51% attack (where more than half the computing power conspires to undo a transaction) and the Sybil attack (where someone cuts you off entirely from any source of data).


I am an employee of Ripple. Follow me on Twitter @JoelKatz
1Joe1Katzci1rFcsr9HH7SLuHVnDy2aihZ BM-NBM3FRExVJSJJamV9ccgyWvQfratUHgN
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
January 03, 2013, 02:15:40 PM
 #7

FreeMoney's explanation is really good.

One thing that sometimes gets mentioned is a "51% attack," that is, if 51% of all miners suddenly decided to corrupt the bitcoin system, then the rules (protocol) would get derailed by them.

Well not exactly.  With 51% of hashing power an entity has two large attacks but they can't change the rules.

a) The entity could prevent new transactions (create all empty blocks, and reject blocks from the 49%).
b) The entity could double spend transaction it created (spend coin X to address A, then recreate the block and spend it to address B)

Anything outside of that would be seen as invalid by existing nodes even if the entity had 100.0% of hashing power.

To help dispell this myth with 51% you can't:
a) change the minting rate
b) control the coins of anyone else (steal, delete, transfer them)
c) create coins out of thin air
d) modify the blockchain prior to the last checkpoint
e) (limited by amount of hashing power) replace very deep blocks above the last checkpoint.
f) approve invalid transactions
g) create invalid blocks
DannyHamilton
Legendary
*
Offline Offline

Activity: 3430
Merit: 4672



View Profile
January 03, 2013, 02:55:05 PM
 #8

FreeMoney's explanation is really good.

One thing that sometimes gets mentioned is a "51% attack," that is, if 51% of all miners suddenly decided to corrupt the bitcoin system, then the rules (protocol) would get derailed by them.

Well not exactly.  With 51% of hashing power an entity has two large attacks but they can't change the rules.

a) The entity could prevent new transactions (create all empty blocks, and reject blocks from the 49%).
b) The entity could double spend transaction it created (spend coin X to address A, then recreate the block and spend it to address B)
c) Mine 100% of all new bitcoins for themselves.

Anything outside of that would be seen as invalid by existing nodes even if the entity had 100.0% of hashing power.

To help dispell this myth with 51% you can't:
a) change the minting rate
b) control the coins of anyone else (steal, delete, transfer them)
c) create coins out of thin air
d) modify the blockchain prior to the last checkpoint
e) (limited by amount of hashing power) replace very deep blocks above the last checkpoint.
f) approve invalid transactions
g) create invalid blocks

FTFY :-)
JoelKatz
Legendary
*
Offline Offline

Activity: 1596
Merit: 1012


Democracy is vulnerable to a 51% attack.


View Profile WWW
January 03, 2013, 09:23:00 PM
 #9

To help dispell this myth with 51% you can't:
a) change the minting rate
b) control the coins of anyone else (steal, delete, transfer them)
c) create coins out of thin air
d) modify the blockchain prior to the last checkpoint
e) (limited by amount of hashing power) replace very deep blocks above the last checkpoint.
f) approve invalid transactions
g) create invalid blocks
I don't completely agree.

a) You can somewhat change the minting rate by falsifying the timestamps of your blocks.

b) You can control the coins of other people by changing an old transaction that indirectly gave them those coins in the first place. You could probably put yourself in the path of a significant number of coins by alternately withdrawing and depositing from a site like Mt. Gox.

e) If you have 51% of the hashing power, you can modify transactions right at the last checkpoint. You just start mining your own chain right at that checkpoint and yours will always be longer.

I am an employee of Ripple. Follow me on Twitter @JoelKatz
1Joe1Katzci1rFcsr9HH7SLuHVnDy2aihZ BM-NBM3FRExVJSJJamV9ccgyWvQfratUHgN
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!