Bitcoin Forum
April 24, 2024, 11:59:02 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 [70] 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 ... 195 »
1381  Economy / Goods / WTB entropykey on: December 27, 2012, 01:57:57 PM
I want an entropykey.  Their website only accepts google wallet, which I refuse to use.

So, I'm looking for someone trustworthy to buy me one (or maybe a 10 pack), to be shipped to a US address, in exchange for BTC.  Any takers?
1382  Bitcoin / Bitcoin Discussion / Re: is ripple a trojan horse that will destroy bitcoin? on: December 26, 2012, 11:19:12 PM
Gold and bitcoin are both past-looking, where holding gold or bitcoin is prima facie evidence that a party has already in the past done something of value for society.  Dollars and ripple are more forward looking, where one party has received something of value, and the other party is hoping that they will do something of similar value in the future to redeem that particular debt.
I'm not sure the distinction you are trying to make holds up to scrutiny.

"one party has received something of value, and the other party is hoping that they will do something of similar value in the future" describes any currency transaction. The customer who pays for a meal with currency has received something of value, and the restaurant owner hopes to receive a product or services of similar value in the future. It doesn't matter whether the customer pays with gold, dollars, bitcoins, or ripple. How the customer originally received the currency isn't particularly relevant to the present transaction because what's being traded for is future production. If for some reason that future production never happens it won't matter what form of currency was used.

The distinction is subtle.  Debt and credit (savings) are different sides of the same coin, but which side you think is the head, and which is the tail, changes who you are.

With gold and bitcoin, it is:  give -> money -> receive
With dollars and ripple, it is: receive -> money -> give

They are really both part of a tangled knot of cycles and epicycles, but with any cycle, you have to pick a point to be the beginning/end, and that choice, as arbitrary as it seems, makes a world of difference in how you understand the cycle.

Time only flows in one direction, future consumption comes from current production, and current production comes from past investment.  These are essentially definitions of the words; it can be no other way.  But for a long time now, we've been willing to pretend that we can consume today and invest tomorrow.  And the difference is a just a matter of how we choose to see it, at first, but when we start to really believe it, we are no longer the same people.
1383  Bitcoin / Bitcoin Discussion / Re: the useless bitcoin mainstream efforts on: December 26, 2012, 09:52:58 PM
Finite resource is finite.
Oil (like all non-renewable resources) stands no chance as a future source of energy.
Oil consumption is (nessesarily) going down, it will never be cheap again.

What will be left of the market will not be enough to give OPEC a serious means of power.

OPEC is a stupid goal for bitcoin...

Heh.  You do know that cars don't operate by tipping gasoline into a black hole, right?  All of the atoms are still here, so we can create as much gasoline and other hydrocarbon products as we want, at will.  However, right now, it is cheaper to pump it out of the ground than it is to sieve carbon and hydrogen out of the atmosphere and crack up so they can form long chains.

Oil is totally 100% renewable.  It is only "cheap oil" that is non-renewable.

At any rate, the "unit of account for oil sales gives dollars value" theory repeated by the OP is nonsense, and has been nonsense for decades now.  No one is holding dollars against their will for oil purchases or oil sales, at least not for more than a couple hundred milliseconds.  Google FOREX.
1384  Bitcoin / Bitcoin Discussion / Re: is ripple a trojan horse that will destroy bitcoin? on: December 26, 2012, 09:37:06 PM
Apologies in advance, I've rewritten this post three times now trying to shorten it.  Sadly, each attempt has caused it to grow by at least a paragraph.  Just be thankful that I cut out the detour through the historic origins of debt and money.

Bitcoin and ripple are both attempts to make new electronic systems that more closely approach the abstract ideal of "money", but they do so in totally different ways.

Certain things have properties that make them more or less useful as money, but in the abstract sense, money is a means of splitting a barter transaction into two parts that can happen at different times, in different places, and between different people.

