I have been getting familiar with crypto currencies and, in particular, with the double spending problem. This has brought up the question of how double-spending is prevented and controlled in traditional banking.

When a transaction occurs from an account in bank A to an account in bank B, how does bank B verify that the money source is real and not a fraud?

Some more specific questions are:

  1. Bank impersonations. How does bank B verify the identify of A during the transaction? Is there a standardized way to authenticate and make transactions in traditional banking?
  2. Artificial credit increases. What prevents bank A from (intentionally or not) artificially increasing the credit in its accounts? For instance, the computer systems of bank A could be attacked or bank A could be managed fraudulently by, say, a dictator in a third world country.

1 Answer 1


There are a lot of details involved in the answers to your question. Some of them would require specialized knowledge and is institution dependent...you would need someone who writes or oversees code for a particular transaction. I will do my best to give you the big, economic, picture. Neither I nor most people in this stackexchange are CS experts.

How Banks Verify Transactions

When money is transferred from one bank to another, it's not usually a direct transaction. In the US, money is normally moved through the ACH system run by the federal reserve. In Europe money goes through the SWIFT system. These systems provide clearing for these transactions: that is, they verify the identity of the sender and recipient bank, double check the account amounts, ensure receipt of all transactions, and reverse any transactions that ended up being a mistake or fraud. Generally, there is at least some waiting period for the transaction to occur and possibly more before you can use the money. In order to participate in these networks the banks must identify themselves in real life and follow the designated security protocols that prevent forged identity and double spending. So there is relatively little security risk.

On the other hand, with bitcoins the involved parties are not identified using real-world tools and transactions can't be reversed if they are found to be errors or fraud, so bitcoin has to do a lot of work to ensure that transactions are legit.

The other way to move money is by wiring it. Here the banks will sometimes contact each other directly. Wiring money in this way is not free because the banks must do extra work to verify each other, but the principle is the same. They are part of a network of trusted entities that have verified each other's identity in the real world and established protocols to ensure transactions are legit.

Bottom line: Verifying transactions is easy if you are able to establish identities in the real world and the number of participating parties is small.

Why Banks Can't Just Change Amounts in Accounts

You ask why banks can't just add some zeros to one's account and create money out of thin air. The answer is that banks carefully maintain balance sheets of their assets and liabilities. Their assets can't go up without liabilities going up by the same amount. This summation is done all the time within the bank to check and double check that no math or transaction errors are made. Then they are double checked again by auditors periodically, and by regulators. The bank must be able to show that its balances match and identify the sources and uses of all funds or they get in trouble and can be shut down or thrown in jail.

Interestingly, banks have their own bank accounts where their aggregated assets reside. These are either in larger banks or (in the US) in the federal reserve. Ultimately, the net of all electronic dollars resides in accounts at the federal reserve. The Fed, therefore, maintains these accounts and a bank's net electronic cash balance must equal what is in its Fed account. You can therefore say that the Fed is the ultimate authority on where dollars reside.

One might ask what prevents the Fed from unilaterally adding or subtracting money from accounts. The answer is "nothing." In fact, when the Fed purchases things it does so by changing the balance in federal reserve accounts. Click, click, done. This is the (only) way the US money supply grows in the long run. Growth of the money supply actually has nothing to do with printing presses.

Bank Fraud vs Bitcoin Fraud

We do observe banking fraud of various types, but because of the accountability and verified identity of these institutions and the fact that transactions can typically be reversed, they can be said to be secure in a practical sense. In fact, if they come up short somehow, the bank must pay up with their own capital. If the bank goes bankrupt, the bank insurance company (FDIC in the US) will make sure you get paid. If you are the victim of bank fraud, even if it is your own fault, there's a good chance the bank can reverse the transaction or otherwise make you whole.

Bitcoin, on the other hand, is secure in a cryptographic sense...it is as secure as people's private keys are. No more, no less. There is no possible recourse if someone is able to use your key but the system is painstakingly set up so that people who do not have your key cannot withdraw money from your account, not even with a court order, a supercomputer, or an army.

  • They are thousands banks now, how does swift prevent double spending for cross border payment in foreign currency? Commented Feb 14, 2018 at 22:59
  • @user2284570 Because (grossly simplified), ultimately, the money is never truly "received" until the instruction to "spend it" has made its way back to the originating account and the bank holding that account has verified the money is there. If it isn't, then the transaction is reversed (if possible), or the payer is landed with an overdraft (essentially, "double spending" becomes – as a last resort – an [increased] liability for the spender).
    – TripeHound
    Commented Jun 6, 2018 at 7:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .