text:
What happens to the bitcoin network when the miners all stop in the future?
What happens to the bitcoin network when the miners all stop, years in the future after all the bitcoins have been mined?  How will the network continue to function?  Won't bitcoins then be useless?  What would be the incentive for an individual to continue using computational power to service all the transactions?  Isn't this like a ticking time bomb or is there something I'm not getting?

There is a similar question which is a community wiki.

Related: http://bitcoin.stackexchange.com/questions/5275/what-will-happen-to-mining-after-the-20-999-999th-bitcoin

Bitcoin becomes very insecure if miners stop mining. Think of how easy a 51% attack would be to pull off.
However, I disagree with your assumption that miners will stop. And certainly that if Bitcoin dies it would be because miners stop. I would instead think that miners would only stop if something else already killed Bitcoin. Bitcoin is designed to always give miners an incentive to keep mining and secure the network. If miners don't have an incentive to mine, then Bitcoin has already failed.
Many mining pools don't pay out income from transaction fees and the whole thing is often glossed over. But mining income is newly minted coins PLUS fees from the transactions you include in the blocks you generate.
Have a look at the tx fee statistics at http://blockchain.info/no/charts/transaction-fees
As I write this at the end of march 2013, it looks like tx fees were about 4 BTC per day a year ago and are now about 50 BTC. At the same time the newly minted coins in each block has dropped from 50 BTC to 25 BTC.
With 6 blocks per hour this means one year ago we mined 7200 BTC in new coins and 4 BTC in fees per day. Now we mine daily 3600 BTC in new coins and 50 BTC in tx fees. So tx fees went from being 0.00056% of the income a year back to the 1.39% of mining income they are today.
I'm sure you can see where this is going. No, mining does not stop when the minting of new coins stops.

I don't see how variable transaction fees can scale. I go to a merchant's website to buy, how do I select a mining peer to pay transaction fee to? Do I attach some bounty that any peer can earn if that peer wins the Proof-of-Work block? But what if my bounty isn't high enough to attract a peer given high transaction volume competing for priorities? This sounds very complex and unreliable and not at all like something that can scale to customers. Customers want to click one button and be done with the purchase and not waiting unknown hours debugging their payment processing. Amazon's One Click.

I will wait for a reply to clarify before I decide if I will downvote.

No one has given an answer to refute my question claiming that market-based transaction fees won't scale, thus I am downvoting you.

How gracious of you to give me 1 hour to answer before you downvote. I have now placed my answer with the question you link to above.

They won't ever stop!
For now they get the block rewards, but they halve every so many blocks. (can be changed but is unlikely to)
Later they will receive rewards that people put on transactions. It's still unclear how high those fees will work out to be. Likely all transactions will carry some very small fee, and miners will keep up the hard work to earn those fees.
I also expect "green addresses" to play a much bigger role in the future. Those addresses' transactions will be "certainly good", given they are owned by trusted parties.

I thought about rewards in the form of transaction fees too. Even you say "It's still unclear how exactly that will work." I know this is thirty years in the future and technology will have changed exponentially to say the least, but this seems like something important for the entire model of cryptocurrency. Why will miners work hard if they are not profiting for their efforts and a level worth the effort?  I still don't really get it, though I figure there are a few solutions that may present themselves by then.