Essentially, if you buy a product or service from someone, you are getting wealth from them, and in return you give them money, which is (again, in the abstract sense) an IOU for wealth of similar value in the future.  They can then take that IOU and give it to someone else in exchange for a product or service.  In effect, they are performing a barter where they exchange one thing of value for another thing of value, with the money just as an intermediate step.  In the time that they are holding the money, they have given, but not yet received; they are owed a debt, not by one particular person, but by society in general.

Ripple is an attempt to transfer this abstract debt relationship into the electronic world, making something closer to the abstract ideal of "money" than the ledger and paper/coin system we use now.  The ripple system just helps turn your personal IOU that you give as payment into a general IOU, which is the same job that money does in a transaction.  In the end, both systems require a functional society willing and able to pay back those IOUs, and both systems can be open ended and (more or less) eternal.

All money, including bitcoin, ripple, dollars and even gold, are based on debt.  Holding gold means (more or less) that you have done something worth that gold's value, and you hope that in the future you'll be able to exchange that gold for something of similar value.  Dollars and ripple are the same, with a couple of subtle differences.  In dollars, certain players can create new debt (new dollars) at will, limited only by the willingness of people to accept them.  When you get a bank loan (or a credit card or whatever) that bank has created new dollars out of thin air by magic, limited only by their assessment of your ability to repay.  In ripple, everyone is a bank, and everyone can create money through magic, just by finding someone willing to accept it.

Gold and bitcoin, though based on debt/hope just dollars and ripple, have the advantage that no one can conjure them at will.  Gold and bitcoin are both past-looking, where holding gold or bitcoin is prima facie evidence that a party has already in the past done something of value for society.  Dollars and ripple are more forward looking, where one party has received something of value, and the other party is hoping that they will do something of similar value in the future to redeem that particular debt.

The forward looking version of money didn't grow up by accident.  It is a good system, and it works.  It has produced the amazing world we all live in today.  But it has also brought us horrifying tragedy, with new horrors brewing on the not-so-distant horizon.  I think that we are perched on a turning point in world history.  We will pick either the advantages and disadvantages of future-oriented systems like dollars and ripple, or we will pick the advantages and disadvantages of past-oriented systems like gold and bitcoin.  It isn't a one-sided choice, we are both gaining and losing either way.

But I suspect that the brewing storm will steer the next few centuries towards bitcoin (or something like it).
1385  Bitcoin / Development & Technical Discussion / Re: How would 51% double spending work in the long term ? Thought experiment on: December 26, 2012, 07:27:08 PM
Maybe. I think the ability to recover is important, both practically and for the theoretical "correctness" of the system.

You don't lose the ability to recover.  You only lose the silent, automatic recovery that obfuscates the damage.  You, the human, is going to have a mess that you are personally going to have to deal with.  The difference is that in one scenario, you have no idea what happened or why, and in the other scenario, you have to clear out some invalid blocks and restart your node, but you know exactly why.

Take a look at Table 2 in Meni's paper:  "The maximal safe transaction value, in BTC, as a function of the attacker's hashrate
q and the number of con firmations n."

Lets go with a 33% hashpower attacker, at 6 confirmations you can assume any transaction up to about 300 bitcoins is safe.

