Bitcoin Forum
December 05, 2016, 08:50:21 PM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: « 1 [2]  All
  Print  
Author Topic: Datacasting the blockchain  (Read 3490 times)
MoonShadow
Legendary
*
Offline Offline

Activity: 1666



View Profile
April 16, 2012, 10:07:21 PM
 #21

I like the idea, but to me it is screaming CENTRALIZATION OMG!!!

If your broadcast tower is compromised, everyone who uses it is vulnerable.

Uh, no it's not.  The broadcast tower is just a means of propogation, the security is in both the encryption that the bitcoin datacasting company uses with it's customers and in the cryptographic signing of those same encrypted archive/digests.  If someone gets a copy of those private keys (for signing, not for encrypting of the digest), then everyone who uses it is vulnerable, yes.  This is no different than the security model that bitcoin itself uses, for it's the private keys that matter.  No one can fake being you without them, this is why identities are not necessary under bitcoin and identity theft is practically impossible.

Except that one key lets you doublespend with everyone who relies on the broadcasting service.  Accessing my keys only hurts me.

It would be a high value key, yes; but don't assume that it's one that would be easy to aquire.  Yes, subscribers would generally be trusting the security model of the company they contract with, but if anything happens, that trust dies and another datacasting company takes away their business or the subscribers get their own Internet feed.  It's not vendor locked.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
1480971021
Hero Member
*
Offline Offline

Posts: 1480971021

View Profile Personal Message (Offline)

Ignore
1480971021
Reply with quote  #2

1480971021
Report to moderator
1480971021
Hero Member
*
Offline Offline

Posts: 1480971021

View Profile Personal Message (Offline)

Ignore
1480971021
Reply with quote  #2

1480971021
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
notme
Legendary
*
Offline Offline

Activity: 1526


View Profile
April 16, 2012, 10:10:09 PM
 #22

I like the idea, but to me it is screaming CENTRALIZATION OMG!!!

If your broadcast tower is compromised, everyone who uses it is vulnerable.

Uh, no it's not.  The broadcast tower is just a means of propogation, the security is in both the encryption that the bitcoin datacasting company uses with it's customers and in the cryptographic signing of those same encrypted archive/digests.  If someone gets a copy of those private keys (for signing, not for encrypting of the digest), then everyone who uses it is vulnerable, yes.  This is no different than the security model that bitcoin itself uses, for it's the private keys that matter.  No one can fake being you without them, this is why identities are not necessary under bitcoin and identity theft is practically impossible.

Except that one key lets you doublespend with everyone who relies on the broadcasting service.  Accessing my keys only hurts me.

It would be a high value key, yes; but don't assume that it's one that would be easy to aquire.  Yes, subscribers would generally be trusting the security model of the company they contract with, but if anything happens, that trust dies and another datacasting company takes away their business or the subscribers get their own Internet feed.  It's not vendor locked.

Thank you for acknowledging the limitations.  I will not be subscribing to any such datacasting company, but I'm sure others are less careful than me.  Carry on.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
12jh3odyAAaR2XedPKZNCR4X4sebuotQzN
MoonShadow
Legendary
*
Offline Offline

Activity: 1666



View Profile
April 16, 2012, 10:17:07 PM
 #23

Except that one key lets you doublespend with everyone who relies on the broadcasting service.  Accessing my keys only hurts me.

What are you talking about.  Each client validates their own blocks starting from the hardcoded genesis hash in the client.  The method of delivery doesn't need to be secure.  You are aware that a node can give you a bad block right?  The client has already considered that attack vector.

Someone using the service to publish bad blocks would simply find those blocks invalidated by nodes.  At best they could prevent nodes from getting new blocks via this mechanism (service denial) nothing more.

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.
Isn't the genesis block and a recent checkpoint hardcoded into every release?

Yes, but his complaint is valid.  A client for such a subscriber would have to be modified to accept the encrypted & signed block digest from the datacasting company as both trusted and authoritive.  Such clients could still get such data from other clients that they come into wifi range of, such as customers, but in order to invalidate the trusted block, the subscriber's client would have to have a complete copy of all of the blockchain.  Right now, that's not much of a problem; but by the time that vendors in Africa are using a service such as this in order to transact daily in bitcoin the block limit is going to be huge and a full copy from any source is going to be like drinking from a fire hose.  There already exists an overlay network (Stratum)being developed in order to permit light(er) clients to directly utilize the bitcoin protocol without needing a complete copy of the blockchain, but in every case some level of additional trust is required of the operator of the server that your client connects to in order to update it's local copy of it's own address inputs.  BitcoinSpinner for Android uses a similar client/server trust model in order to allow an Android client to quickly assess what it's own balance is without needing to download and verify it's own blockchain.  Local complete blockchains & verfication will always be available to anyone who wishes that level of security, but only banks and the most paranoid of consumers are likely to continue doing so when the size of the average block approaches 10 Gigs every 10 minutes.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218


