Bitcoin Forum
April 26, 2024, 05:47:21 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 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 121 122 123 124 125 ... 195 »
1481  Bitcoin / Bitcoin Discussion / Re: ECB paper on Bitcoin and virtual currencies on: November 05, 2012, 07:00:51 PM
kjj, I think it's this part:

Quote
A commodity has full or partial fungibility; that is, the market treats its instances as equivalent or nearly so with no regard to who produced them.

Buy a fancy printer and try making your own "Federal Reserve Notes" and see how the market (and the cops) treat them.

You've never heard of a loan, have you?  When you take out a loan, your bank produces dollars that did not exist previously.  No one cares which bank produced the dollars in your checking account, and no one even knows.

It is only physical paper dollars that have monopolized production, and those are a tiny, tiny niche in the dollar economy.
1482  Bitcoin / Bitcoin Discussion / Re: ECB paper on Bitcoin and virtual currencies on: November 05, 2012, 06:43:43 PM
I noticed that the ECB never referred to Bitcoin as a commodity or as commodity money.  I think that is significant, legally.

They acknowledge the philosophy was inspired by the gold standard but their charts exclude gold. If you put gold in the charts and remove SLL it would provide a more constructive comparison (USD vs BTC vs GOLD)

I've never understood the notion of bitcoin as a commodity.

Money, in the abstract sense, is value that you have given to society, that you have not yet redeemed.  It is a token of a half-completed trade.  Bitcoin is an excellent implementation of that abstract idea.

Bitcoin is absolutely a commodity.

From Wikipedia:
Quote
The more specific meaning of the term commodity is applied to goods only. It is used to describe a class of goods for which there is demand, but which is supplied without qualitative differentiation across a market.[3] A commodity has full or partial fungibility; that is, the market treats its instances as equivalent or nearly so with no regard to who produced them. "From the taste of wheat it is not possible to tell who produced it, a Russian serf, a French peasant or an English capitalist."[4] Petroleum and copper are examples of such commodities.[5] The price of copper is universal, and fluctuates daily based on global supply and demand. Items such as stereo systems, on the other hand, have many aspects of product differentiation, such as the brand, the user interface, the perceived quality etc. And, the more valuable a stereo is perceived to be, the more it will cost.

In contrast, one of the characteristics of a commodity good is that its price is determined as a function of its market as a whole. Well-established physical commodities have actively traded spot and derivative markets. Generally, these are basic resources and agricultural products such as iron ore, crude oil, coal, salt, sugar, coffee beans, soybeans, aluminum, copper, rice, wheat, gold, silver, palladium, and platinum. Soft commodities are goods that are grown, while hard commodities are the ones that are extracted through mining.

Bitcoin is a commodity because it is a fungible good without qualitative differentiation. Just like gold. Just like rice. Just like oil.

The fact that this commodity's primary use is "as money" does not remove the label of commodity from it. The commodity gold is used as money and jewelry. The commodity rice is used as food. The commodity oil is used as energy and for manufacturing. The commodity bitcoin is used as money.

We could call bitcoin a "purely digital commodity," but it is nevertheless a commodity and this shouldn't be contentious.

I didn't read very carefully, but I didn't see any part of this that wouldn't apply just as well to dollars.
1483  Bitcoin / Bitcoin Discussion / Re: ECB paper on Bitcoin and virtual currencies on: November 05, 2012, 01:53:47 PM
I noticed that the ECB never referred to Bitcoin as a commodity or as commodity money.  I think that is significant, legally.

They acknowledge the philosophy was inspired by the gold standard but their charts exclude gold. If you put gold in the charts and remove SLL it would provide a more constructive comparison (USD vs BTC vs GOLD)

I've never understood the notion of bitcoin as a commodity.

Money, in the abstract sense, is value that you have given to society, that you have not yet redeemed.  It is a token of a half-completed trade.  Bitcoin is an excellent implementation of that abstract idea.
1484  Bitcoin / Development & Technical Discussion / Re: Request. Standardize naming of RPC Calls (bounty) on: November 05, 2012, 12:17:11 PM
You didn't actually look at my commit, did you?  Smiley
How embarassing  Embarrassed I DID click on the commit, skimmed the first few lines that showed removal of existing commands and went back to comment here. Please forgive my ignorance  Lips sealed

No worries.  It happens.