Block reward will never change (changing it = you create a new protocol that's not bitcoin). And I don't get whats "unclear" about transaction fee? Today transaction fee make up a significant part of miners reward, and in the future we will probably see way more transactions = more fee to the miners. Also with ASICs, you can run a very powerful and energy efficient miner (so no reason not to have the ASIC running 24/7).

Nicolai, changing the amount or shape of the block reward is a technical change that is no different from previous protocol changes. The transaction fee's heights are still unclear, and what will happen with lower payed transactions. ASICs are not relevant to this discussion, the exact technology does not matter at all. I see potential for a future with a steady blockreward (no fixed maximum Bitcoins).

Changing block reward / the 21M limit is too big a change to still call the protocol "bitcoin". In that case you could create a fork called "x-coin v2" but it wouldn't be bitcoin. Also, I still can't see what is "unclear" about transaction fee? If you don't pay a transaction fee, then the miner has no reason to include your transaction (other than helping the network aka "being a good guy"), some miners will still include free transactions, but you will expect long transaction times. ASICs will mean that for few money (electricity) we can run a powerful network (difficulty).

If the technology gets better, the price per hash goes down and the defense needs a much higher hashrate to be safe. ASIC's high entry price makes it a slighly better defense than GPU's. You are also arguing semantics with calling it Bitcoin or not. It is still practically as Satoshi wrote it, still the bitcoin protocol. The Bitcoin is changed only a little. There may be other incentives to include transactions, like being a Bitcoin service provider. It is also possible there will be no strict minimum fee, which makes fees unclear to say the least.

Miners will have to decide whether

(a) they expect to be paid a fixed fee (as a minimum) for each transaction they put into their blocks, or
(b) a percentage fee (percentage of the amount being transferred).

(a) might seem like the obvious choice, because it costs the same amount of time and computing power to verify a small transfer as a large one.  On the other hand, (b) has the attraction that it encourages more transactions, and therefore more fees to be earned over all.  (Assuming bitcoin operates like a normal currency, there are always going to be more small transactions that people want to make than large ones, but on the other hand people will not make a transaction if a large percentage of the money transferred is eaten up in fees, so a fixed fee would operate to prevent small transactions i.e. the majority of potential transactions.)
Maybe the ultimate answer will be some sort of sliding scale, with a minimum fee, and then a percentage being charged that will vary downwards as the amount being transferred increases.

A lot will change in the crypto space before the last Bitcoin is mined. The revolution is DLT (Distributed Ledger Technology), not blockchain. Blockchain is merely the form of DLT that Bitcoin uses. The drawback to blockchain is that the network must wait 10 minutes before adding each consecutive block. This is to ensure that multiple computers do not add the same transaction to the blockchain at the same time. This is the primary purpose of the minors. This is also why the mining difficulty is always increasing. The network must always have a ten minute pause between each block.
If the miners only receive transaction fees for validating transactions then the people using Bitcoin will ultimately decide how much money they are willing to spend on transaction fees, verses using something else. Many miners will likely quit, thus driving down the cost of mining to the point where those who remain will profit.
So, to answer your question, because the network will always need a 10-minute pause between blocks, the only way Bitcoin will fail from miners quitting is if the transaction fees become so low you can't get enough miner to prevent a 51% attack.

When last miner stop mining, then I will be the miner.
When last doctor stop curing people, then I will... ętc.
Miners are also getting fee for transaction.

One of the answers I read above hit the nail on the head for me.
The innovation that cryptocurrency is responsible for is 'Distributed Ledger Technology' (DLT). And as was said above, the 'Blockchain' is simply one form of such a thing.
In my opinion, Bitcoin and its Blockchain are together, just a prototype that provides proof-of-concept for the 'proof-of-work' algorithm. What I'm hinting at is the inevitability (in my mind) that Bitcoin and its Blockchain (BaiB) will be superseded by something a lot more suitable for international transactions, finance and banking.
I now believe there is no 'one-size-fits-all' when it comes to DLTs and particular use cases. BaiB would be the perfect solution for government record keeping, tax records for companies, expense accounts, payroll, etc. but, Ethereum has proven itself an amazing innovation with its own set of revolutionary capabilities. Then, there's IOTA, a coin that has deployed an amazing innovation for DLT, that being something called a 'Direct Acyclic Graph' (DAG). This DAG is far more suitable as a global payments solution than BaiB as there is no transaction fees on the network, no mining required and the transactions are instant. I can't see how Bitcoin will go about surviving in an atmosphere evolving so quickly!

Welcome to the BTC SE! Your answer is more an opinion of which cryptocurrency will be most important in the future, than an answer to "what happens to the btc network when all the coins are mined". Just fyi, the BTC SE aims to be an objective Q/A posting board, more than a discussion forum of opinions. I hope you'll find some interesting info on this site, and continue contributing as well :)


text:
Longest "natural" fork
Once a day, roughly, two competing blocks with the same height are mined, which leads to one of them being orphaned.
Was there ever a "natural" case in which the fork lasted for two rounds? By natural I mean a fork that was not created by any bugs such as the one in March 2013 ( https://bitcoin.org/en/alert/2013-03-11-chain-fork ).
What was the longest fork?
A naive back of the envelope estimation says that it should happen once in 100 days, under the assumption that half of the network heard about each of the competing blocks first. Therefore, a more realistic estimation would be once in a year or two.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
What factors determine how long confirmation takes?
Simple question...
What are all the factors (all of them!) that determine how much time X number of confirmations of a transaction takes?

How many miners are currently mining, how fast they are mining, how much of a fee you paid, and whether you're a well connected node or not (only matters for first confirmation).

You missed one factor: the random variance as blocks aren't solved exactly every 10 minutes. I suppose you could say this is "how fast they are mining", but it's independent of the hashrate.

Really, the current total mining speed matters little as long as it hasn't changed significantly since the last difficulty change. Random variance and fee paid are by far the most important factors.

That's not really a factor because nothing has control over it.

There's an estimated block generation time of 10 minutes, however, due to the randomness of finding the block, there may be an hour gap between blocks followed by 3 within 10 minutes. It's never predictable at a specific given time.
Additionally, miners prefer transactions with fees attached, because the fees are paid back to the miners. This incentive will become more important as the mining reward continues to halve.
There are other factors that do contribute, but the two above are by-far the most influential.

Why do you say there may be an hour gap when the chart at https://blockchain.info/charts/avg-confirmation-time clearly shows it to be under 15 minutes for almost 99% of times?

It's possible to have a long gap between blocks followed by several blocks being solved in rapid succession, illustrating that there are few factors under the control or influence of anyone on the network, including how long confirmation takes.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
How can I configure my miner for two pools simultaneously?
I have a single sc 30gh/s miner.
I want to run cgminer as well guminer at a time simultaneously, will there be any difference?
I want to use cgminer to mine at BTCGUILD and guminer for mining at SLUSHPOOL.

What are you trying to accomplish? Why do you want to do this?

I downvoted, because your question is nearly illegible and it is hard to understand what you are asking.

You can use the cgminer -c (config option) to add multiple pools and set up quota system to mine a certain percentage on each pool.
From the CGMiner Readme:
"pools" : [
        {
                "url" : "poola:porta",
                "user" : "usernamea",
                "pass" : "passa"
        },
        {
                "quota" : "2;poolb:portb",
                "user" : "usernameb",
                "pass" : "passb"
        }
]

Will assign 2/3 to poolb, and 1/3 to poola.


text:
Why is BIP32 not simply PublicKey multiplication?
I understand that:
pubkey(a + b) = pubkey(a).combine(pubkey(b))

where a and b are secret keys.  (See: https://crypto.stackexchange.com/q/83694/17505)
If, under the circumstances:

Bob wants to pay Alice, by creating transaction output whose private key only Alice will know, yet whose public key different from Alice's public key.
Alice publishes pubkey(alice_secret).
Bob creates an one-use, random secret key x_secret.
Bob publishes x_secret.

Do the following conditions hold?

Only Alice can sign messages with the secret key (alice_secret + x_secret), as no-one else knows both secret keys.
Anyone can verify such a message's signature using pubkey(alice_secret).combine(pubkey(x_secret)), as pubkey(x_secret) can be calculated from the published x_secret.

If so, why is BIP32 more complex than this?

BIP32 is hierarchical deterministic key derivation. What you describe is not deterministic, but relies on foreign data. Could you elaborate how the two fulfill the same or a similar purpose? (Or is that your question?)

Thanks, I think you've answered my question.  What I am describing is not deterministic, but instead a way for Bob to Pay Alice in a way that Alice can receive the funds, but using a different public key for each transaction.  If you rephrase your comment as an answer, I'll accept it.

The purpose of BIP32 is to provide a standard for hierarchical deterministic (HD) key derivation. BIP32 allows users to back up the initial secret of their wallet, and then reconstitute all derived addresses from this initial backup in the future.
The mechanism you describe is essentially an application of an Elliptic Curve Diffie-Hellman (ECDH) to establish a shared secret. It relies on foreign input and therefore (as described) does not fulfill this backup function—each new address requires the sender's secret to be retained for the address to be recoverable in the future.
A similar approach is in use for  Monero's Stealth Addresses. AFAIU, Monero solved the backup concern by using OP_RETURN outputs on the Monero blockchain to establish the shared secret. This ensures that the recipient key is sufficient to rediscover the shared secrets when resyncing the blockchain. This comes with some trade-offs: finding all recipient keys is much slower (since the blockchain has to be parsed) instead of something that can be done with local data even on offline devices and each address creation adds more data to the blockchain.

BIP47 was not well received, and is discouraged from being implemented.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Could there be hyperinflation in Bitcoin?
Currently the creation of new coins is fixed at a certain rate which halves every few years and will at some point in the future drop to zero. As I understand it, this is by consensus, i.e. all the nodes in the network agree on this protocol.
Suppose at some point in the future the Bitcoin community were to decide that the currency's deflationary bias wasn't such a good thing for the economy and that it would be better to start expanding the monetary base at a higher rate. What would it take for such a policy to take effect? Specifically, what percentage of the nodes in the network would have to vote in favor of the new expansionary policy?
And if indeed the network could vote itself into an expansionary policy, is it then also conceivable that it might vote itself into a hyperinflation, where the rate of expansion gets out of hand?
In short, what does it take to change the rate of expansion of the Bitcoin monetary base, and how easy or difficult is it to achieve as compared with the stroke of a central banker's pen?
PS: I can see a future where the top miners who own most of the computing power decide amongst themselves that they deserve more than their share of bitcoins after all and so they decide to institute the change, and I'm curious to know how the network would handle such an event.

You are misusing the word "hyperinflation". It doesn't mean what you think it means. Bitcoin is experiencing hyperinflation right now. It has halved in value in the last 3 weeks. If it continues to halve in value every 3 weeks for the next year, it will become worthless.

Not everybody needs to agree (that would probably never happen!) for there to be a change in the protocol (which would be needed to cause inflation), but it's not based on just a majority of hashpower either.
It's really a vast majority of users that need to agree; if just 51% of users decided to change the protocol, it's entirely possible that it would cause a massive loss in confidence in both resulting chains. Retailers and every other service would need to choose which to accept (or accept both), and try to understand the difference, and communicate that on to users.
I think most of us know its a bad idea to go down that path with Bitcoin while it's not yet been fully accepted as mainstream. A smoother option would probably be to create an alternative cryptocurrency with a new name, rather than trying to split the Bitcoin user base into two parts.

It can very likely happen. See my answer. The big corporations are being expected to provide free mining in the future. This has been the expectation, and that is why market-based transaction fees don't have to scale well. No one has refuted that transaction fees can't scale and Gavin admits it. The fanboys can continue in their myopia like good little slaves that think they understand logic.

Do I understand correctly that hash power doesn't matter here, nor does strictly speaking the number of nodes (one participant could run multiple nodes); and that in fact what really matters here is the number of participants (i.e. individuals and corporations) who agree to such a change in the protocol?

@Manish, that's the way I see it.

@Manish, if we're talking about forking the blockchain, it could even split 4 ways with 30%, 27%, 25% and 18%... anyone can run their own blockchain, but it's only valuable to do so when others find it useful.

@ShelbyMooreIII, you're assuming that these big corporations also have control of retail, which would remove the option for alternatives if they abused their power. In that case, which currency is used (and what the fees are) hardly matters; they have control anyway. You're absolutely correct that we need more than just Bitcoin to retain the freedom we have.

@HighlyIrregular if the Walmarts and Amazons are more profitable, they only need to control a fraction of retail, in order to justify the expense to subsidize mining to obtain 51% attack ability. And a monopoly on processing means they can take profitability from the rest of merchants who need to get paid from the P2P currency. There are many vectors that don't require your false assumption. I find the logic of the people in this SE to be very weak. They downvote because they can't reason well second order effects that make my statements true.

@HighlyIrregular needing more than Bitcoin is not a sufficient excuse for handing the monopolists the pie on silver platter, by refusing the fix Bitcoin. Dumb slave I am not! With a correct P2P currency we can still transact more freely in spite of what shenanigans the power elite have up their sleeve. Sorry we've been friendly recently, but your logic stinks of 1984. Just give in? Normally the power elite back off when they see they are outnumbered. But the problem is people are becoming too dumbed down to even have good logic skills and powers-of-discernment.

@HighlyIrregular there is also a problem that voters here are not assimilating enough information. The decline of debasement in Bitcoin forces the scenario I fear, because market-based transaction fees don't scale. I read that even Gavin has expressed his doubt that they will. That is why I said it has been planned since Day 1, besides that is what was boasted to me, so I am repeating the paraphrased quote.

let us continue this discussion in chat

@ShelbyMooreIII, I've added some more comments to the chat...

I can read your chat, but unable to reply there. Removing credit card fees while handing the monopolists their 51% attack is not what I would call "a community of geniuses". Morons is what I'm thinking. Sorry. Variable transaction fees will never scale, it is the wrong model. Debasement must continue. Debasement is good for the economy. That is a provable fact.

@ShelbyMooreIII, "Good for the economy" isn't always best for humanity, and is a term than can be skewed to suit individual purposes. War is thought by many to be great for the economy. Personally, I'm more interested in measuring [GNH] (http://en.wikipedia.org/wiki/Gross_national_happiness) than  GDP. Can you point me to a proof regarding Debasement?

Proof that debasement is good, is so obvious common sense. Can you imagine a world of slavery where the rich got richer just for collecting interest on bonds and doing nothing with their mind? That is what you delusional goldbugs get with NO DEBASEMENT. Brilliant morons! There is a big difference between prevent excessive inflation (good!), preventing insider control over deflation/inflation rate (good!) and NO DEBASEMENT (bad!!!!!). I hope you all can realize that! You all have been hoodwinked by Ponzi Satoshi.

When you all get over the embarrassment of being involved with Bitcon (not Bitcoin), then let's get busy making something to compete with it and eliminate this diabolical design and plan that Satoshi fooled all of you into joining.

@ShelbyMooreIII, at some point Bitcoin will reach a peak demand, at which point the only benefit one could obtain through holding bitcoins is to corner the market (which often turns out badly) or manipulate it at a smaller scale. They don't pay interest. My guess is that with the current model traders will manipulate the market causing an extremely volatile exchange rate; another problem not yet solved. I'm no goldbug, by the way, though there are a few  involved in Bitcoin...

Why you mention ROI? I wasn't referring to it. I mean embarrassment for being involved with enslaving mankind in a digital kill switch for transactions.

I don't want to get into your stupid flamewars, but I still want to ask technical questions. Let's say that there is a "war" between pro-deflation and anti-deflation Bitcoin users and miners with one having only slightly above 50% - each one uses a different bitcoin software - what would happen then? Would there be two blockchains with the "deflationary" bitcoin client downloading only the deflationary one and vice versa? Or would there be some weird blocks flying around? What would happen exactly, technically?

@KarelBílek, if miners that didn't change were in the minority, their blocks may start to be rejected (depending on how the change was implemented), or there may be some other consequence such as miners receiving a lower block reward.

As I understand it, this is by consensus, i.e. all the nodes in the network agree on this protocol.

No. The network doesn't vote to change itself. Read this: What can an attacker with 51% of hash power do?
Arguably, you could try to get a change to the bitcoin client implemented through astroturfing.
Here's how you'd increase monetary inflation.

Find this code:
int64 static GetBlockValue(int nHeight, int64 nFees)
{
    int64 nSubsidy = 50 * COIN;

    // Subsidy is cut in half every 210000 blocks, which will occur approximately every 4 years
    nSubsidy >>= (nHeight / 210000);

    return nSubsidy + nFees;
}

Change 50 to, I dunno, 100.
Convince everybody else to do the same thing. Not just a majority - everybody.

And what if I do 1 and 2 and part of 3, i.e. say I get a majority, then does that mean we end up with two chains, and if so then which is the "real Bitcoin?" Since it's peer-to-peer I'm assuming it's just Bitcoin 1 (devalued) and Bitcoin 2 (original) from that point on.

@Manish Which one is the real Bitcoin? Good question - I'm sure that it's a question that would generate many flamewars should this situation come to pass.

I downvoted because this is factually incorrect. Not  everybody is required. Attacker only needs to change 51% of the mining clients' software (actually those that comprise 51% share of hash power) which you the attacker are running on your peers. Are you confused?

@ShelbyMooreIII Old clients will just reject the new chain. That might cause them to enter safemode, but that can be turned off with a simple -disablesafemode.

@NickODell I don't see how that is feasible. If the user wants to spend his money, and his client won't let him send a spend transaction, the user is going to upgrade. And mainstream (i.e. naive) users will do what they are told to do by the major sites they visit, e.g. Walwart, Amazon, etc.. So I guess you win an irrelevant technicality but you lose the overall point.

@NickODell But if the old clients reject the new chain, would they still continue to function on their own (i.e. send and receive bitcoins), albeit on a forked chain? Or would they become unable to do any transactions? If 51% decide to change the protocol then sooner or later the rest would have to get on board (so Shelby seems to suggest)? Or is there any other recourse for the 49% who stick with the original rules?

@Manish Clients will go into 'safe mode' if they see an invalid chain that is longer than a valid chain - the logic being that there's probably a problem that should be fixed before you try to make transactions. That's where the -disablesafemode switch comes in. Once disabled, their transactions would be relayed and mined by both chains, but over time, the two chains would disagree on more and more.

@NickODell So the shorter "valid" chain would also have its transactions confirmed by other "49%" nodes (but not by the "51%"?), and it could continue to function as its own currency? Would block generation happen at the same rate, i.e. one every 10 minutes, because now the difficulty for the shorter valid chain would be adjusted downwards (as most of the powerful nodes would be off on the longer "invalid" chain)?

@NickODell In short, are you saying that with -disablesafemode the old clients could totally ignore the longer invalid chain and continue to function as if nothing had happened? i.e. old Bitcoin could remain old Bitcoin even under such an attack, and the economy could continue to function as normal?

@NickODell "I'm sure that it's a question that would generate many flamewars should this situation come to pass." Actually it'll be more than just flamewars. If you've lent me "bitcoins" to buy a home and now there's a fork in the chain, which bitcoins am I supposed to pay you back in? You'd prefer the original ones, I'd prefer the devalued ones. Our contract would have to be clear about this, and right now no one understands that this is even a possibility (not in the mainstream anyway).

@ShelbyMooreIII Correct me here, but I think you don't even need 50+% hash power to achieve this. If you're breaking the block creation fee rule, you might as well break the proof-of-work rule, so instead of proof-of-work now you just have the miner's signature. Old clients reject the block, but modified clients (supplied by said genius miner) accept it by verifying signature. Now the modified clients work with an alternate branch which is compatible with the main branch (a superset of) but contains the miner's extra out-of-thin-air bitcoins as well.

@ShelbyMooreIII Now this miner's extra bitcoins can't be spent on the main branch, but otherwise business can go on as usual between the old clients and the modified clients, because valid transactions would still be accepted into both branches. It's only a matter of getting more and more people to adopt the modified client software then, which could easily be achieved by promising a reward of BTC 100 (happily created out of thin air) per new download plus a referral bonus. These reward/bonus bitcoins can only be spent among users of the modified client, but that's a growing user base.

@ShelbyMooreIII So turning an alternate branch into the dominant one is only a matter of getting more and more people to adopt a new client which has a different block acceptance rule than proof-of-work. If a big company like Apple were to come up with a sexy Bitcoin client app (bundled with OS X?), they'd have most of the users, and then they could become the dominant fork. No need for 50+% hash power, only a significantly large client base (easily achieved in so many ways).

despite the fact that there are some possible kind of 51% attack for miners and despite the fact that miners really love increase bitcoin creation rate and make profit; you should know they cannot change the basic rules of blockchain like changing block generation protocol and rules.
anything related to block protocol must be accepted by full nodes (~20 thousands of live full nodes) who are mostly influenced by bitcoin core school of though (a group of independent wise developers). they wont accept such a change because they are more like bitcoin owners rather than miners; so they would be against inflation by proof of game theory.
what miners can do for that? nothing, as we saw in SegWit2x activation debate, although most mining cartels was in favor of SegWit2x they couldnt run it because Bitcoin Core Developer team rejected the proposal. that was a simple example of changing block protocol (its size); which could not take the ride by just miners supports.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
What is the appropriate forum for technical discussions about Ripple?
Is there a mailing list where software developers and other interested parties can have technical discussions about the Ripple source code and other aspects of the network?
Bitcoin Stack Exchange is more suitable for Q&A, where questions have definite answers.

There are a number of forums. Ripple Labs has an official forum that the developers read regularly. There's also a Google Ripple Server group.

In particular, I'd direct you to the Developers sub-forum of the official forum for any technical discussions, even if you're not a developer.

@dchapes Why do you have multiple forums?

It's a specific part of the same forum, not another forum.

I like http://opencoin.in  This is most active Ripple discussion forum

There is not very active Q&A:
http://www.rippleoverflow.com/
And mostly active ripple chat at freenode:
IRC chat.freenode.net:6667 #ripple


text:
Can bitcoin buy food?
I am very interested in this idea.  Fundamentally though, if these coins are simply used to buy more stuff (videogames, alpaca socks...), how does this help with buying necessities or help the poor for their basic goods?

Why couldn't they buy food?
It's up to the company if they are willing to take a alternate currency.
The more people the have bitcoins, the more reason for places to start accepting this form of payment.

Consider bitcoin to be more like Gold than a credit card. You can't easily spend Gold at your local store either, but Gold has enduring value. Bitcoin grows in value greater than Gold because it not only is a store of value (that resists fiat devaluation) but it also has an intrinsic value of greater future convenience than a credit card. Eventually the average person will recognize that holding fiat is a liability and will prefer to be paid with bitcoin. People acquire bitcoin now for that future.
If you want give your money to the poor then offer them fiat or a prepaid debit card. Many became poor because they preferred instant gratification over acquiring items of true value. Sometimes the more you help someone, the slower they learn.


text:
Could the BGP attack be used to split the Bitcoin network?
I just learnt about the BGP attack:
http://www.wired.com/2014/08/isp-bitcoin-theft/
http://www.secureworks.com/cyber-threat-intelligence/threats/bgp-hijacking-for-cryptocurrency-profit/
The attacker was able to redirect the miners to its own pool to effectively "steal" (defraud them of) their mining rewards.
I don't know enough about the Border Gateway Protocol, but I'm wondering if this sort of an attack could be used to split the Bitcoin network itself, essentially by hijacking the node discovery process. If an attacker could hold the split for a few hours (assuming enough hash power), it could successfully execute a double-spend on its target.
Does the client use any kind of authentication with its peers?
P.S. Of course, there would have to be enough economic or political motivation to carry out such an expensive attack (such as to bring down a popular exchange and create media panic).

I should clarify that my question is not about whether or not it is economically feasible to do this (that would be a separate question). My question is whether the peer discovery process is vulnerable to this sort of IP hijacking. To keep it simple, let's assume that the attacker has the equivalent of close to 100% of the network hash rate sitting in reserve and ready to deploy any moment.

Sidenote: I think what you are describing is a method for achieving variant of the Sybil attack: Also see bicoin.it: Sybil Attack, Can I trust the peers I am connected to?

Having control over BGP and being able to split the Internet in two pieces can indeed be used to carry out an attack against some Bitcoin users. It might not even be that economically infeasible as you may think.
The adversary does not necessary need to have a control over a big portion of the Internet backbone infrastructure - he only needs to cut off a (small) region. This would effectively cause a split of the blockchain, without the victims noticing any problems with their connectivity to other peers as the communication is not signed (nor encrypted). In other words, if you can redirect the traffic going to a well-known Bitcoin node (by "stealing" his IP), you can easily replace him and act in his name.
Of course, that's not to say that this would go totally undetected by the public. People operating nodes in the cut off region would see a dramatic downfall in the Difficulty hash rate, and they could also see their inter-regional transactions not getting cleared and confirmed by their recipients. However, this kind of attack can still be efficient against a targeted victim, providing that it's performed carefully.

Some of BGP routers can be spoofed outside. You can split the BitCoin network in case gain access to one of the Internet Exchange Points. But some other BGP routers can be vulenrable for the BGP Leaks


text:
Solo mining just for luck, realistic?
Just turned my attention to mining and the concepts are quite new to me. First of let me be clear: I realize that my hardware setup is far from ideal for mining. This is also the reason why I do not want to pool, I would simply provide a too small a share. I will be CPU mining at first, ASIC later on.
I would however like to test my luck. Mostly just for fun, I'm completely fine with the idea of never actually solving a block. I see it more as a lottery. I just want to confirm my idea so that I am not missing something: Do I have a chance of solving a block?
If a block is solved every 10 minutes, and the difficulty goes up continously. Do I even have the time to attempt a solution? I understand that the current work has to be abandoned when a block has been solved, rigth? Is there, for example, a lag here that yields my efforts useless?
What are the odds? Are the actually the % of my speed vs the network's?

related: What are the odds of discovering a block as a solo miner?

Check this page: How soon might I expect to generate a block?
So with the current difficulty  510,929,738, and a 1Ghash/s mining rig (faster than your CPU) you'd do this math:
510929738 * Math.pow(2,32) / Math.pow(10,9) / 60 / 60 / 24 / 365
So to find a block at this difficulty with a 1Ghash mining rig it would take you about 69 years on average.
Good Luck!
PS: Math.pow(2, 32) is simply the JavaScript version of 2^32

Where 69 years is the expected time, it could be much quicker with luck, but likely much longer because the difficulty its constantly increasing meanwhile.

Thank you. One more thing, is theory and practice the same thing in this case?

@Isac: In theory, theory and practice are the same. In practice…

As dam close as. Don't use your CPU, use the electric bill your running up to go buy lottery tickets instead, better odds.

Thank you, I think I will buy a USB Block Erupter just for fun. CPU is as you say, very useless.

you miss the point of the question really. What's the odds of a lottery buyer to win it? Maybe one in 10 million or something. Yet someone could buy only a couple of times and win it. Does everyone have to wait years to win it? Of course not. The math may say 69 years, but your luck might actually make that into a couple days. I think that's what OP is asking.

@mavili: It is impossible to know when you are supposed to be struck by a lightning. All we can say is that if you wait for x years then you probably will be.
PS: today difficulty is 888171856257.3206

As long as you're in good communication with the network and have a hashrate measured in something better than minutes per hash, yes, you technically do have a chance of successfully mining a block, even if your hashrate is tiny compared to the whole network. Then the question is, what are your chances and should you do it? I think an analogy with a lottery is apt.
In one week, a lottery might cost you $2 (for one ticket) and give you a 1 in 175 million chance to win $100 million (ignoring smaller prizes, splitting prizes, etc.; complicates things too much). This gives it a return on investment (ROI) of about 29%, so we'll treat this as our baseline: if it's lower than this, it's worse than the lottery and you shouldn't "play".
If you buy a $34.52, 5 GH/s ASIC miner that uses 2.5W of power, you might spend about $0.06 in a week to have a 1 in 13,889 chance to win $11,349. Not counting the upfront investment, this is a 1,361% ROI, so it's worth it. If you factor in the cost of the device (split over a year) and a profitability decline (since the rest of the network will be speeding up), I think you're still looking at an ~80% ROI.
In one week of CPU mining (assuming 20 MH/s at 70 W), you might spend $1.75 in power to have a 1 in 3,472,222 chance to win $11,349. This is a 0.18% ROI, so CPU mining really makes no sense, even as a lottery (it'd be better to just buy a lottery ticket).
(my calculations are at http://pastebin.com/ERJHshFG)

Lottery ROI is consant. Bitcoin difficulty is not. That 80% ROI of Bitcoin ASIC mining will be 8% in the next 6 months.

@TimS, but surely there's a minimum amount of computational power you need before you can even "take part in the bitcoin mining lottery" right?

@Pacerier There is a minimum. E.g. you can't do it with human calculations, because by the time you finish one hash (~9.4 hours), more blocks have been found. If you could do one hash in 1 minute, you'd average 10 hashes per block, maybe wasting ~5% of your effort. I'd estimate 10 minutes per hash as the minimum to participate: you could do approx. 1 hash per block. There is a chance that hash is the right one! You've played the lottery. (any computer is measured in kilohashes per second, at least; many times faster than the minimum)

@Pacerier note that there is no hard minimum. It's possible (though exceedingly unlikely) that no blocks would be found by the network in the ~10 hours you're calculating a hash by hand, and possible (though exceedingly unlikely) that your hash will meet the target difficulty, and possible (though exceedingly unlikely) that you did not make any mistakes in that 10 hours of arithmetic. However, I'm pointing out that when you get into the range of minutes per hash (or slower), there is an extra limiting factor: blocks have likely been found in the meantime.

@TimS., Good points, didn't thought of that hard minimum. Btw, that extra limiting factor is actually closer to 3 minutes right? Since we had to factor in the delay of actually getting notified when someone else has won lottery.

@Pacerier Blocks are typically propagated in seconds, so that's not significant for our purposes. (I'm assuming that you're using typical modern hardware for everything except the actual hash; e.g. if you're on a dial-up connection, your time to get the block might be significantly longer than typical)

I do not think the question was about the "how long" it would take in average, but what are the odds, which is something completely different from my point o view.
If I understand well the concept of solving blocks then there are always more people/groups/pools trying to solve one block.
If that's so then solving a block is always more about the luck than the brute force you have. Even if you have a 1GH rig, you can still find the solution quicker then 1PH pool.
Question is: what are the odds that it will happen?
I would expect a ration : to take place in the answer.
So if the current total H-power is about 7.6PH it means that with 1GH rig you have 1:7600000 probability to solve the block approx. every 8 minutes. Which is 1:116 per a year, if the total H-power does not change and it basically does not depend on the difficulty, as the difficulty is based on total H-power.

You are correct, the question was about the odds of the asker succeeding in finding a block. However, you can either express the odds as chance per block or as expected time until the outcome will be achieved, Luca has chosen the latter. The 1GH is also highly over-estimating his CPU's mining power, a more realistic value would be less than 0.05 GH/s. So, the odds are more along the line of 1:3320 per year, traded for the energy cost of running the PC at full-blast for a year.

I'm solo mining AmericanCoin on a US$6/month VPS generating about 7 scrypt kilohashes per second, and just won block 55311 about an hour ago, after about 8 weeks of trying with the random-nonce scrypt-mining script linked to from my blog. so it can be done, if the difficulty is low enough. it might have worked just as well or better with the built-in linear-nonce mining code, but I figured using random numbers would give me an edge in the "luck" department.
here's the current difficulty. when I started it was about 1.9, then went up to about 4 before dropping back.
jcomeau@aspire:~$ americancoind getmininginfo
{
    "blocks" : 55328,
    "currentblocksize" : 0,
    "currentblocktx" : 0,
    "difficulty" : 3.51815597,
    "errors" : "",
    "generate" : false,
    "genproclimit" : -1,
    "hashespersec" : 0,
    "networkhashps" : 19038678,
    "pooledtx" : 0,
    "testnet" : false
}

so it's not nearly paying for itself, but as a proof-of-concept it was worthwhile to me, as well as being a cheap way of getting my gambling "fix".

It will not improve your chances. It doesn't even affect your gambliness.

@jcomeau_ictx, Did you just won 25 btcs?

no, not mining BTC. I've only successfully mined AMC and ARG.

how do you mine through the command line? is this a feature built into all bitcoind derivative code?

by writing a script that communicates with the daemon through RPC. mine won't work with Bitcoin any more, as it no longer provides the getwork call. the script is linked to in my answer above, via my blog, to Pastebin.

It's better than being in the lottery!
The chance you actually find a block will sadly decrease over time (probably). Thing is, if you're lucky you win the lottery. And if you don't get lucky, you don't win and get nothing.
The advantage of being in a pool is that you play in more lotteries, so your luck averages out . If you get lucky 1% of the time and you try once, you probably won 0% of the time. If you try very often it will tend to balance around 1%.
So, all chance calculations aside, are you feeling lucky?
To answer your question more directly: the long block-intervals (10 minutes) are there to reduce network-lag's influence on people's ability to mine on the newest block. There's some influence, inevitably, but others endure it too. Pools can have a minor advantage if they're close together, but the miners connect through them instead of directly. I think there'd be no difference worth mentioning. Short: Yes, it is your % vs network %.
Small footnote should be made about selfish mining, if another pool is big enough they'll have a mining advantage. Smaller it'd be a disadvantage. It's not being done and I hope pools will stay spread thinly enough to make it ineffective. You can safely ignore this. It also doesn't likely matter when you're "lottery mining" (you're still betting just on your own luck!).
Note: you'll have more luck solo-mining LiteCoin or another GPU/CPU coin. Unless you own an ASIC, of course.

Better than which lottery?

Well.. Assuming that your mining hardware is equal to others' you'll be better off than any lottery. Provided the lottery works as expected (collect money and give it to a single participant - fees). But with worse hardware it all just depends.

question, if i am in a pool and did find 3 blocks in 12 hours... would solo mining be of consideration ? should i expect to find 3 or so a day or did the pool actually helped narrowing the winning slot ?

The beauty of Bitcoin is that it provides anyone with a chance to earn free bitcoins. No matter what statistics are used to calculate the odds of hitting the jackpot, they can never be used to predict the outcome.
As we all can read in the numerous variaties and complications (when it comes to calculating probabilities) in the above mentioned posts, it's obvious that there will never be a mathematical model able to predict the possibilities.
There are too many variables that change continously overtime (diffuclty rate, amount of miners, growing blockchain etc.)
Instead of focussing on mining itself you better try and find a way to reduce the cost. If one could use solar energy to power his/her computer then it's no problem at all to have it up and running up to 20 years or even more. In that case it's cheaper then taking part in a lottery and your chances to hit the pot will be no more or less the same either way.
That's why we call it luck ;)

Downvoted: "No matter what statistics are used to calculate the odds of hitting the jackpot, they can never be used to predict the outcome. As we all can read in the numerous variaties and complications (when it comes to calculating probabilities) in the above mentioned posts, it's obvious that there will never be a mathematical model able to predict the possibilities." For being ill-informed and absurd.

authors: Александр Рыжков


text:
How much energy will the Bitcoin network eventually consume?
A recent Bloomberg article stated that the Bitcoin network currently consumes about half as much energy as the Large Hadron Collider or enough to power 31,000 US homes. Even if the article is way off the mark, it is undeniable that the network's energy consumption (based on hash rate) goes up in direct proportion to the market price of a unit of the Bitcoin currency.
According to blockchain.info, the network is currently consuming 1,203.97 megawatt hours per day.
How much energy is the Bitcoin network expected to consume as the price of a bitcoin goes up from around $100 today to $1,000, $10,000, and so on?

To help answer this question, let's assume a shorter time frame and "all else being equal," i.e. no change in block creation fee (currently 25 BTC), no change in hardware efficiency, energy efficiency, and so on. In other words, let's say the market price of a coin goes up to $1,000 next month and $10,000 the month after, then calculate how much energy the network would consume given the economics.

The algorithm that blockchain.info is using had been out of date for more than a year.  By far the majority of hashes today are created using ASICs which are 50X to 100X more efficient per-hash than GPUs are.

You make a false claim that electrical consumption goes up as the price goes up.  More efficient hardware causes less efficient hardware to be removed from service.  So actually we are possibly already past peak electrical consumption as ASICs are forcing GPUs out of the mix.

@StephenGornick More efficient hardware drives less efficient hardware out, but it just means more hash power is deployed (difficulty raised). The arms race continues, limited only by the cost of energy and the market price of a bitcoin.

The specifics of hardware (cost efficiency and hashing rate) are not very important. The availability of the most competitive mining hardware matters, but in the long run, the cost of electricity burned will tend towards the value of BTC granted to miners. obviously it won't quite get there (they have to return their hardware costs), but barring availability issues like with today's ASIC's, it's going to get pretty close.
After all, setting up a mining operation is a no-brainer for anybody with a technical background, and hardware is a "sunk cost" - which also does nothing useful other than maintain the BTC network.
So at 25BTC per 10 minutes = 150 BTC per hour; about $18,750 worth currently. If only about half, or say $10K/h are spent on electricity costs, assuming 12¢ per kWh, that's 83MW.
A gas/oil/coal power plant gives out an output of around 1GW.
So yes if BTC goes to the ~$1k range over the next few years, it will draw about as much energy as an entire power plant produces. That's a lot of real world physical resources burned away for securing a financial transactions network with a $10B cap (at that price level).
It does get cut in half every four years though, with the halving of the block reward.

Right. Now it's at >0.1% of global world energy production - just for a lottery who gets to reap in the next block reward. The halvings were offset by the price raises. It seems many are still unaware that the energy usage is about proportional to the block reward plus transaction costs as energy is most of the cost and new miners will come in until there is only a thin margin, and that if bitcoin raises ten times in price again we will tend to >1% of world energy production, just because insisting on PoW. Entirely mad, right?

The upper boundary for energy usage can be described with a function of the profit and energy costs. Miners won't ever pay more for energy than they get from profits. The actual energy usage formula will also have to count for the hardware costs.
The formula will look something like this :
max energy usage = (profit - hardware costs) / energy cost per unit
profit = exchange rate * generated btc
generated btc = transaction fees + block creation bonus

As you can see, the energy usage depends on the following factors:

Energy cost per unit (kWh)
Hardware costs
Block creation bonus (currently 25, some day 0)
Transaction fees (currently hardly relevant, some day very important)
Exchange rate

And, of course :

How much money the miners want to keep
Taxes?

[edit]
$10,000 a coin times 52560 (blocks per year) times 25 (coins per block) gives $13,140,000,000 mined USD a year. Yes, that's thirteen billion USD in mining profits. If we divide this by $0.20 per kWh, then the upper boundary for energy use will be 52,560,000,000 kWh (52 TWh), roughly 2/1000 of the total energy consumption of the USA. Of course, if we assume that 90% of the money goes to hardware and not energy, the actual energy usage will be more like 5TWh. (Link to the calculation)

Your answer is great; but it falls just short of answering the question. All other factors remaining constant (including block reward), how much energy would the Bitcoin network consume at $10,000 a coin? I've accepted another answer, but if you wish to give it a shot I can change my vote. The formula you provide is really useful, I hope you get more upvotes.

I just updated my answer with some calculations.

Great answer. It also shows that it is a real threat. The bitcoin could easily deflate to much more than $10k

A lower bound would be interesting, too. Not many seem to understand that the energy usage is mostly proportional to mining rewards, independent of technology, and prices of $200k will get us over 1% of world energy production. :-(

I assert that this question is virtually irrelevant based on another assertion:
Bitcoin is more energy efficient and will always be more energy efficient than the systems it intends to wholly replace.
In both Bitcoin and the legacy currency and monetary systems, there is energy spent for some of the key tenets of a value storage and exchange system.

Consider the energy expended to hold balances.

How much electricity is used to power the banks daily? How much energy is wasted in the form of gasoline for employees' commute?
How much electricity is used to simply store Bitcoin data? Zero.

Consider the energy expended to process transactions and route money to its
destination.

How much electricity and such is used to move money from one place to another? Sure, it's largely electronic just like Bitcoin, but let's also account for the production, movement, and destruction of physical currency.
How much electricity is consumed for Bitcoin mining? This increases daily, but as other answers indicate, the consumption rate will decrease if blocks aren't entering the system often enough. This is the biweekly difficulty adjustment.

Consider the energy expended to investigate chargebacks and fraud.

How much energy does it take to reverse a single credit card transaction? How many people, how many phone calls, how much electricity is wasted because of preventable fraud?
Bitcoin cannot be reversed, only recovered. However, the investigation could expend a lot of energy since it's like recovering physical cash.

Consider the energy expended to market the technology and advocate for it.

How much do the players in our payment system expend their own profits in order to further its system because of the business necessity to make money?
How much are you willing to expend to help foster Bitcoin "everywhere you want to be?"

This is a great argument, I'm glad someone finally put it into words.

I like your "answer" and I have upvoted it (just because it's so awesome), but fact is it's unrelated to the question. All I'm asking is how to compute the total energy consumption given a rising market price of a bitcoin and all else being equal.

great argument, but it's also been proven wrong. BTC is now consuming as much energy as a moderately sized country.

There is no guarantee that transaction processing, aka "mining", will always be attractive. As such there is no guarantee that the network 'difficulty' will always go up, it fluctuates.
Therefore in a scenario, difficulty can settle at a value much lower than it is today, and/or specialized computers can become more power efficient. Bitcoin can also use a different algorithm than SHA-256, rendering sha-256 asic machines useless and no longer contributory to the network energy.
It is impossible to answer your question based on the simple premise you present.

Let's assume a shorter time frame. Let's say the market price of a coin goes up to $1,000 next month, $10,000 the month after, and so on.

In a very short amount of time essentially all mining will be on ASICs.  The BFL Jalapeno just shipped.  That generation of ASIC will probably represent the majority of hashing when all backorders are shipped.
That device does 5.5 Ghash/s and consumes 30W, per David Perry's first hand account of the one he received.
Today the hashing capacity is 66 Thash/s.  That is 66,000 Ghash/s.  If all of that was done on BFL Jalapenos there would need to be 12,000 of them.  Each consumes 30W so all 12K of them draws 360kW.  So in one day that electrical consumption is 8,640 kWh.  At $0.15 per kWh (the average residential price of electricity in the U.S.), that totals $1,296 per-day.
The Avalon ASIC is about half as efficient (60 Ghash/s consumes 600W), so if all mining today was Avalon ASICs, then that total electrical consumption is about $2,376 per-day.
Maybe close to a third of the network is still GPU (e.g., 22Thash/s), so perhaps that would be about $35K USD per-day, but those GPUs will quickly be dropping offline as their profitability drops thanks to ASICs.
This doesn't help know what total electrical consumption a year out will be but that is because it isn't known today what the exchange rate will be a year out.
Also, today's ASICs are first generation.  They could get replaced with new designs that perform 50% better even.

At a market price of $100 per coin, the current daily total mining reward is $360,000 @ 25 coins every 10 minutes. Total energy consumption should tend towards that amount (minus cost of hardware, operating expenses, taxes, etc.). At $0.15 per kWh you get 2,400 megawatt hours per day.

The amount of energy consumed will be much less than the current banking system consumes which, hopefully, bitcoin will replace. :) This doesn't even take into account the millions of lives (and productivity) saved when nation states can no longer print money at will to finance their endless wars.


text:
What is the Ripple equivalent of the "51% attack?"
In Bitcoin, if a participant gains control of more than 50% of the hash power, they can execute a double-spending attack. The "attack" could come from within, say if the existing powerful miners decide to change the rules.
Does Ripple have a similar problem, where a few people can effectively take control of the system? If yes, how does it work?

Ripple solves the double spend problem by consensus. Everyone who wants to run a server on the Ripple network picks a set of validators and tries to reach a consensus with them on which transactions are valid.
The Ripple equivalent of Bitcoin's 51% attack would be if some group obtained control over enough validators that the consensus process failed. Because people specifically select validators that they believe are unlikely to collude, this would be an exceptionally difficult thing to do.
If validators refuse to come to a consensus with each other, this is detectable to other validators. They then pronounce the network broken (because they don't know which side is right).
In this case, servers would declare the Ripple network unusable automatically. Until the problem was resolved, no transaction results could be relied upon.
The solution would consist of analyzing the signed validations and proposals to see which validators were being unreasonable and for all honest people to remove those validators from the UNLs (lists of validators they try to come to a consensus with).
So you would have to gain people's trust and then in the process of making the attack you would lose that trust and have to start over again.
By contrast, if someone acquired ASICs to attack Bitcoin, they could attack Bitcoin repeatedly. It's not clear how Bitcoin could respond to such an attack, but changing the mining algorithm (to make the attacker's ASICs worthless) is probably a non-starter as it would also make all the Bitcoin miners' investments in ASICs worthless as well.

How does the network makes sure that no clusters of validators arise? If I'm right, nodes ignore proposals from other nodes than the ones they trust. What happens when a cluster of nodes arises only trusting the others in the cluster but having no link with any other node outside the cluster?

A blockchain fork :)

"Until the problem was resolved, no transaction results could be relied upon." Does this mean transactions wouldn't go through? Would a user know that the system is in this state?

In Bitcoin you can do a double-spend if you have enough hash power, and this is by design. Are you saying that you simply can't double-spend in Ripple, only just bring the system to a halt owing to lack of consensus (even if you controlled most of the validating nodes)?

@StevenRoose: There's nothing wrong with a cluster of validators, they'd just form their own network. If you want to maintain consistency with the global network of validators and you want to be on the same ledger as them, you have to tell the software that's what you want.

@Manish: Yes, that's basically right if UNLs are properly maintained. But think about it -- say you get in that state and you now have two halves of the network that disagree. The network has come to a halt and the only way to fix it is to pick one side or the other. The advantage is that you shouldn't have people who have relied on one side or the other's transactions.

Is this "halt" state something that every node knows about? Or is it like Bitcoin where you could happily keep building on an alternative branch forever (and end up with two ledgers)? What does "halt" mean, does it mean no more transactions?

@Manish: The Ripple server has an internal "gate". It continues running based on what it sees on the network, forming a consensus with anything it can. But it only reports transactions as validated to clients when they pass this "gate". If the validators are not agreeing, then nothing will pass the gate. The server will report stale data to the clients and tell them it does not have current data. You could not rely on the results of any transactions. If Bitcoin has a similar failed state, it still happily processes transactions and reports confirmations. (Though that's very rare.)

By contrast, if someone acquired ASICs to attack Bitcoin, they could attack Bitcoin repeatedly.

The problem is, there isn't enough ASICs available on Earth to mount an effective attack on Bitcoin. Existing miners would need to be co-opted as part of the attack, which effectively becomes a fork: a new chain splits off with different rules. Which is what happened with the bcash fiasco. The old chain continues unaffected, while the new one dwindles as miners eventually capitulate and return to the more profitable consensus chain.


text:
Why is Ripple's effective genesis ledger at 32570?
The documentation for Ripple says that the genesis ledger starts at 0 but the "effective genesis ledger" is at 32570, because some historical ledgers are "unavailable."
Why is this, and what does it mean for the average Ripple user?

It doesn't mean anything for the average Ripple user. In January of 2013, a bug in the Ripple server caused ledger headers to be lost. All data from all running Ripple servers was collected, but it was insufficient to construct the ledgers. The raw transactions still survive, mixed with other transactions and with no information about which transaction went in which ledger.
Without the ledger headers, there's no easy way to reconstruct the ledgers. You need to know the hash of ledger N-1 to build ledger N, which complicates things.

So, there was only a single centralized copy of each ledger prior to 32570?

No, there were several copies, but they were all on machines with identical hardware and software. They all ran out of disk space at about the same time. After this incident, we added protections against exactly this scenario. We deemed a ledger reset too disruptive to be worth doing.


text:
Can the number of transactions per second ever overwhelm the network?
I'm coming at this from a point of view that assumes Bitcoin has been widely adopted as a currency worldwide and is essentially mainstream. Every day people are using Bitcoin in the same way that they use their credit cards today.
Will the transaction volume at this level be sufficient to overwhelm the Bitcoin network given that transactions are processed differently to those of the credit card companies?

I think a good answer to this question should include a link to the wiki - https://en.bitcoin.it/wiki/Scalability

There are three parts to this:

The miners have to verify each transaction that will go into the block and all transactions that are in the block they will be basing their own work on
Each client needs to look for transaction destined to their own addresses, which can get hard if you have a large address pool
Since all transactions are broadcast the network itself could potentially be flooded.

The first two are pretty simple to solve since most computers already can process up to 100 transactions a second (resulting in roughly 10*60*100=60'000 transactions per block) and this can be pushed by investing in larger hardware to do the processing, and offloading verification to trusted third parties.
The last part is harder to solve as it results in possibly O(n^2) messages going around the network. Here a more structured network might do the trick, but all attempts so far to create a structured network have been dismissed.
Last but not least the blockchain grows linearly with every transaction which uses diskspace on every client. This has been partly solved by Satoshi in his paper.

It might be worth adding the relevant quote from the paper, along with the citation.

Also work is underway to implement a Bitcoin node proxy that splits the light work of transaction sharing and the heavy work of transaction processing. This is an example of the more structured network.

Actually no, a node proxy is just isolating a single node (shielding it of sorts), it does nothing to reduce the number of messages in the entire network. Since any transaction/block is verified at most once at every node (work that still has to be done anyway) it does not reduce the amount of work to be done. It only reduces the number of messages to and from the shielded node.

@cdecker there could easily be a one-to-many relationship between proxies and the nodes that use them.

In that case you reduce the network to a hierarchical network whereas peers behind a proxy/supernode trust them.

There are actually a number of possible threat models to evaluate. But since you asked about overwhelming "the network", I'll look only at attempts to overwhelm the network as a whole and not talk about attempts to overwhelm a few nodes. (You can overwhelm a node with invalid transactions, but that won't hurt the network as a whole.)
First, nodes will only pass verified, valid transactions to other nodes. And a node will only pass one transaction that attempts to claim a given output. And further, a node will not pass a transaction that claims a new output (one that hasn't been stable for a long time) unless it includes a transaction fee.
You have to assume an attacker will use no transaction fees. Otherwise, he'll go broke pretty soon. So in order to get his transactions relayed, he'll have to use old outputs. The problem is, his transactions will get into mined blocks, consuming his old outputs and replacing them with new ones. With new ones, he won't be able to get his transactions relayed for free.
The net effect is that you can't sustain such an attack for long because you can't have that many old transaction outputs that you can claim, and you'll burn them very quickly because you can only relay one transaction per output.
Effectively, after a short initial burst, at best you can send new transactions as fast as they're included in mined blocks, which might be maybe 100 transactions every 10 minutes. That's not much load.

+1 Although I'm not really looking at this from a threat perspective, rather from massive mainstream adoption. However, your observations are entirely valid.

It's hard to imagine mainstream adoption ever overwhelming the network, especially since that's a few years off and CPU power is going up at a high rate.

The answer is no, and here is why: average computer can verify about 80 transactions per second. But most miners now days connected to pool servers, and in that case transaction verification happens only on the server, which could have a very sophisticated hardware and process much larger number of transactions.


text:
Would a professional ASIC-machine holder eventually become a bank-like character?
As we know, one of the concepts of Bitcoin is to be "decentralized". When individual miners, even with ASIC miners, become unprofitable, will the system become more centralized to those several superb professional miners?
Would that finally affect the willingness of users to accept Bitcoin and lead to its collapse?

related: http://bitcoin.stackexchange.com/questions/13419/will-asic-miners-hold-the-network-hostage-and-demand-a-fee-for-their-services

related: http://bitcoin.stackexchange.com/questions/312/do-mining-pools-centralize-the-bitcoin-network-and-make-it-less-secure

It seems like you're asking two questions. 1) Will miners eventually resemble banks? and 2) Will miners become more centralized?

Even if mining becomes more centralized, it would seem unlikely that miners would turn into banks: Their only advantage at shaping payments is that they may delay transactions by not including them in the block, so there doesn't seem a direct incentive to progress to banking.
On the other hand, payment processors and bank-like entities would have an incentive to foster mining efforts, as their business concept directly profits from a secure network.
So, banks should be interesting in paying for mining, but not vice versa.

If the bitcoin developers get the incentives right (if they aren't already) then no, there will be plenty of small miners remaining. Also: anyone would be free to start their own mining company and start competing right away. There are no restrictions like currently on starting a bank.
And those new companies have one advantage in that they can use the latest most efficient hardware and the cheapest data center technology etc.


text:
How long does it take to go from 51% hash power to 100% hash power?
Once an attacker has acquired 51% hash power, is it possible to quickly get to 100% hash power by simply refusing to build on blocks created by other mining nodes and therefore discouraging mining entirely?
If 51% guarantees 100%, how quickly can this transition (from majority to total control) be expected to occur?

From What can an attacker with 51% of hash power do?

Prevent some or all other generators from getting any generations

So, yes. However, it doesn't immediately give him more mining income. Once the block readjustment happens two to six weeks or so after the attack, the bitcoin network will notice that far fewer blocks were made, and the difficulty will go down.

If I understand your answer correctly, you're saying that the only way to tell when it's no longer worth trying to mine any more coins is to look at the new adjusted difficulty level. Is that right? I was thinking more like if you're generating valid blocks and they're still getting rejected then maybe it's time to quit mining. But how long would it take for the rest of the 49% to notice this? I mean, is there a formula?

Also, what if it's not an external attack but rather an internal buyout (i.e. a big company just bought 51% of the hash power)? In this case there's no new hash power added to the network.

@Manish only way to tell when I think a better way would be to look at all of the pool operators now complaining that they're not making any money. Also, what if it's not an external attack but rather an internal buyout Can't be detected purely by looking at the network.

Remember that one would have to gain over 400 petaflops of processing power to gain 51% of the network. The top ten supercomputers in the world combined aren't even powerful enough:
http://bitcoinwatch.com/
http://www.top500.org/lists/2012/11/

Note that flops stands for FLOating Point operations per Second, and is perhaps not the best measure of a mining algorithm that uses no floating point operations.

You and your semantics. I'm just trying to demonstrate that taking the network down via a 51% attack isn't going to happen

@CharlesHoskinson George Soros could just buy out most of the miners. Then what? Anyway, I see your point.

Doing so should greatly increase the value of the bitcoin resulting in more people entering the market to mine. Thus Soro's play fails

This misses the question.


text:
Why is a GPU a better tool for bitcoin mining than a CPU and is an FPGA better than both?
I was looking into the best tools for bitcoin mining and found out that GPUs are a better tool for bitcoin mining than CPU's. What is the reason for this?
furthermore, I found dedicated chips that can only be used for bitcoin mining. How come that these relative small chips are far superior to the best intel/amd/Nvidia chips?

Bitcoin mining is essentially just the repeated calculation of sha256 checksums. Given that sha256 is a fairly simple algorithm that uses only basic integer calculations absolutely any processor core should be capable of churning out sha256 checksums very quickly and any added complexity beyond the basic instructions required for sha256 is wasted. To that end the ideal candidate for mining hardware should have the least complex cores necessary for sha256 but the largest possible number of cores.
Your CPU has probably between 2 and 8 cores, each of them insanely complex. Your GPU has comparatively simple cores, but probably has over a thousand of them. Still, even GPU cores are more complex than they need to be for sha256, which is where FPGAs and ASICs come in.
An ASIC is a custom chip, designed to do only one thing - in this case it's designed to perform two rounds of sha256. It has only the necessary components for its one and only purpose. An FPGA is a device commonly used to prototype ASICs, it's basically a chip whose components can be rearranged to mimic another kind of chip. Because they retain this multi-purpose capability FPGAs are significantly less efficient than ASICs.
The only (temporary) benefit we saw from FPGAs is the cost curve. FPGAs are pre-manufactured consumer devices, you can buy just one of them and they usually don't cost a huge amount of money. An ASIC is something you have manufactured, and the minimum order size is usually absurd, requiring a huge up-front investment to get your chips made.

Different chip architecture make it designed to do Bitcoin mining more effectively


text:
Why are orphans called orphans?
An orphan does not have parents. On the other hand an orphaned block has a parent but no children. So shouldn't it be called barren rather than orphan?

Orphan blocks can have children. They just don't have as many children as the best chain.

That's not the origin of the term though, see the linked answer.


text:
What are tainted coins exactly?
I've come across the term of a tainted coin several times now.
I understand that coins, or better, the origin of a coin can be traced throughout the blockchain.
I've read that bitcoins can be disassociated from an address, by sending it to a sufficiently large enough wallet which handles many transactions, thus making a transactions origin "untraceable".
This collides with my understanding of the blockchain, where each transaction can be tracked back to its origin.
What does the concept of a tainted coin mean in this context and how can a coins taint be measured?

Interestingly, this transaction appears to have a public note that links here: https://blockchain.info/tx/dcc4636194f45936dc8695e49691294ea9e1ec5213e48024250ea7857ba2cb14

You can trace the coin back to its origin, the question is whether that information is meaningful.
Say I steal 50 bitcoin. I can pass them around between several different Bitcoin accounts, all mine, and you can trace them. The problem is, you don't know whether any of those transactions are real.
Say Jack has 50 bitcoins that come from a block reward and are untainted. Now, say Jack and I both deposit our 50 bitcoins in a web-based wallet. And say Jack withdraws his 50 bitcoins from that web-based wallet and he gets my 50 bitcoins.
Jack now has 50 bitcoins that you can trace to a theft and are therefore tainted. But Jack has done nothing wrong and it doesn't do any good to be able to track his bitcoins because I, the bad guy, now have untainted bitcoins.

The other answers are correct, in that a mixed wallet can be used to hide tainted coins. However they miss an important point: the operator of the wallet service does have the knowledge required to trace the outbound transaction back to the original input coins, because both flows have to be associated with the wallet's internal representation of a customer account.
Good wallet services will refuse give out this information, but they are still vulnerable to being forced to reveal it, e.g. by a legal subpoena or hacking. Therefore somebody who is really serious about washing his bitcoins will need to route transactions through a series of wallets operated in different jurisdictions, on the theory that it would be impossible to subpoena or hack every wallet in the chain.

When you send coins to a large shared wallet, chances are that the coins you withdraw won't be the same as the ones you deposited. That's how you can sever the taint trail.
The key is that the wallet must not only be large, but also shared between a lot of users.
The taint on the original coins would never go away but could be diluted by mixing them with "clean" coins. For example, if you sent two coins, one tainted, one clean in the same transaction they would "mix" together and both would have 50% taint.
The concept of "mixing" has therefore two different meanings : swapping tainted coins for clean ones and mixing tainted coins with clean ones in order to "dilute" the taint.
Remember that the "taint" is always relative to some origin, it's not something absolute.

The term "Tainted Coins" is often misinterpreted as a measure of provenance. That's understandable considering the traditional definition of the word "tainted" coupled with the reality that many Bitcoins actually have been used for what would be considered nefarious purposes by standard societal norms. In fact, it is a common occurrence to be holding or trading Bitcoins that have traveled dark roads. The only coins that have absolute clean history are freshly mined coins, and much of that enters the wild pretty quickly so does not stay "clean" for long. So while it is tempting to compare tainted coins to a $100 bill that has either been used to pay for narcotics or used to actually ingest narcotics by way of a rolled up straw, this is not what "tainted coins" are in Bitcoin vernacular.
In the jargon of the science of Bitcoin, tainted refers to something that's not only counter intuitive to the definition of the term "tainted", but it's actually a fairly confusing (and boring) concept. In this case of Bitcoins, taint is simply a measure of correlation between two (wallet) addresses. The variable expressed as taint is primarily used to express this wallet connection.
To make things even less intuitive, ALL Bitcoin addresses which have received a payment, ever, are "tainted". Taint in no way effects the value or fungibility of any coin since it is not a measure of any negative characteristic that would be associated with the traditional definition of "tainted". Actually, there is a serious problem if all your coins do not have some level of taint.
Sorry to chime in on this topic months after the OP. Stack is where misnomers come to perish, so I figured it is never too late.

could you edit your answer further without reference to other answers? I appreciate your definition of taint and taint analysis, but it'd be better if it is stated with more clarity.

A thought experiment, let's nickname it "Poisonous Gift":
Doesn't matter what cryptocurrency exactly, just assume the transaction ledger works like Bitcoin's.
Alice (wallet A) gets ransomwared by Rufus (wallet R), pays the rather large ransom (95 coins) but reports address R to the authorities, thus tainting wallet R.
Malcolm's money laundering gang (who has many unlinked but tainted wallets W,X,Y,Z and so forth, together tenthousands of coins) specialises in buying coins from well-known tainted wallets, moving all the tainted coins from wallet R into wallet M.
Security researcher and blogger Bob accepts donations:
Wallet B, linked to his real name, but comparatively little income/capital, only 5 coins.
Malcolm really doesn't like Bob's reporting, so wants to "poison" Bob's wallet, and get Bob in legal trouble, and is willing to spend the entirety of wallet M on it.
So he just sends all the funds from M to B.
Now Bob got 100 coins in his wallet, 95% directly tainted and linked to Rufus' ransomware campaign.
So when the authorities search for Rufus the ransomwarer, they see the money showing up on Bob's wallet, and might suspect him.
Not to mention exchanges might not accept Bob's wallet because of the "taint", thus blocking his much-needed income.

Tainted bitcoins actually refer to coins which have gone through suspecious transactions e.g. over dark web or those transactions which can be labeled as theft cases. Let's say a hacker hacks a web based wallets database and steals 100 bitcoins while traferring them to his wallet through a transaction of hash 'X'. Now this transaction has been labeled tained along with all the bitcoins associated with it.
Now what stealer does is that he moves these bitcoins from wallet to wallet or exchanges them to other coins i.e ether or xmr. This is what is called mixing or tumbling. There are very few secret exchanges here on clear web or dark web where these tainted bitcoins are sold for cash or even clean bitcoins/ether/xmr at a price lower than the actual rate. So the basic aim of these exchanges is to get hold of cleaner coins even if they have to sell tainted bitcoins at -10% or even up to -20%. This process eases the pain of mixing for them automatically.

This answer really doesn't have any basis in reality. Nobody is devaluing Bitcoin by 20% being it is "tainted".

Well that is your opinion. My opinion is based on experiences which you might not have come across yet.


text:
Can simply not spending the dust thwart dusting attacks?
I have an address where small dust amounts have been deposited in 3 or 4 transactions by unknown senders.
I did some research and found it's a "dusting attack".
The articles also mention that simply not touching the dust UTXOs will thwart the attack.
Is this really true?
Can't the attacker simply trace the non-dust UTXOs of that address?

Can't the attacker simply trace the non-dust UTXOs of that address?

Of course, but they can do that without sending dust to it as well.
The point of a dusting attack is making sure the wallet now has many UTXOs assigned to the same address, to increase the chances that one of them gets spent simultaneously with other addresses that wallet has. The attacker then gets to observe what those other addresses are and infer that they're part of the same wallet as the dusted address.
They can make this infererence always, even without dusting it. But dusting it causes the wallet to have more UTXOs to pick from, making it reveal more if those dust UTXOs get spent in many distinct transactions. And in this case, not spending the dust does indeed thwart the attack: the attacker does not get to see more than they would without dusting.


text:
How to measure block propagation time?
What could I do to measure block propagation time?

An estimate of block propagation time would by necessity consider the speed of a sample of nodes in the p2p network.  As such it isn't possible to get an estimate using your node alone.  You could measure the time it takes to upload/download blocks to/from peers as well as verify them.
To estimate propagation time you would need several nodes dispersed geographically and with unique peers.  You could then monitor how long it took between for first and last node to receive the block.
You could also listen to your connected peers for their announcement of new block headers.  This would allow you to estimate propagation time based on more nodes.


text:
Does flattr complement or compete with bitcoin?
I realise that the underlying technologies for Bitcoin and flattr are different, but do they serve the same purpose?
For example: if I set up a webapp that uses micropayments for revenue (like github - being able to buy private repositories) would it make more sense to use flattr or Bitcoin?
Would I use them in concert - Bitcoin for micropayments, flattr for "charity" like payments for people who just want to support the site, but don't need extra functionality?
Does Bitcoin have a clear advantage over flattr for certain situations and clear disadvantages in others?

Regarding the specific questions about your website, it is up to you to decide which payment methods to accept. If you want to accept small payments, Paypal and credit cards may not interest you because of their high fees. So both Flattr and Bitcoins can replace Paypal as an alternative for cheaper micro-payments.
As for advantages/disadvantages:

Flatter charges 10% of your income
Bitcoins are not limited to small payments (you can accept any amount of them without fees)
Bitcoin price fluctuates a lot right now - you might want to consider using bit-pay if you want a steady income.

Like other answers stated, you must understand that these are different systems. One is a currency and the other is a service. They can complement each other and you don't lose anything by accepting both.

Flattr is a social micropayments system. Bitcoin is a currency.
There is no reason the two could not be integrated together, pay with bitcoins and then share the bitcoins out using the same method as flattr.
In fact, I would go as far as saying this would be an excellent idea due to lack of transaction fees and friction for small amounts.
Flattr is the service, Bitcoin is the currency. They don't compete; they could certainly complement each other though, in my opinion.

Flattr recently added the ability to send a tip without being a subscriber, but they don't yet have the ability to receive a tip without losing a chunk of it to subscription fees.
To solicit a tip in bitcoin, one merely needs to provide a Bitcoin address for the sender to use.  Because it is a direct transaction, there is no intermediary sucking fees from the transaction (except for the bitcoin transaction fees, which cost about penny at current levels).
Here is just a subset of those doing exactly this:
 - http://en.bitcoin.it/wiki/Donation-accepting_organizations_and_projects
However, if the recipient doesn't already know of Bitcoin or doesn't accept bitcoins currently, two services can be used to give an amount that is held in escrow by the intermediary and the recipient then can claim the funds using the intermediary's web site.  This is something Flattr just recently added as well -- they refer to it as "unclaimed things": http://flattr.com/support/unclaimed
These two services that do this with bitcoins are:  http://www.YouTipIt.org and http://www.PayBitBack.com
YouTipIt lets you send a tip to any TipIt already registered on their site but also they offer the ability to send a tip to any Facebook user.  If the user is not already registered with YouTipIt, the funds will be held in escrow until they are claimed by the Facebook user.
PayBitBack follows the same concept except theirs is a Twitter based escrow system.

The two use different systems of currency.
Flattr is simply an easier way of offering micropayments in the traditional currencies, whereas Bitcoin is a more revolutionary attempt to create a whole new currency.  Because of this, I'd say it neither complements nor competes with Bitcoin.
It could help Bitcoin if it decided to start accepting payments in Bitcoins.

I would clarify you first sentence to something like "One uses currency the other is a currency".  Flattr isn't a currency anymore than Paypal, or VISA are currencies.  Flattr is a method of payment involving small sums in social media but could potential use any currency (including bitcoin).

Does flattr compete with bitcoin?
Flattr does not compete with bitcoin, as long as it has unique features left compared to bitcoin. So let's have a look at what flattr can offer first.
So far, flattr is actually offering a couple of services:

An internet payment system
A micro payment system
A one-click payment system
A "scalable" payment system
A fixed sum donation distribution system
A hub for creators and donators who want to receive and send donations on a voluntary base
(An instant payment system)

The first one is obviously true for both flattr and bitcoin as well as many other systems.
The second one can easily be done with bitcoin as well, bitcoins are very suitable to be send in very small amounts.
For the third one using the main bitcoin client, you'll usually need some copy&pasting, a few more clicks and the typing of a number. With better integration of the [bitcoin URI scheme][1] it could probably be brought down to just one click as well.
For the fourth item, as Thilo has already mentioned, the current bitcoin protocol and implementation would have trouble to scale to VISA like transaction amounts. For a system with a central authority, like flattr, it is usually easier to scale. However, quite some people are positive that this could be improved when needed. Also see ['Scalibality'][2] in the bitcoin wiki.
With item number five I mean that you do not have to think about how much you want to donate to someone, flattr takes care of that and distributes monthly donations evenly to all people you flattred during the last month. Together with item three nearly any effort needed by the donating person's brain is removed (the next and probably final step would only be to insert a probe in your brain which determins whether you liked something and if so will click for you :) ). Such a fixed sum donation, equal distribution system is not possible with bitcoin alone yet. However the more I think about it, it should be possible to implement such a feature within the bitcoin client (or a new client which uses the [bitcoin client's json-rpc interface][3]), together with some additions to the bitcoin URI scheme plus browser plugins.
For the sixth item, my current impression is that it is not (easily) possible to achieve such a content index in a decentral, peer 2 peer way, the bittorrent or bitcoin way. Otherwise content indexes like torrent websites would probably already have implemented it.
The last item is something that's not possible with the current bitcoin protocol due to the time and hashing power needed to confirm a transaction and so far no way to speed this up without reducing security and keeping decentralisation has been found. However, although flattr has the possibility to instantly notice the flattring of something, they are not actually using it for a user's benefit as far as I know. Also, giving something back in return to the person just having flattred would probably be somehow contrary to flattr's philosophy, I guess.
So on the long run I only see the sixth point, the content hub, remaining a unique feature for flattr.
Despite from that nearly any feature mentioned on for instance [weusecoins.com][4] or the ones listed below can be features unique to bitcoin, competing with flattr if there were no / not enough unique features to flattr left in the future.
Does flattr complement bitcoin?
Today, bitcoin and flattr do complement each other. Flattr needs to receive its funds from somewhere and bitcoin can technically offer a value transfer for such a use-case at least as good as paypal or whatever. Additionally bitcoin can offer the following to flattr compared to for instance paypal:

lower transaction fees
easier account funding (e.g. no login required)
resistent against blockings and censorship (against both flattr and its users)
independance from other payment service providers
possibility to prove correctness of transaction flows, certainity for both creators and donators that there is no fraud
no risk of chargebacks for flattr and the content creators
bitcoin might be the only payment possibility for most people in some countries (e.g. any country minus [these][5] ones for paypal? also see [here][6])

Whether in the future the remaining features (e.g. only the content hub/indexing?) of flattr over bitcoin would be enough to keep flattr attractive and allow a complementing relationship between flattr and bitcoin is something I cannot say yet.
Relevant Links: http://pastebin.com/E5iRbk0P
(sry, I'm new here, spam protection prevented me from posting them all)

I used to think that Bitcoin could make Flattr obsolete, but I changed my mind.
The reason is that Bitcoin alone is not very useful for micro-payments. The way I see it is that the Bitcoin blockchain transaction protocol does not scale to day-to-day end-user transactions, let alone microtransactions. The transaction volume would be way too much, and the wait for confirmations is another hassle. The way both problems will be solved is by having wallet services on top of Bitcoin, that allow instantaneous transactions between users that do not occur on the blockchain (but just on the books of the wallet services). End users would still (if they are clever) keep their saving on their own wallet files, and only occasionally transfer money in and out of these services.
Bitcoin exchange and gambling sites are already examples for these services (but the between-wallet-services, off-blockchain transactions are still missing, I think). Flattr could be one of these services, as could PayPal.
It would be a nice addition for Flattr to accept Bitcoin deposits (in addition to the payment methods they already have). This has been brought up on their forum, but they are very hesitant because of financial services regulations.
In the mean-time, you could use YouTipIt, which is a similar service to Flattr, but using Bitcoins.

-1 Why doesn't bitcoin scale well for day-to-day transactions?

Because the size of the blockchain will become unmanageable.


text:
Visualize Bitcoin Hashing
According to https://en.bitcoin.it/wiki/Hash,

BitCoin uses the SHA-256 hash algorithm to generate verifiably
  "random" numbers in a way that requires a predictable amount of CPU
  effort. Generating a SHA-256 hash with a value less than the current
  target solves a block and wins you some coins.

Here is an example for web logs; https://code.google.com/p/logstalgia/
Obviously solving the hash takes many iterations. I'm curious if there anything that currently lets you visualize a miner hashing?

I got linked this question.
I made a tool which includes a component that allows one to simulate mining:
http://yogh.io/#mine:last
It's not entirely accurate; it doesn't support BIP 34, so the block height is not reflected in the coinbase tx, and it's still got some bugs. Currently in alpha. But it can give you some pointers.
It'll construct a block on top of the tip of the current best chain, with a coinbase transaction and nothing else, then start hashing at 4 hashes/sec, showing every failed attempt (which at this hashrate, is likely to be all of them).

Wow, this is very pretty!

This is a great start! Do you have an open repo of your code?

Yep. Any help in testing or code contributions would be greatly appreciated, as would publicly hosting the project on top of a node. I was away for several weeks and haven't had a chance to work on the project further, I intend to pick up the pace in the coming weeks and get the project out of alpha/beta. Code here: https://github.com/JornC/bitcoin-transaction-explorer

Mining Bitcoin with Excel: https://www.youtube.com/watch?v=UZBZPOEVyJA
:)

This answer would be much improved if you updated it to describe the video in a little more detail.

@HighlyIrregular Edit the answer yourself.

Check out: Mining Bitcoin with pencil and paper

authors: Иосиф Виссарионович Сталин