Gerald Davis


View Profile
April 16, 2012, 10:39:12 PM
 #24

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.

All clients have the starting source ... the genesis block.   The only way to validate block #1 is to ensure it meets block requirements and has the block hash from block #0.   As such all full-clients must include the genesis block.  From there every node can validate every tx from block #1 all the way to current block.   As indicated above clients may also include hardcoded checkpoints.

Nodes are NOT secure.  They are inherently insecure.  You have no idea how dishonest your fellow "peer" connections are.  Hell they could all be the same attacker.  As a result Bitcoin DISTRUSTS all blocks received from the network until validated and added to the chain tracing all the way back to the genesis block.

A broadcast system for blocks wouldn't be any different.
MoonShadow
Legendary
*
Offline Offline

Activity: 1666



View Profile
April 16, 2012, 10:49:43 PM
 #25


A broadcast system for blocks wouldn't be any different.


Excepting that there is only one source for the blockchain, no it wouldn't.  Part of the normal client's security model involves getting blocks from differnet sources, and validating them so that they all fit into the same blockchain.  That's where the trust of a datacasting company would come in, for it's possible that such a company that turned to the dark side, (or a hacker gets ahold of the private keys in order to fake being the company) then it's possible for the attacker to send faked blocks to a high value target that also happens to be a costumer.  In this way, the attacker could theoretically create fake blocks that permits himself to send himself his own bitcoins, and then spend them again at the attacked vendor.  Sort of like a delayed double spend attack.  Actually, this might be possible regardless, so I doubt that anyone selling high value items for bitcoin (say a brand new car) is going to be satisfied with just a couple of block verifications.  Odds are high that such a vendor could justify an Internet downlink of their own right, and that buying in bitcoin is going to both require personal identification (ever tried to buy a car for cash at a dealership?  It's not cash an carry) and at least three verified blocks before you get to leave with the new car.  This datacasting idea is more about the little vendors.  Like the guys who sell hot dogs at the street corner downtown.  He's more likely to use BitcoinSpinner on an Android than a datacasting company, but the concept is similar.  He's not going to be running a full client under his hot dog tray paying 4G data rates to keep up.  Eventually even 4G isn't going to be able to keep up anyway.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
notme
Legendary
*
Offline Offline

Activity: 1526


View Profile
April 16, 2012, 11:07:38 PM
 #26

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.

All clients have the starting source ... the genesis block.   The only way to validate block #1 is to ensure it meets block requirements and has the block hash from block #0.   As such all full-clients must include the genesis block.  From there every node can validate every tx from block #1 all the way to current block.   As indicated above clients may also include hardcoded checkpoints.

Nodes are NOT secure.  They are inherently insecure.  You have no idea how dishonest your fellow "peer" connections are.  Hell they could all be the same attacker.  As a result Bitcoin DISTRUSTS all blocks received from the network until validated and added to the chain tracing all the way back to the genesis block.

A broadcast system for blocks wouldn't be any different.


Right, but that doesn't help at all with new blocks, which is where any attack would play out Roll Eyes.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
12jh3odyAAaR2XedPKZNCR4X4sebuotQzN
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218


Gerald Davis


View Profile
April 16, 2012, 11:43:30 PM
 #27

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.

All clients have the starting source ... the genesis block.   The only way to validate block #1 is to ensure it meets block requirements and has the block hash from block #0.   As such all full-clients must include the genesis block.  From there every node can validate every tx from block #1 all the way to current block.   As indicated above clients may also include hardcoded checkpoints.

Nodes are NOT secure.  They are inherently insecure.  You have no idea how dishonest your fellow "peer" connections are.  Hell they could all be the same attacker.  As a result Bitcoin DISTRUSTS all blocks received from the network until validated and added to the chain tracing all the way back to the genesis block.

A broadcast system for blocks wouldn't be any different.


Right, but that doesn't help at all with new blocks, which is where any attack would play out Roll Eyes.

New block is simply the tail of the block chain.  Right now a peer node just gave you a block how do you make sure it is valid?
notme
Legendary
*
Offline Offline

Activity: 1526


View Profile
April 16, 2012, 11:48:59 PM
 #28

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.

All clients have the starting source ... the genesis block.   The only way to validate block #1 is to ensure it meets block requirements and has the block hash from block #0.   As such all full-clients must include the genesis block.  From there every node can validate every tx from block #1 all the way to current block.   As indicated above clients may also include hardcoded checkpoints.