(disclaimer: I haven't taken the time to digest Meni's analysis, I'm going to assume his numbers are correct).
Thank you for this. I would however like to emphasize that table 2 is probably the least reliable item in the paper, it assumes a specific model for an attack which is likely to diverge significantly from reality. (And doesn't even follow the math of that model to the end because of the complexity of the calculations.)

Also, I should point out that section 6 of the paper doesn't really apply here, because section 6 is written with the assumption that q < p, while the assumption in this thread is that q > p.  In this case, it means that we are assuming that the attacker will eventually overtake the honest network.  Your only protection in that case is to have done all transactions and converted all of your bitcoins to wealth prior to the block when the attacker publishes their chain that destroys the entire system.
1386  Bitcoin / Development & Technical Discussion / Re: How would 51% double spending work in the long term ? Thought experiment on: December 26, 2012, 06:12:37 PM
So the question we must ask ourselves is: what is more important - (1) protecting the entire network against powerful adversaries, or (2) protecting single (<1%) stranded clients gone wild because of either an attack, or local network malfunction ?

For me, the answer will be always (1).
I can see the marketing copy - "With Bitcoin, you are in full control of your money, and payments cannot be reversed! Unless you're one of the 1% whom we don't care about, and then payments to you could be completely bogus."

Erm, don't take this the wrong way, but this seems like a strawman to me.  If an attacker has you isolated, they can already feed you bogus blocks, and there isn't a damn thing you can do about it.  In a parity proof-of-work system, when the isolation is broken, your node will resync with the rest of the world.  But the damage (to you) has already been done, it was done when you accepted blocks that you thought were current, but really weren't.  Throwing them out and loading the correct blocks doesn't fix anything, and might actually make it harder for you to realize what happened.

This is the trade in reality.
You get:  your node can fix itself when reconnected to the global network.
You pay:  The entire global network is vulnerable to hidden chains, whatever damage you suffered while disconnected is unchanged, you don't necessarily know that you were attacked.

Seems like a terrible trade to me.

Seriously though, I don't disagree but moving away from pure PoW is a fundamental design change and we need to consider it carefully to keep disruption and unwanted side-effects at an absolute minimum. If nodes aren't safe when participating in the network then the network is meaningless.

And as mentioned, if we consider majority attack to be plausible we need to protect against rejection attacks, not just double-spending.

The best part of my proposal is that it doesn't change the network rules at all.  It is still pure proof of work.  The only change is that the burden of proof for a reorganization is higher than it is now, and it scales with the amount of danger than such a reorganization represents.
1387  Bitcoin / Development & Technical Discussion / Re: DoS attack against the entire Bitcoin network ? on: December 26, 2012, 05:48:22 PM
* I suspect that we long ago passed the point where the majority of blocks are generated by software other than the reference client.  I could very easily be wrong about that, but I think that most pools are running custom software to generate blocks according to their own local rules.
I'm certain that you're wrong there. The attempts that I'm aware of that have gone even somewhat close to this have resulted in invalid blocks, so if it was widely being done the invalid blocks would probably be noticeable.

Really?  Assuming that you have the transactions already, assembling them into valid blocks is incredibly easy.  Wasn't that the whole point of getblocktemplate?
1388  Bitcoin / Development & Technical Discussion / Re: How would 51% double spending work in the long term ? Thought experiment on: December 26, 2012, 04:00:15 PM
To counter this, I proposed an exponential difficulty ramp for reorganizations.  Reorgs of up to X blocks (6 might be a good value for X) happen normally, with the longer chain winning.  Reorgs beyond X blocks require Y(B-X) more difficulty in the new chain than the old chain, where B is the number of blocks to be thrown out.  Y could be pretty small and still give good safety, maybe 1.1 or 1.05.  For example, for X=6 and Y=1.05, reversing 100 blocks would need ~50 times the total network power, not half.  And replacing 144 blocks (1 day) would require ~400 times the network power.  Recipients of large transactions would be able to decide on their own how long they needed to wait to meet their own safety requirements.  Selling a billion dollar widget?  Wait a week, and then the attacker would need 1*1021 times the total network hashing power to unbury it.
This is just a form of cementing. The obvious hurdle is that different nodes see things at different times and thus this is not a signal that will converge to universal agreement (unlike vanilla longest-branch). More concretely, a node could be stuck on the wrong version. This can be used only if there is a higher-level signal that can override the cementing. (Currently it's hardcoded checkpoints, but they're too infrequent to be practical).

Also, in itself it is useless against attacking by rejecting all other blocks and excluding all transactions.

Meh.  It will converge to near-universal agreement, and the nodes that don't converge to that agreement will know that they need to fix their shit manually.  In your terms, the "higher-level signal" would be a human, and I don't see that as a downside.  If you assume that an attacker can isolate some subset of the network and feed it garbage, then those nodes will need manual help one way or the other.  Why not take the safe and simple measure to protect the rest of the network?

What I think really saves us from this scenario is that hashing capacity of sufficient power for the attack does not currently exist in the world, in a readily available form.  There just aren't enough physical Radeon's in the world, in purchasable form, for someone to gather them easily or quickly, even with a huge budget.  The attacker's best bet would be to spend about a year developing an ASIC, but that attack window is not going to stay open much longer.
Since we're talking about governments and such, they can surely fund the development of ASICs more efficient than those available on the market, followed by mass production, in a quantity that takes into account from the start how the market will look like 1-2 years in the future.

Right now, they would have a 30x power advantage with their ASICs vs. the rest of the network currently running GPUs and FPGAs.  Once we've all switched to ASICs, all they will have is numeric superiority at more-or-less parity per unit.  That's a huge difference.
1389  Bitcoin / Development & Technical Discussion / Re: How would 51% double spending work in the long term ? Thought experiment on: December 26, 2012, 03:08:40 PM
Then i will expand my thought experiment. Let's say that Bitcoin network has grown, and people use it to trade 100.000.000$ worth of goods & currencies weekly.

1. A powerful adversary spends 50.000.000$ to buy 1.000.000 Bitcoins from MTGOX
2. He builds his alternate double - spending chain for a week, while in the meantime, people buy 100.000.000$ worth of goods & currencies using Bitcoin
3. After a week, adversary introduces his chain fork which double-spends his 1.000.000BTC to his address
4. At least 100.000.000$ worth of currencies & goods that were bought through the week are lost
5. This causes major havoc in the Bitcoin world, people's trust in the currency is seriously undermined.
6. ?? ??
7. PROFIT !

So how do we avoid this ?
If even I have produced this scenario, it is reasonable to think that powerful adversaries may already be working on it.

Also, another logical conclusion of mine is that all alt-currencies like Litecoin are useless, because attack like above can be arranged with ease using little hashing power.

There is no step 7.  This attack is non-economic, meaning that the attacker has to be willing to burn a lot of wealth to do the attack.  This alone severely limits the categories of potential attackers, but it is not unreasonable to think that such an attacker might show up some day, so it deserves some attention.

To counter this, I proposed an exponential difficulty ramp for reorganizations.  Reorgs of up to X blocks (6 might be a good value for X) happen normally, with the longer chain winning.  Reorgs beyond X blocks require Y(B-X) more difficulty in the new chain than the old chain, where B is the number of blocks to be thrown out.  Y could be pretty small and still give good safety, maybe 1.1 or 1.05.  For example, for X=6 and Y=1.05, reversing 100 blocks would need ~50 times the total network power, not half.  And replacing 144 blocks (1 day) would require ~400 times the network power.  Recipients of large transactions would be able to decide on their own how long they needed to wait to meet their own safety requirements.  Selling a billion dollar widget?  Wait a week, and then the attacker would need 1*1021 times the total network hashing power to unbury it.

I think that if a block is invalidated, all transactions in it which are not double-spent go back to the memory pool and can be included in the next block. Even if not, the client that originally sent the transaction still has it and can rebroadcast it, it is still just as valid.

Yes, but will the client rebroadcast it ? Was such scenario already tested ?

Yes, reorgs happen naturally every few days.  All transactions from the discarded blocks go back into the memory pool, and if they are still valid in the new context, they will be retransmitted and eventually end up in new blocks.

c) Will the original chain be erased from every client's database instantly the moment when a longer valid chain is supplied, or is there some other mechanism at work here ?
See a, the client keeps forks, however this might change when pruning enters the picture.

Ok, so my logical conclusion is that pruning cannot be implemented, until we solve this problem once and for all.

ultraprune stores rollback information for exactly this reason, even though it doesn't actually do any pruning yet.

Transactions that are in the orphaned blocks become invalid only if their input was also used in the now longest chain (say the trunk of the tree). Quite a few transactions will actually already be in the trunk (if it is not a real and nasty attack). Those transactions that remain valid but are not already in the trunk should enter the unconfirmed pool of the node.
The unconfirmed pool is most likely in memory for all node implementations therefore there remains the chance that valid but unconfirmed transactions will cease at some (long) delay from the memory of the network.
But when they do, there will be no way to fix the mess.

Well, even if the rest of the network forgets, each node scans their own wallet from time to time, and any transactions they see in their local wallet database but not in blocks and not in memory get retransmitted.  So, as long as your wallet is still live, the transactions still have a way to get back on the network.  Hilariously, this causes problems today because if you realize that a transaction isn't going to make it into a block within a reasonable amount of time, there isn't a simple way to prevent your wallet from keeping it alive.  You have to hack your wallet database to delete that transaction so that the network can forget about it, so that you can double spend it with a fee or whatever.

Also, there are ways to fix it, but they aren't particularly pleasant.  One ad hoc way to get things right would be to trace the fork back to the initial divergence, and then hardcode that first block's hash into a blacklist.  This would only help people that upgrade to the new blacklist-enabled version, but basically everyone would want to make that upgrade.  The blacklist could just be a text file in the datadir, managed by each node's user individually; they would have a powerful incentive to not put anything other than obvious attack blocks in it.

What I think really saves us from this scenario is that hashing capacity of sufficient power for the attack does not currently exist in the world, in a readily available form.  There just aren't enough physical Radeon's in the world, in purchasable form, for someone to gather them easily or quickly, even with a huge budget.  The attacker's best bet would be to spend about a year developing an ASIC, but that attack window is not going to stay open much longer.
1390  Bitcoin / Development & Technical Discussion / Re: DoS attack against the entire Bitcoin network ? on: December 26, 2012, 02:19:24 PM
the transaction will not be relayed if it doesn't pass all the free criteria: no dust outputs, small size, and priority greater than 57600000 (COIN * 144 / 250).  Priority is the sum(value*confirms)/data_size. (Otherwise someone could flood out the whole network easily)

I think this applies to inclusion into blocks not relaying.

There are no "requirements" for getting into a block, beyond having valid signatures and not-yet-spent inputs.*

But, if you aren't mining yourself, or don't have sufficient hashing power to get somewhat frequent blocks, then the rules for transaction relaying are effectively the rules for getting other people to put your transactions into their blocks.

* I suspect that we long ago passed the point where the majority of blocks are generated by software other than the reference client.  I could very easily be wrong about that, but I think that most pools are running custom software to generate blocks according to their own local rules.
1391  Bitcoin / Pools / Re: [400GH/s] p2pool: Decentralized, DoS-resistant, Hop-Proof pool on: December 23, 2012, 02:44:01 PM
Is it necessary to use a bitcoin address on the command line that exists in the bitcoind instance you are running? For example, could you mine to a cloud based address (blockchain.info) that didn't exist on your local bitcoind?

No.  Yes.
1392  Bitcoin / Development & Technical Discussion / Re: Is this idea to counter lost bitcoins possible? on: December 23, 2012, 09:31:54 AM
First, let me say this: Freicoin looks like an interesting experiment.  It appears that Freicoin proponents have a comprehensive economic theory, which appears wrong to me, but I could be wrong myself.

I, for one, would LOVE to hear it.

http://freico.in/about/  Wink

I hate to be the one to say it, but that freicoin manifesto is a cesspit of keynesian gibberish and populist nonsense.  Calling it a "comprehensive economic theory" is to go zero for three.

Well, its a comprehensive economy theory. You may just happen to disagree with it. Smiley  As an aside the Freicoin network now has around 5GH/s hashing power. I couldn't be happier with how people from all over the globe have pitched in to help this fledgling cryptocurrency take off.

See Scrybe's post just before this one.

That document does not describe any theory, does not appear to be about economics so much as jealousy, and can hardly be thought of as comprehensive.  Zero for three.
1393  Bitcoin / Development & Technical Discussion / Re: Integer or float used in Bitcoin? on: December 22, 2012, 01:13:22 PM
What would it take to update the protocol to, say, a 128-bit integer?
It wouldn't need to be done that way. Not all of the 64 bits are used at the moment, so one of the spare bits could be used to indicate that the value is to be scaled. So technically it's straightforward, but as others have explained it's a "hard fork", so the change would need to be broadly aged well in advance of it's implementation.

The change may never be needed anyway, as some kind of sub-ledger may become popular for handling small payments.

Meh.  The value field is such a small part of the transaction that making it wider is probably cheaper overall than having to put up with the headaches of scaled formats.

Values in bitcoind are 64-bit integers, with a convention that "a bitcoin" means put the decimal point 8 places from the right.
2^64 = 1,8*10^19

Currently, the amount of bitcoins will never exceed 2,1*10^15

Wouldn't it have made more sence to let the supply of bitcoins geometrically approach 2^64? That would have given us a few more decimals without actually incresing the cost for storing or making a transaction. Or am I missing something?

Most of the constants in bitcoin are totally arbitrary.  I don't see any reason to believe that 264 base units would be "better" in any meaningful way than ~251, and the extra bits allow for headroom in accounting.
1394  Bitcoin / Development & Technical Discussion / Re: Is this idea to counter lost bitcoins possible? on: December 22, 2012, 01:07:38 PM
Technically, not keynesian.  I'd say it's arguablely a variety of a monetarist theory, although not of the dominate set.

Keynes had more to say than just "print more".  I see a lot of his other blather in there.
1395  Bitcoin / Development & Technical Discussion / Re: Is this idea to counter lost bitcoins possible? on: December 22, 2012, 06:10:01 AM
First, let me say this: Freicoin looks like an interesting experiment.  It appears that Freicoin proponents have a comprehensive economic theory, which appears wrong to me, but I could be wrong myself.

I, for one, would LOVE to hear it.

http://freico.in/about/  Wink

I hate to be the one to say it, but that freicoin manifesto is a cesspit of keynesian gibberish and populist nonsense.  Calling it a "comprehensive economic theory" is to go zero for three.
1396  Bitcoin / Bitcoin Technical Support / Re: No Fee-transactions take longer - Myth?? on: December 20, 2012, 01:14:13 PM
A histogram would be a more useful view.
1397  Bitcoin / Bitcoin Technical Support / Re: zero transaction fee payments on: December 20, 2012, 01:12:16 PM
Can a transaction be included into the same block that some of it's input transactions are included?  Doesn't the protocol require that an txin dependency reference back to a prior block?
As far as I'm aware, it only requires a reference back to a prior transaction.  It should still be able to reference that transaction if it is in the same block.  If I'm mistaken, hopefully someone with more knowledge of the matter will respond here.

Yes, a transaction can have an input in the same block.  The reference client requires that the input come before the output, whether in a previous block, or in the same block.

Philosophically, I prefer to think of all of the transactions in a block as being simultaneous, but officially, they happen in the order they appear in the block.  The official view has a few advantages, such as avoiding loops.
1398  Bitcoin / Development & Technical Discussion / Re: Correct header data for block 1 on: December 19, 2012, 03:25:02 PM
Does anyone know how to dump block byte data from the block database for the satoshi client?

https://bitcointalk.org/index.php?topic=119530.msg1291088#msg1291088
1399  Bitcoin / Development & Technical Discussion / Re: Is this idea to counter lost bitcoins possible? on: December 19, 2012, 05:42:05 AM
First, let me say this: Freicoin looks like an interesting experiment.  It appears that Freicoin proponents have a comprehensive economic theory, which appears wrong to me, but I could be wrong myself.

I, for one, would LOVE to hear it.
1400  Bitcoin / Development & Technical Discussion / Re: Correct header data for block 1 on: December 18, 2012, 10:31:49 PM
Double check the endianness of your prevhash.  In the genesis block, it is all zeros, meaning that you still get the right result even if you have it backwards.

Just a guess.
Pages: « 1 ... 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 [70] 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 ... 195 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!