Since everything goes through a dispatch table, it was easy enough to put duplicate entries in so that the old commands would keep working.  The catch is that the list of commands that you get from typing "bitcoind help" is generated from that table, and I wasn't sure how to prevent duplicates.  Turned out that the problem had already come up before and someone else had fixed it so I didn't have to.
1485  Bitcoin / Development & Technical Discussion / Re: Request. Standardize naming of RPC Calls (bounty) on: November 05, 2012, 12:02:10 PM
While I like the idea we have to make sure to stay backwardscompatible. So we can not just rename the commands and break all sorts of things that rely on the existing commands.
Better would be to add new commands and mark the old ones as "deprecated" and remove them only after some intermediate releases are done.

You didn't actually look at my commit, did you?  Smiley
1486  Bitcoin / Development & Technical Discussion / Re: Bitcoin Mining Formula (Bitcoin Pseudo client Documentation Research) on: November 05, 2012, 06:19:51 AM
Start with the header.  It is described in that link I posted.  Be careful of endianness issues.  Once you get to the point where you can build a header and get the same hash that the rest of the network sees, you can move on to parsing the block body, which is fairly simple, and hashing the transactions to build the Merkle Tree.

Then you can start building a database of transaction outputs and checking that transaction inputs are valid.  The final step will be checking the signatures in the transactions.  The signatures themselves aren't too bad, but first you need to prepare it in a specific way.

https://en.bitcoin.it/wiki/Protocol_specification#Variable_length_integer VI pops up in a lot of places, you'll need to know how to read it to do anything
https://en.bitcoin.it/wiki/File:TxBinaryMap.png this map helps you parse transactions.
https://en.bitcoin.it/wiki/Script list of opcodes, needed for parsing scripts
https://en.bitcoin.it/wiki/File:Bitcoin_OpCheckSig_InDetail.png this map is for preparing transactions for signing
https://en.bitcoin.it/wiki/OP_CHECKSIG description of the signing process
https://bitcointalk.org/index.php?topic=101514.0 format of the block files, essentially a dump of the block messages minus the command string, also the magic and the blocksize aren't part of the block proper.
1487  Bitcoin / Development & Technical Discussion / Re: Request. Standardize naming of RPC Calls (bounty) on: November 05, 2012, 12:20:22 AM
I had to rebase this against the latest master.  New link is:

https://github.com/kjj2/bitcoin/commit/4ba9b0603e235c2579622e3fc4d554da8507f345
1488  Bitcoin / Development & Technical Discussion / Re: Bitcoin Mining Formula (Bitcoin Pseudo client Documentation Research) on: November 04, 2012, 11:26:53 PM
First, the nodes don't have hardcoded trusted nodes.  There are DNS seeds that can be used when a new node is bootstrapping and needs a way to find running nodes to connect to.

Each block is composed of a header and a list of transactions.  The transactions are hashed together in a Merkle Tree and the root of that tree is included in the header in such a way that none of the transactions can be changed without changing the hash in the header.  The header also includes the hash of the previous header, proving that it came after the previous block, and also ensuring that the previous block can't be changed without changing the current header.

The nonce field is allowed to be anything at all, provided that it leads to a valid hash.  This means that each miner iterates through all 232 possible nonces for the block candidate they are working on hoping that one of them works out.  If none works, they ask for a new candidate, which means changing the timestamp or Merkle root hash.  Changing the Merkle root means that at least one transaction needs to change (or a new transaction can be added).  The generate transaction is allowed to contain arbitrary data, giving nodes the ability to generate new trees as needed.

The header is then fed into hash=SHA256(SHA256(header)).  SHA256 is expected to have essentially a random distribution, meaning that the output is similar to getting a random number.  The network tracks a target value, and only accepts blocks that are less than the target.  There is no way to design a block header in advance that will have a hash that is below the target value, so miners have to check each one hoping to get lucky.  The current target gives each hash about a 1 in 15 quadrillion chance of being below the target, so miners are checking (in aggregate) about 25 trillion hashes per second.

When a new block is found, every transaction is checked to make sure it is well formed and valid, and that each redeemed output is valid and not previously spent.  The Merkle tree is created and checked to make sure that it matches the root hash in the header.  The timestamp is checked to make sure it is within the allowable range, the difficulty is checked to make sure it agrees with the network, and the header hash is checked to make sure it is below the target value.  If all of the checks are true, and the previous block hash in the header belongs to the block that was the previously highest block, the chain is extended.

When doing the initial download, some checks are abbreviated or skipped on old blocks, but the 2500 most recent blocks always get full verification.
1489  Bitcoin / Development & Technical Discussion / Re: Request. Standardize naming of RPC Calls (bounty) on: November 04, 2012, 10:42:35 PM
These are pretty easy changes.

https://github.com/kjj2/bitcoin/commit/c82fa0b722b0aec843e4538b1f21f5298fb2fee6