Nodes are NOT secure.  They are inherently insecure.  You have no idea how dishonest your fellow "peer" connections are.  Hell they could all be the same attacker.  As a result Bitcoin DISTRUSTS all blocks received from the network until validated and added to the chain tracing all the way back to the genesis block.

A broadcast system for blocks wouldn't be any different.


Right, but that doesn't help at all with new blocks, which is where any attack would play out Roll Eyes.

New block is simply the tail of the block chain.  Right now a peer node just gave you a block how do you make sure it is valid?

Check blockexplorer and blockchain.info from systems on multiple ISPs.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
12jh3odyAAaR2XedPKZNCR4X4sebuotQzN
rjk
Sr. Member
****
Offline Offline

Activity: 420


1ngldh


View Profile
April 17, 2012, 12:14:01 AM
 #29

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.

All clients have the starting source ... the genesis block.   The only way to validate block #1 is to ensure it meets block requirements and has the block hash from block #0.   As such all full-clients must include the genesis block.  From there every node can validate every tx from block #1 all the way to current block.   As indicated above clients may also include hardcoded checkpoints.

Nodes are NOT secure.  They are inherently insecure.  You have no idea how dishonest your fellow "peer" connections are.  Hell they could all be the same attacker.  As a result Bitcoin DISTRUSTS all blocks received from the network until validated and added to the chain tracing all the way back to the genesis block.

A broadcast system for blocks wouldn't be any different.


Right, but that doesn't help at all with new blocks, which is where any attack would play out Roll Eyes.

New block is simply the tail of the block chain.  Right now a peer node just gave you a block how do you make sure it is valid?

Check blockexplorer and blockchain.info from systems on multiple ISPs.
Why? If you have an existing, valid blockchain, and you want to check all additional blocks that are sent to you, what is wrong with how it is done now? Do you even know how it is done now? I doubt it.

Mining Rig Extraordinaire - the Trenton BPX6806 18-slot PCIe backplane [PICS] Dead project is dead, all hail the coming of the mighty ASIC!
notme
Legendary
*
Offline Offline

Activity: 1526


View Profile
April 17, 2012, 12:17:24 AM
 #30

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.

All clients have the starting source ... the genesis block.   The only way to validate block #1 is to ensure it meets block requirements and has the block hash from block #0.   As such all full-clients must include the genesis block.  From there every node can validate every tx from block #1 all the way to current block.   As indicated above clients may also include hardcoded checkpoints.

Nodes are NOT secure.  They are inherently insecure.  You have no idea how dishonest your fellow "peer" connections are.  Hell they could all be the same attacker.  As a result Bitcoin DISTRUSTS all blocks received from the network until validated and added to the chain tracing all the way back to the genesis block.

A broadcast system for blocks wouldn't be any different.


Right, but that doesn't help at all with new blocks, which is where any attack would play out Roll Eyes.

New block is simply the tail of the block chain.  Right now a peer node just gave you a block how do you make sure it is valid?

Check blockexplorer and blockchain.info from systems on multiple ISPs.
Why? If you have an existing, valid blockchain, and you want to check all additional blocks that are sent to you, what is wrong with how it is done now? Do you even know how it is done now? I doubt it.

Why the hostility?  I do know how it is done.  I'm just remembering a previous conversation with DeathAndTaxes where he brought up the case of having all your connections controlled by an attacker.  But thanks for butting in your your rudeness.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
12jh3odyAAaR2XedPKZNCR4X4sebuotQzN
rjk
Sr. Member
****
Offline Offline

Activity: 420


1ngldh


View Profile
April 17, 2012, 12:23:15 AM
 #31

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.

All clients have the starting source ... the genesis block.   The only way to validate block #1 is to ensure it meets block requirements and has the block hash from block #0.   As such all full-clients must include the genesis block.  From there every node can validate every tx from block #1 all the way to current block.   As indicated above clients may also include hardcoded checkpoints.

Nodes are NOT secure.  They are inherently insecure.  You have no idea how dishonest your fellow "peer" connections are.  Hell they could all be the same attacker.  As a result Bitcoin DISTRUSTS all blocks received from the network until validated and added to the chain tracing all the way back to the genesis block.

A broadcast system for blocks wouldn't be any different.


Right, but that doesn't help at all with new blocks, which is where any attack would play out Roll Eyes.

New block is simply the tail of the block chain.  Right now a peer node just gave you a block how do you make sure it is valid?

Check blockexplorer and blockchain.info from systems on multiple ISPs.
Why? If you have an existing, valid blockchain, and you want to check all additional blocks that are sent to you, what is wrong with how it is done now? Do you even know how it is done now? I doubt it.

