26 characters: 11111111111111111111BZbvjr I did wrongly remember the upper limit, though. It is 34 characters. I must have flipped the digits in my head.
|
|
|
If someone makes Bitcoin unusable for a long time by controlling >50% of the network, people might start weighting the "work" value of a chain by looking at its behavior in handling transactions. A chain of 20 blocks with no transactions is very likely to be malicious, for example. As long as it's done by weighting instead of outright rejection, legitimate clients shouldn't ever stay on separate chains for long.
|
|
|
Can this be done with nLockTime while remaining secure for sender and recipient?
The sender could leave the transaction open until confirming that the recipient is OK, and then replace it with a closed transaction. Or the recipient could send BTC to some trusted person and then cancel it with a transaction to self (a dead man's switch). It can't protect against double-spending.
|
|
|
I've successfully used Centregold before.
|
|
|
When you spend coins by signing transactions, don't you sign a double SHA256 hash of the transaction?
You sign some other stuff, too, which prevents that attack.
|
|
|
Trimming invalid characters is a good idea. The chance that you make a valid address from nothing is nearly 0 -- if you get a valid address, the user pasted one.
I've seen many sites assume that Bitcoin addresses must be 33 or 34 characters long, but they can actually be 25-43 characters in length.
All sites should verify address checksums. I don't like the idea of asking Bitcoin over RPC for every address, though: there's code for checking yourself in several languages.
|
|
|
A block with more transactions isn't "more valid". Miners can generate blocks with no transactions if they want. Transaction fees encourage them not to create empty blocks.
|
|
|
I thought it was pretty cool how I was able to generate so much BTC when I first started using Bitcoin. It was fun and unique. A few times I generated two blocks in a row with my 3000 khash/s. My CPU was pretty fast compared to others on the network. I sold 15,000 BTC on Bitcoin Market for ~0.003 USD: the all-time low on any market, AFAIK. I had measured my power consumption and determined that it only cost me ~0.001 BTC to make one BTC, so I thought 0.003 was a good profit margin. I knew the price would rise over time due to the deflationary nature of Bitcoin, but I didn't think it would happen so suddenly.
|
|
|
You guys are nuts! BTC hasn't even quite reached $2. I predict a drop to $1 or less.
Anyone want to bet me that it won't go above $20?
|
|
|
I vote for getting business that trade narcotics off the merchant list.
We do not want to promote that kind of thing on the official forum. Those who absolutely want to seek out that stuff, will be able to find it anyway.
Illegal goods are not allowed on the official forum. bitcoin.it is not official.
|
|
|
I agree that there are too many problems, though I disagree that there isn't much benifit. There are many situation where it might be useful to have a time in scripts. Escrow, to begin with, becomes doable in bitcoin, not to mention many other really cool features.
Most/all of that stuff can be done with nLockTime.
|
|
|
Although we're grateful to Satoshi for creating Bitcoin, should the fact that Satoshi has "rejected" an idea be sufficient grounds for not implementing it?
Satoshi knows more about Bitcoin than anyone else, so his opinion carries a lot of weight. In any case, I'm convinced that he is correct here. Allowing transactions to become invalid greatly increases the risk that random transactions with 6+ confirmations will become invalid, without much benefit.
|
|
|
Latency should never be a factor. Otherwise, someone with good network resources will have an advantage, which breaks the "one CPU per vote" principle.
It could probably be reduced to a minute or two with current network conditions. 10 minutes is designed to work with any future eventuality.
For timestamping, I'd just put a hash in the Bitcoin block chain. Bitcoin transactions can contain arbitrary data.
|
|
|
It makes client mode impossible, since simple clients don't know balances.
|
|
|
it means that in order to double spend, you would have to be able to compute 2 blocks (containing your double spend) before the rest of the network is able to compute 2 blocks
No. Even if the network gets one block between your two blocks, you refuse to build onto that block: you build only onto your blocks. Since you are a little faster than the real network, you can prevent all other blocks from appearing in your chain, which is the longest.
|
|
|
But the longest chain still has to be a valid chain correct (meaning, no double spends in that chain)?
It can't contain double-spends within itself, but it can double-spend transactions in conflicting chains. So you can double-spend from the perspective of a merchant if you have >50% of the network's computational power.
|
|
|
|