I changed the names of the functions too, so I'm running a full recompile to make sure I didn't typo anything.

This isn't worth 5 BTC by the way.  If this gets accepted, either give the bounty to some worthy cause, or hold onto it until you have a more difficult change request.
1490  Bitcoin / Development & Technical Discussion / Re: btcaddr.me - Bitcoin Address Identicon on: November 04, 2012, 05:46:42 AM
I think it could work as a browser plugin, where when you mouse over an address, you would see the identicon. This would allow the user to verify quickly, but not rely on the security of the site.

So, you see the correct icon for the attacker's address.  Nothing gained.
1491  Bitcoin / Development & Technical Discussion / Re: Bribery: The Double Double Spend on: November 04, 2012, 05:37:44 AM
Don't forget that no one will ever trust the attacker again after he publishes the proof of his misdeeds for the entire world to see.  Also, no one should be accepting transactions on low confirmation counts unless they can afford to lose it.

The attacker and the miners are pseudonymous. Coins are fungible. He can wash the dirty coins, put them in a new unknown wallets, and attack again using a fresh identity.

In a transaction big enough that you can afford to bribe miners to reverse it?  Not likely.

I thought the point was that (if miners behave rationally and are atomistic), then any tx is big enough that you can afford to bribe miners to reverse it.

Well, you are wrong about that.  If that is the conclusion you've come to, then you aren't tracking the costs and rewards properly along with the probabilities of success for all of the parties.  It gets worse when you add in reputation costs, but even ignoring those, it still doesn't work.
1492  Bitcoin / Bitcoin Technical Support / Re: Is it the 52 char compressed key, or is this the worst keypair ever? (bounty) on: November 04, 2012, 05:06:10 AM
Have you tried the importprivkey RPC call on a normal bitcoin 0.7.1 node?

Sounds to me like the WIF is incorrect, but the tools you are using aren't checking the checksum, so they happily import it, but since it isn't right, they can't actually make a valid signature for it.

It would be hard to know more without seeing it, and you probably don't want to hand a stranger on the internet what could be $500.  That said, I'd be willing to take a look at it if you'd like.
1493  Bitcoin / Development & Technical Discussion / Re: Bribery: The Double Double Spend on: November 04, 2012, 04:42:04 AM
Don't forget that no one will ever trust the attacker again after he publishes the proof of his misdeeds for the entire world to see.  Also, no one should be accepting transactions on low confirmation counts unless they can afford to lose it.

The attacker and the miners are pseudonymous. Coins are fungible. He can wash the dirty coins, put them in a new unknown wallets, and attack again using a fresh identity.

In a transaction big enough that you can afford to bribe miners to reverse it?  Not likely.
1494  Bitcoin / Development & Technical Discussion / Re: Bribery: The Double Double Spend on: November 04, 2012, 03:53:41 AM
Don't forget that no one will ever trust the attacker again after he publishes the proof of his misdeeds for the entire world to see.  Also, no one should be accepting transactions on low confirmation counts unless they can afford to lose it.
1495  Economy / Economics / Re: Who own the Canadian national debt? on: November 03, 2012, 10:49:21 PM
Similarly to the US, the majority of Canadian government debt is held by Canadian citizens.

 Roll Eyes
Completely false.

http://www.guardian.co.uk/news/datablog/2011/jul/15/us-debt-how-big-who-owns

Heh.  You didn't actually read that article did you?
1496  Bitcoin / Bitcoin Technical Support / Re: Get the address sent from on: November 03, 2012, 10:43:50 PM
Look at the transaction that you got.  The input part of that transaction will have a list of transaction outputs redeemed.  For each of them, look up the transaction and check the scriptpubkey part of that output.

But you really should figure out a way to do whatever you are doing that doesn't require that, because no matter how much you think you need it, the system totally doesn't work that way.  Transactions do not have From: addresses.
1497  Bitcoin / Development & Technical Discussion / Re: Thought experiment on security design of bitcoin protocol on: November 03, 2012, 06:55:38 PM
The biggest consequence is that no one would have taken it seriously.  And even now that MD5 is considered to be totally broken and should never be used for anything at all, the other constraints in the system would cover our asses if we used them.

Being able to find a collision in MD5 is totally not the same thing as being able to find two valid blocks with the same MD5 hash, or two valid transactions with the same MD5 hash, or two private keys where the corresponding public keys have the same MD5 hash.