Why the hostility?  I do know how it is done.  I'm just remembering a previous conversation with DeathAndTaxes where he brought up the case of having all your connections controlled by an attacker.  But thanks for butting in your your rudeness.
The only way that could possibly work is if the "hostile" connection could generate blocks of the current difficulty and feed them to the clients. We are assuming that you already have a valid, trusted copy of the blockchain, remember? And even if you re-download it from scratch, you would have to be running a hacked version with no built-in checkpoints or genesis block.

Mining Rig Extraordinaire - the Trenton BPX6806 18-slot PCIe backplane [PICS] Dead project is dead, all hail the coming of the mighty ASIC!
notme
Legendary
*
Offline Offline

Activity: 1526


View Profile
April 17, 2012, 12:26:54 AM
 #32

How does the client invalidate the bad blocks unless it has a source of valid blocks?  The whole point here is that this is the only way to get the blockchain to some clients.

All clients have the starting source ... the genesis block.   The only way to validate block #1 is to ensure it meets block requirements and has the block hash from block #0.   As such all full-clients must include the genesis block.  From there every node can validate every tx from block #1 all the way to current block.   As indicated above clients may also include hardcoded checkpoints.

Nodes are NOT secure.  They are inherently insecure.  You have no idea how dishonest your fellow "peer" connections are.  Hell they could all be the same attacker.  As a result Bitcoin DISTRUSTS all blocks received from the network until validated and added to the chain tracing all the way back to the genesis block.

A broadcast system for blocks wouldn't be any different.


Right, but that doesn't help at all with new blocks, which is where any attack would play out Roll Eyes.

New block is simply the tail of the block chain.  Right now a peer node just gave you a block how do you make sure it is valid?

Check blockexplorer and blockchain.info from systems on multiple ISPs.
Why? If you have an existing, valid blockchain, and you want to check all additional blocks that are sent to you, what is wrong with how it is done now? Do you even know how it is done now? I doubt it.

Why the hostility?  I do know how it is done.  I'm just remembering a previous conversation with DeathAndTaxes where he brought up the case of having all your connections controlled by an attacker.  But thanks for butting in your your rudeness.
The only way that could possibly work is if the "hostile" connection could generate blocks of the current difficulty and feed them to the clients.

Yes, that's the exact situation he was talking about in our other conversation.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
12jh3odyAAaR2XedPKZNCR4X4sebuotQzN
rjk
Sr. Member
****
Offline Offline

Activity: 420


1ngldh


View Profile
April 17, 2012, 12:32:42 AM
 #33

The only way that could possibly work is if the "hostile" connection could generate blocks of the current difficulty and feed them to the clients.

Yes, that's the exact situation he was talking about in our other conversation.
It would become pretty damn obvious what was going on when the client didn't get their current block in the average time of 10 minutes each, but instead was getting them hours or days apart because the hostile connection owner had to generate them himself. After about a week of slow blocks, yes, you would definitely check an external source, but how do you know that the external source isn't being hijacked? dun dun dun...

I think you are putting too much stock in an "zomg every node is controlled by a single attacker" situation. It is implausible at best.

Mining Rig Extraordinaire - the Trenton BPX6806 18-slot PCIe backplane [PICS] Dead project is dead, all hail the coming of the mighty ASIC!
notme
Legendary
*
Offline Offline

Activity: 1526


View Profile
April 17, 2012, 12:35:54 AM
 #34

The only way that could possibly work is if the "hostile" connection could generate blocks of the current difficulty and feed them to the clients.

Yes, that's the exact situation he was talking about in our other conversation.
It would become pretty damn obvious what was going on when the client didn't get their current block in the average time of 10 minutes each, but instead was getting them hours or days apart because the hostile connection owner had to generate them himself. After about a week of slow blocks, yes, you would definitely check an external source, but how do you know that the external source isn't being hijacked? dun dun dun...

I think you are putting too much stock in an "zomg every node is controlled by a single attacker" situation. It is implausible at best.

Like I already said twice, this was a situation D&T has brought up in the past, so I'm addressing him.  Yes, it is implausible.

As for the external source being hijacked, that's why I check two sources twice using two different connection providers (incase I'm dns hijacked on one).

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
12jh3odyAAaR2XedPKZNCR4X4sebuotQzN
Stephen Gornick
Legendary
*
Offline Offline

Activity: 1988



View Profile
April 17, 2012, 10:12:07 PM
 #35

I check two sources twice using two different connection providers (incase I'm dns hijacked on one).

The check to verify could require only a few bytes if connecting to a trusted service.

The client could even have a special mode where the datacasting source is the only node normally used to get the block data but the rest of the client keeps the same peer discovery and block verification as what everyone else uses.

Pages: « 1 [2]  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!