Pieter is right, collision attacks don't hurt us at all, and even in MD5, preimage attacks don't exist.  Well, they sorta do, but they still require more than 2120 operations, making them barely better than brute force.  And I'm not even sure that a full preimage attack could meet the system requirements.
1498  Bitcoin / Bitcoin Discussion / Re: [ANN] Bitcoin Foundation on: November 03, 2012, 06:33:10 PM
You haven't even said it once yet!  You are just repeating your baseless assertion that the foundation has magical powers for evil.

And if you really think that my English skills are lacking, I'd be happy to take the red pen to your posts and fix all of your trivial errors.

Ok I am going to say it one more time. Both companies have employees, both companies' employees are probably more than likely in the foundation, they can vote based on what would be best for the companies if a vote like that comes up. I don't get why they have two big businesses sitting on a board for an open source project, where they stand to be able to gain from it. Businesses and the bitcoin should be as far a part as they can be, this is how we ended up in the mess we are in today. Again it isn't "baseless assertions that the foundation has magical powers of evil", it is called "Greed" and this is just the beginning.

Ok, so they vote.  So what?  What do you think they will be voting on, and who do you think will be bound by the votes?  What sort of matters do you think that foundation has authority over?
1499  Bitcoin / Bitcoin Discussion / Re: [ANN] Bitcoin Foundation on: November 03, 2012, 05:58:41 PM
As Gavin said, absolutely nothing is secret about a place where you can pay 3 bitcoins and gain yearly access. It is a small amount to pay if you are even remotely interested in bitcoins future, and does serve as a filter to prevent blatant rules abuse. Elitist for 30$? Sorry, SanFrancisco bums laugh at you.

Have fun in your little club, cause when Mark and Charlie have BUSINESS SEATS that have no checks and balances for 2 YEARS, that scares me and should scare everyone else. Cause right now Bitinstant and MT Gox, can edge out companies in their respectful niches and position themselves very nicely for the future. So spend your 2.5 bitcoins to be able to help them get even richer, and hinder bitcoin big business.

How can they "edge out companies"?  How?  What magical powers do you imagine this foundation possesses?

(Caveat: your answer must not assume that everyone is as dumb as you)

Thanks for your little message, you just make yourself look dumb by hiding it like a 13yrs old behind my back. Don't you think that all there employees are in the bitcoin foundation, and have voting rights. It isn't magic is called "position" and they are in two very powerful positions, in there seats. There are no checks and balances in this foundation. The members of this foundation are easily swayed, as both for the most part are very popular. If I created the foundation I would have no business people holding any more power than the population, to be honest even gavin has more power than he should. The people on the foundation should have nothing to gain, but wanting to spread the word of bitcoin. While bitinstant and mt gox are great services and spread the word of bitcoin very well, they have too much riding on bitcoin. This is where the foundation will fail and become corrupt if you don't believe me then so be it, and continue to suck on nipple of foundation as they pretend to be transparent.

Ugh.  What power?  That's what I'm asking you.  I'm not asking you to repeat your position that there are magical powers involved, I'm asking you "What power?".

P.S.  It was hardly behind your back.

Obviously you can't read and maybe english isn't your first language but I clearly say what power. I am not repeating my self for a third time.

You haven't even said it once yet!  You are just repeating your baseless assertion that the foundation has magical powers for evil.

And if you really think that my English skills are lacking, I'd be happy to take the red pen to your posts and fix all of your trivial errors.
1500  Bitcoin / Development & Technical Discussion / Re: Bitcoin transactions and fatty acids on: November 03, 2012, 01:15:29 PM
It would be expensive to do this.

The network uses a calculation called priority to decide if it should relay your transaction without requiring a fee.  The basic idea is that a simple transaction takes about 250 bytes, and "1 BTC that is 1 day old" is a good rule of thumb.  So, we look at each of your inputs and calculate the amount in BTC times the number of confirmations, and add those up.  Then we divide by the size of the total transaction, and if the ratio of BTC-days to bytes is worse than 1:250, we don't relay it until it has aged enough to make that ratio true.*  The standard behavior for mining is then to do the same calculation to decide if that transaction should be included in the next block candidate created.  **

So, if you are redeeming a 1 BTC input that has 1500 confirmations, most of the network will accept it with no fee up to about 2500 bytes, (very) roughly 10 outputs.  But then each of those outputs will be 0.1 BTC, and you won't be able to send them for free until 10 more days have passed.  If you need to move them faster, you can do so, but not for free, you need to include a fee in your transaction.

Spamming the network in this way very quickly becomes too costly to do.

* nodes running different software, or that have been modified, will do this differently.  Some nodes relay everything on principle.
** nodes running different software, or that have been modified, will do this differently.  Some nodes mine everything on princple.
Pages: « 1 ... 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 121 122 123 124 125 ... 195 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!