<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://en.bitcoin.it/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Maged</id>
	<title>Bitcoin Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://en.bitcoin.it/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Maged"/>
	<link rel="alternate" type="text/html" href="https://en.bitcoin.it/wiki/Special:Contributions/Maged"/>
	<updated>2026-05-03T01:18:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Help:Getting_started&amp;diff=47940</id>
		<title>Help:Getting started</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Help:Getting_started&amp;diff=47940"/>
		<updated>2014-06-08T00:54:44Z</updated>

		<summary type="html">&lt;p&gt;Maged: Fixed community portal link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;WARNING: This wiki and the links it contains can be edited by anyone, always verify that the URL to the site you are visiting is correct. Before trusting or sending your bitcoins to any website you should always search on additional [[:Bitcoin:Community_portal|community resources]] to see what other users are saying about the service.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Get started buying bitcoins at [[Coinbase_(business)|Coinbase]] or [[Bitstamp]]&lt;br /&gt;
* Start by watching [http://weusecoins.com/ this 2 minute vid].&lt;br /&gt;
* Learn why it [http://bitcoin.stackexchange.com/questions/2834/what-are-the-perceived-advantages-of-bitcoin-as-a-store-of-value could be a good investment]&lt;br /&gt;
* Learn why it&#039;s objectively [http://bitcoin.stackexchange.com/questions/305/what-are-the-perceived-advantages-of-bitcoin-as-a-means-of-exchange better as a means of exchange].&lt;br /&gt;
* Get a [[Clients|client]] and try it out yourself.&lt;br /&gt;
* Use an [[Browser-based wallet|online wallet]] that you trust. &lt;br /&gt;
* Explore bitcoin with a [[:Category:Block chain browsers|block chain browser]] such as [https://www.blockchain.info Blockchain.info]&lt;br /&gt;
* [http://bitcoin.stackexchange.com/ Ask questions]&lt;br /&gt;
* [http://bitcoin.stackexchange.com/questions/118/how-much-bitcoin-will-i-mine-right-now-with-hardware-x Can I generate Free Money on my computer?] - TL;DR - Not really.&lt;br /&gt;
* [https://en.bitcoin.it/wiki/FAQ Read the FAQ]&lt;br /&gt;
* [[Buying Bitcoins (the noob version)|Where can I buy bitcoins?]] (Hint: [http://bitcoin.stackexchange.com/questions/2293/how-can-i-buy-bitcoin-via-a-credit-card-or-paypal You can&#039;t buy them with Paypal or credit cards])&lt;br /&gt;
* [http://bitcoinx.io/ Where to buy and store your bitcoins]&lt;br /&gt;
&lt;br /&gt;
If you&#039;re looking for how to get started with Bitcoin-Qt, [[Getting started installing bitcoin-qt|this is the article you&#039;re looking for]].&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Introduction|Bitcoin Introduction]]&lt;br /&gt;
* [[Bonus_Programs|Bonus Programs]]&lt;br /&gt;
* [[Trade|Bitcoin Businesses]]&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Myths&amp;diff=44948</id>
		<title>Myths</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Myths&amp;diff=44948"/>
		<updated>2014-03-12T23:25:58Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Alternative Currencies are useless, Bitcoin is the only important cryptocurrency */ This is not the Litecoin Myths page.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Let&#039;s clear up some common Bitcoin misconceptions.&lt;br /&gt;
&lt;br /&gt;
== Bitcoin is just like all other digital currencies; nothing new ==&lt;br /&gt;
&lt;br /&gt;
Nearly all other digital currencies are centrally controlled. This means that:&lt;br /&gt;
* They can be printed at the subjective whims of the controllers&lt;br /&gt;
* They can be destroyed by attacking the central point of control&lt;br /&gt;
* Arbitrary rules can be imposed upon their users by the controllers&lt;br /&gt;
&lt;br /&gt;
Being decentralized, Bitcoin solves all of these problems.&lt;br /&gt;
&lt;br /&gt;
== Bitcoins don&#039;t solve any problems that fiat currency and/or gold doesn&#039;t solve ==&lt;br /&gt;
&lt;br /&gt;
Unlike gold, bitcoins are:&lt;br /&gt;
* Easy to transfer&lt;br /&gt;
* Easy to secure&lt;br /&gt;
* Easy to verify&lt;br /&gt;
* Easy to granulate&lt;br /&gt;
&lt;br /&gt;
Unlike fiat currencies, bitcoins are:&lt;br /&gt;
* Predictable and limited in [[Controlled_Currency_Supply|supply]]&lt;br /&gt;
* Not controlled by a central authority (such as [http://en.wikipedia.org/wiki/Federal_Reserve The United States Federal Reserve])&lt;br /&gt;
* Not debt-based&lt;br /&gt;
&lt;br /&gt;
Unlike electronic fiat currency systems, bitcoins are:&lt;br /&gt;
* Potentially anonymous&lt;br /&gt;
* Freeze-proof&lt;br /&gt;
* Faster to transfer&lt;br /&gt;
* Cheaper to transfer&lt;br /&gt;
&lt;br /&gt;
== Bitcoin is backed by processing power ==&lt;br /&gt;
&lt;br /&gt;
It is not correct to say that Bitcoin is &amp;quot;backed by&amp;quot; processing power. A currency being &amp;quot;backed&amp;quot; means that it is pegged to something else via a central party at a certain exchange rate yet you cannot exchange bitcoins for the computing power that was used to create them. Bitcoin is in this sense not backed by anything. It is a currency in its own right. Just as gold is not backed by anything, the same applies to Bitcoin. &lt;br /&gt;
&lt;br /&gt;
The Bitcoin currency is &#039;&#039;created&#039;&#039; via processing power, and the integrity of the block chain is &#039;&#039;protected&#039;&#039; by the existence of a network of powerful computing nodes from certain [[Weaknesses#Attacker_has_a_lot_of_computing_power|attacks]].&lt;br /&gt;
&lt;br /&gt;
== Bitcoins are worthless because they aren&#039;t backed by anything ==&lt;br /&gt;
&lt;br /&gt;
One could argue that gold isn&#039;t backed by anything either. Bitcoins have properties resulting from the system&#039;s design that allows them to be subjectively valued by individuals.  This valuation is demonstrated when individuals freely exchange for or with bitcoins.  Please refer to the [http://en.wikipedia.org/wiki/Subjective_theory_of_value Subjective Theory of Value].&lt;br /&gt;
&lt;br /&gt;
See also: the &amp;quot;[[#Bitcoin_is_backed_by_processing_power|Bitcoin is backed by processing power]]&amp;quot; myth.&lt;br /&gt;
&lt;br /&gt;
== The value of bitcoins are based on how much electricity and computing power it takes to mine them ==&lt;br /&gt;
&lt;br /&gt;
This statement is an attempt to apply to Bitcoin the [http://en.wikipedia.org/wiki/Labor_theory_of_value labor theory of value], which is generally accepted as false. Just because something takes X resources to create does not mean that the resulting product will be worth X. It can be worth more, or less, depending on the utility thereof to its users.&lt;br /&gt;
&lt;br /&gt;
In fact the causality is the reverse of that (this applies to the labor theory of value in general). The cost to mine bitcoins is based on how much they are worth. If bitcoins go up in value, more people will mine (because [[Mining|mining]] is profitable), thus [[difficulty]] will go up, thus the cost of mining will go up. The inverse happens if bitcoins go down in value. These effects balance out to cause mining to always cost an amount proportional to the value of bitcoins it produces.&lt;br /&gt;
&lt;br /&gt;
== Bitcoins have no intrinsic value (unlike some other things) ==&lt;br /&gt;
&lt;br /&gt;
This is simply not true. Each bitcoin gives the holder the ability to embed a large number of short in-transaction messages in a globally distributed and timestamped permanent data store, namely the bitcoin blockchain. There is no other similar datastore which is so widely distributed. There is a tradeoff between the exact number of messages and how quickly they can be embedded. But as of December 2013, it&#039;s fair to say that one bitcoin allows around 1000 such messages to be embedded, each within about 10 minutes of being sent, since a fee of 0.001 BTC is enough to get transactions confirmed quickly. This message embedding certainly has intrinsic value since it can be used to prove ownership of a document at a certain time, by including a one-way hash of that document in a transaction. Considering that electronic notarization services charge something like $10/document, this would give an intrinsic value of around $10,000 per bitcoin.&lt;br /&gt;
&lt;br /&gt;
While some other tangible commodities do have intrinsic value, that value is generally much less than its trading price. Consider for example that gold, if it were not used as an inflation-proof store of value, but rather only for its industrial uses, would certainly not be worth what it is today, since the industrial requirements for gold are far smaller than the available supply thereof.&lt;br /&gt;
&lt;br /&gt;
In any event, while historically intrinsic value, as well as other attributes like divisibility, fungibility, scarcity, durability, helped establish certain commodities as mediums of exchange, it is certainly not a prerequisite. While bitcoins are accused of lacking &#039;intrinsic value&#039; in this sense, they make up for it in spades by possessing the other qualities necessary to make it a good medium of exchange, equal to or better than [http://en.wikipedia.org/wiki/Commodity_money commodity money].&lt;br /&gt;
&lt;br /&gt;
Another way to think about this is to consider the value of bitcoin the global network, rather than each bitcoin in isolation. The value of an individual telephone is derived from the network it is connected to. If there was no phone network, a telephone would be useless. Similarly the value of an individual bitcoin derives from the global network of bitcoin-enabled merchants, exchanges, wallets, etc... Just like a phone is necessary to transmit vocal information through the network, a bitcoin is necessary to transmit economic information through the network.&lt;br /&gt;
&lt;br /&gt;
Value is ultimately determined by what people are willing to trade for - by supply and demand.&lt;br /&gt;
&lt;br /&gt;
== Bitcoins are illegal because they&#039;re not legal tender ==&lt;br /&gt;
In March 2013, the U.S. [http://en.wikipedia.org/wiki/Financial_Crimes_Enforcement_Network Financial Crimes Enforcement Network] issues a new set of guidelines on &amp;quot;de-centralized virtual currency&amp;quot;, clearly targeting Bitcoin. Under the new guidelines, &amp;quot;a user of virtual currency is not a Money Services Businesses (MSB) under FinCEN&#039;s regulations and therefore is not subject to MSB registration, reporting, and record keeping regulations.&amp;quot; [[Mining|Miners]] on the other hand, might need to register, if they sell bitcoins for &amp;quot;real currency or its equivalent&amp;quot;.&amp;lt;ref&amp;gt;[http://arstechnica.com/tech-policy/2013/03/us-regulator-bitcoin-exchanges-must-comply-with-money-laundering-laws/ US regulator: Bitcoin exchanges must comply with money-laundering laws | Ars Technica]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In general, there are a [http://en.wikipedia.org/wiki/Local_currency number of currencies] in existence that are not official government-backed currencies. A currency is, after all, nothing more than a convenient unit of account. While national laws may vary from country to country, and you should certainly check the laws of your jurisdiction, in general trading in any commodity, including digital currency like Bitcoin, [http://en.wikipedia.org/wiki/BerkShares BerkShares], game currencies like WoW gold, or Linden dollars, is not illegal.&lt;br /&gt;
&lt;br /&gt;
== Bitcoin is a form of domestic terrorism because it only harms the economic stability of the USA and its currency ==&lt;br /&gt;
&lt;br /&gt;
According to [http://en.wikipedia.org/wiki/Definitions_of_terrorism#United_States the definition of terrorism in the United States], you need to do violent activities to be considered a terrorist for legal purposes.  Recent off-the-cuff remarks by politicians have no basis in law or fact.&lt;br /&gt;
&lt;br /&gt;
Also, Bitcoin isn&#039;t domestic to the US or any other country. It&#039;s a worldwide community, as can be seen in this [https://bitcointalk.org/?topic=2346.0 map of Bitcoin nodes].&lt;br /&gt;
&lt;br /&gt;
== Bitcoin will only enable tax evaders which will lead to the eventual downfall of civilization ==&lt;br /&gt;
&lt;br /&gt;
Cash transactions hold the same level of anonymity but are still taxed successfully. It is up to you to follow the applicable state laws in your home country, or face the consequences.&lt;br /&gt;
&lt;br /&gt;
While it may be easy to transfer bitcoins anonymously, &#039;&#039;spending&#039;&#039; them anonymously on tangibles is just as hard as spending any other kind of money anonymously.  Tax evaders are often caught because their lifestyle and assets are inconsistent with their reported income, and not necessarily because government is able to follow their money.&lt;br /&gt;
&lt;br /&gt;
== Bitcoins can be printed/minted by anyone and are therefore worthless ==&lt;br /&gt;
&lt;br /&gt;
Bitcoins are not printed/minted. Instead, [[Blocks]] are computed by miners and for their efforts they are awarded a specific amount of bitcoins and transaction fees paid by others. See [[Mining]] for more information on how this process works.&lt;br /&gt;
&lt;br /&gt;
== Bitcoins are worthless because they&#039;re based on unproven cryptography ==&lt;br /&gt;
&lt;br /&gt;
SHA256 and ECDSA which are used in Bitcoin are well-known industry standard algorithms. SHA256 is endorsed and used by the US Government and is standardized (FIPS180-3 Secure Hash Standard). If you believe that these algorithms are untrustworthy then you should not trust Bitcoin, credit card transactions or any type of electronic bank transfer. Bitcoin has a sound basis in well understood cryptography.&lt;br /&gt;
&lt;br /&gt;
== Early adopters are unfairly rewarded ==&lt;br /&gt;
&lt;br /&gt;
Early adopters are rewarded for taking the higher risk with their time and money. The capital invested in bitcoin at each stage of its life invigorated the community and helped the currency to reach subsequent milestones. Arguing that early adopters do not deserve to profit from this is akin to saying that early investors in a company, or people who buy stock at a company IPO (Initial Public Offering), are unfairly rewarded.&lt;br /&gt;
&lt;br /&gt;
This argument also depends on bitcoin early adopters using bitcoins to store rather than transfer value. The daily trade on the exchanges (as of Jan 2012) indicates that smaller transactions are becoming the norm, indicating trade rather than investment. In more pragmatic terms, &amp;quot;fairness&amp;quot; is an arbitrary concept that is improbable to be agreed upon by a large population. Establishing &amp;quot;fairness&amp;quot; is no goal of Bitcoin, as this would be impossible.&lt;br /&gt;
&lt;br /&gt;
Looking forwards, considering the amount of publicity bitcoin received as of April 2013, there can be no reasonable grounds for complaint for people who did not invest at that time, and then see the value (possibly) rising drastically higher.&lt;br /&gt;
&lt;br /&gt;
By starting to mine or acquire bitcoins today, you too can become an early adopter.&lt;br /&gt;
&lt;br /&gt;
== 21 million coins isn&#039;t enough; doesn&#039;t scale ==&lt;br /&gt;
&lt;br /&gt;
One Bitcoin is divisible down to eight decimal places. There are really 2,099,999,997,690,000 (just over 2 quadrillion) maximum possible atomic units in the bitcoin system.&lt;br /&gt;
&lt;br /&gt;
The value of &amp;quot;1 BTC&amp;quot; represents 100,000,000 of these. In other words, each is divisible by up to 10^8. &lt;br /&gt;
&lt;br /&gt;
As the value of the unit of 1 BTC grows too large to be useful for day to day transactions, people can start dealing in smaller [[Units|units]], such as milli-bitcoins (mBTC) or micro-bitcoins (μBTC).&lt;br /&gt;
&lt;br /&gt;
== Bitcoins are stored in wallet files, just copy the wallet file to get more coins! ==&lt;br /&gt;
&lt;br /&gt;
No, your wallet contains your secret keys, giving you the rights to spend your bitcoins. Think of it like having bank details stored in a file. If you give your bank details (or bitcoin wallet) to someone else, that doesn&#039;t double the amount of money in your account. You can spend your money or they can spend your money, but not both.&lt;br /&gt;
&lt;br /&gt;
== Lost coins can&#039;t be replaced and this is bad ==&lt;br /&gt;
&lt;br /&gt;
Bitcoins are divisible to 0.00000001, so there being fewer bitcoins remaining is not a problem for the currency itself. If you lose your coins, all other coins will go up in value a little. Consider it a donation to all other bitcoin users.&lt;br /&gt;
&lt;br /&gt;
A related question is: Why don&#039;t we have a mechanism to replace lost coins? The answer is that it is impossible to distinguish between a &#039;lost&#039; coin and one that is simply sitting unused in someone&#039;s wallet.&lt;br /&gt;
&lt;br /&gt;
== It&#039;s a giant ponzi scheme ==&lt;br /&gt;
In a Ponzi Scheme, the founders persuade investors that they’ll profit. Bitcoin does not make such a guarantee. There is no central entity, just individuals building an economy.&lt;br /&gt;
&lt;br /&gt;
A ponzi scheme is a zero sum game. In a ponzi scheme, early adopters can only profit at the expense of late adopters, and the late adopters always lose. Bitcoin has an expected win-win outcome.  Early and present adopters profit from the rise in value as Bitcoins become better understood and in turn demanded by the public at large.  All adopters benefit from the usefulness of a reliable and widely-accepted decentralized peer-to-peer currency.&lt;br /&gt;
&lt;br /&gt;
== Finite coins plus lost coins means deflationary spiral ==&lt;br /&gt;
As deflationary forces may apply, economic factors such as hoarding are offset by human factors that may lessen the chances that a [[Deflationary spiral]] will occur.&lt;br /&gt;
&lt;br /&gt;
== Bitcoin can&#039;t work because there is no way to control inflation ==&lt;br /&gt;
&lt;br /&gt;
Inflation is simply a rise of prices over time, which is generally the result of the devaluing of a currency. This is a function of supply and demand. Given the fact that the supply of bitcoins is fixed at a certain amount, unlike fiat money, the only way for inflation to get out of control is for demand to disappear. Temporary inflation is possible with a rapid adoption of Fractional Reserve Banking but will stabilize once a substantial number of the 21 million &amp;quot;hard&amp;quot; bitcoins are stored as reserves by banks.&lt;br /&gt;
&lt;br /&gt;
Given the fact that Bitcoin is a distributed system of currency, if demand were to decrease to almost nothing, the currency would be doomed anyway.&lt;br /&gt;
&lt;br /&gt;
The key point here is that Bitcoin as a currency can&#039;t be inflated by any single person or entity, like a government, as there&#039;s no way to increase supply past a certain amount.&lt;br /&gt;
&lt;br /&gt;
Indeed, the most likely scenario, as Bitcoin becomes more popular and demand increases, is for the currency to increase in value, or deflate, until demand stabilizes.&lt;br /&gt;
&lt;br /&gt;
== The Bitcoin community consists of anarchist/conspiracy theorist/gold standard &#039;weenies&#039; ==&lt;br /&gt;
&lt;br /&gt;
The members of the community vary in their ideological stances. While it may have been started by ideological enthusiasts, Bitcoin now speaks to a large number of regular pragmatic folk, who simply see its potential for reducing the costs and friction of global e-commerce.&lt;br /&gt;
&lt;br /&gt;
== Anyone with enough computing power can take over the network ==&lt;br /&gt;
&lt;br /&gt;
CONFIRMED, see [[Weaknesses]].&lt;br /&gt;
&lt;br /&gt;
That said, as the network grows, it becomes harder and harder for a single entity to do so. Already the Bitcoin network&#039;s computing power is quite ahead of the world&#039;s fastest supercomputers, together.&lt;br /&gt;
&lt;br /&gt;
What an attacker can do once the network is taken over is quite limited.  Under no circumstances could an attacker create counterfeit coins, fake transactions, or take anybody else&#039;s money.  An attacker&#039;s capabilities are limited to taking back their own money that they very recently spent, and preventing other people&#039;s transactions from receiving confirmations.  Such an attack would be very costly in resources, and for such meager benefits there is little rational economic incentive to do such a thing.&lt;br /&gt;
&lt;br /&gt;
Furthermore, this attack scenario would only be feasible for as long as it was actively underway.  As soon as the attack stopped, the network would resume normal operation.&lt;br /&gt;
&lt;br /&gt;
== Bitcoin violates governmental regulations ==&lt;br /&gt;
&lt;br /&gt;
There is no known governmental regulation which disallows the use of Bitcoin.&lt;br /&gt;
&lt;br /&gt;
See also: the &amp;quot;[[#Bitcoins_are_illegal_because_they.27re_not_legal_tender|Bitcoins are illegal because they&#039;re not legal tender]]&amp;quot; myth.&lt;br /&gt;
&lt;br /&gt;
== Fractional reserve banking is not possible ==&lt;br /&gt;
&lt;br /&gt;
It is possible. See the main article, [[Fractional Reserve Banking and Bitcoin]]&lt;br /&gt;
&lt;br /&gt;
== Point of sale with bitcoins isn&#039;t possible because of the 10 minute wait for confirmation ==&lt;br /&gt;
&lt;br /&gt;
It is true that transactions [[FAQ#Why_do_I_have_to_wait_10_minutes_before_I_can_spend_money_I_received.3F|can]] sometimes take tens of minutes to become &#039;&#039;confirmed&#039;&#039;. Despite this, retailers can accept unconfirmed transactions with very little risk by simply &#039;listening&#039; on the network for a double-spend transaction, or partnering with a company that provides this service. After a head start of merely several seconds, the original transaction would reach so much of the Bitcoin network that a fraudulent double-spend transaction would almost certainly be fruitless. An attacker would have to commit easily-detectable fraud, in person, several hundred or several thousand times, before one of these low-value double-spend attempts would likely succeed.&lt;br /&gt;
&lt;br /&gt;
An attacker could work around the necessity of sending out a second fraudulent transaction to the Bitcoin network by attempting to [[Mining|solo-mine]] an attack block containing the attack transaction himself - temporarily withholding the block with the rest of the network - and then execute the fraudulent purchase within seconds, or minutes at most, of mining the attack block, before broadcasting the attack block.  However, the cost of such an activity would dramatically outweigh the value of anything typically offered without a confirmation wait for several reasons.&lt;br /&gt;
&lt;br /&gt;
First, mining a block (attack or otherwise) entitles the miner to a valuable block reward, and because the attack involves temporarily withholding the block from the network, the attacker would put himself in the likely position of his block becoming [[Stale block|stale]], which would result in forfeiture of the entire reward.  Most solo miners solve less than one block per month, so this would represent the loss of proceeds of potentially several weeks of mining.&lt;br /&gt;
&lt;br /&gt;
Second, it is not possible for a solo miner to know exactly when his mining activity will yield a block, and because the attack must be carried out within seconds or minutes of successfully mining a block, the attacker will not be able to know or plan in advance the brief window when the attack would be likely to succeed.  While it may be easy for a determined attacker to get low-value items that are sold and delivered online instantly without waiting for confirmations (such as downloads), this unpredictability and the briefness of the opportunity would make it extremely difficult to commit any kind of fraud where real-life interaction is required, such as visiting a merchant or taking possession of goods.   Petty shoplifting would be far simpler.  Even if an attacker went forward with this attack, the retailer would be notified of the fraud the moment the attack block is released seconds later.&lt;br /&gt;
&lt;br /&gt;
In short, the 10-minute wait for confirmation is only practically necessary when delivering goods of value that significantly exceed the block reward an attacker would have to risk to perform an attack and where recourse after delivery is practically nonexistent, such as money transfers.&lt;br /&gt;
&lt;br /&gt;
== After 21 million coins are mined, no one will generate new blocks ==&lt;br /&gt;
&lt;br /&gt;
When operating costs can&#039;t be covered by the block creation bounty, which will happen some time before the total amount of BTC is reached, miners will earn some profit from [[transaction fees]].  However unlike the block reward, there is [http://bitcoin.stackexchange.com/questions/876/how-much-will-transaction-fees-eventually-be/895#895 no coupling between transaction fees and the need for security], so there is less of a guarantee that the amount of [[Mining|mining]] being performed will be sufficient to maintain the network&#039;s security.&lt;br /&gt;
&lt;br /&gt;
== Bitcoin has no built-in chargeback mechanism, and this isn&#039;t good ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Why some people think this is bad&#039;&#039;&#039;: Chargebacks are useful for limiting fraud. The person handling your money has a responsibility to prevent fraud. If you buy something on eBay and the seller never ships it, PayPal takes funds from the seller&#039;s account and gives you back the money. This strengthens the eBay economy, because people recognize that their risk is limited and are more willing to purchase items from risky sellers.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Why it&#039;s actually a good thing&#039;&#039;&#039;: Bitcoin is designed such that your money is yours and yours alone. Allowing chargebacks implies that it is possible for another entity to take your money from you. You can have either total ownership rights of your money, or fraud protection, but not both.  That said, nothing inherent in the dollar or euro or any other currency is necessary for chargebacks to be possible, and likewise, nothing prevents the creation of PayPal-like services denominated in Bitcoin that provide chargebacks or fraud protection.&lt;br /&gt;
&lt;br /&gt;
The statement &amp;quot;The person handling your money has a responsibility to prevent fraud&amp;quot; is still true; the power has been shifted into your own hands. Fraud will always exist. It&#039;s up to you to only send bitcoins to trusted entities. It is possible to trust an online identity without ever knowing their physical identity; see the [http://wiki.bitcoin-otc.com/wiki/OTC_Rating_System OTC Web of Trust].&lt;br /&gt;
&lt;br /&gt;
== Quantum computers would break Bitcoin&#039;s security ==&lt;br /&gt;
&lt;br /&gt;
While ECDSA is indeed not secure under quantum computing, quantum computers don&#039;t yet exist and probably won&#039;t for a while.&lt;br /&gt;
The DWAVE system often written about in the press is, even if all their claims are true, not a quantum computer of a kind that could be used for cryptography.&lt;br /&gt;
Bitcoin&#039;s security, when used properly with a new address on each transaction, depends on more than just ECDSA: Cryptographic hashes are much stronger than ECDSA under QC.&lt;br /&gt;
Bitcoin&#039;s security was designed to be upgraded in a forward compatible way and could be [http://en.wikipedia.org/wiki/Post-quantum_cryptography upgraded] if this were considered an imminent threat.&lt;br /&gt;
&lt;br /&gt;
See the implications of quantum computers on public key cryptography here http://en.wikipedia.org/wiki/Quantum_computer#Potential&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;risk&#039;&#039; of quantum computers is also there for financial institutions, like banks, because they heavily rely on cryptography when doing transactions.&lt;br /&gt;
&lt;br /&gt;
== Bitcoin makes self-sufficient artificial intelligence possible, which will in turn become self-aware and decide to exterminate humanity ==&lt;br /&gt;
An artificial intelligence powerful enough to be threatening to mankind wouldn&#039;t depend on mankind to make Bitcoin, it would just invent something like Bitcoin itself and design it to be so attractive to us that we couldn&#039;t resist using it.&lt;br /&gt;
&lt;br /&gt;
== [[Mining|Bitcoin mining]] is a waste of energy and harmful for ecology ==&lt;br /&gt;
No more so than the wastefulness of mining gold out of the ground, melting it down and shaping it into bars, and then putting it back underground again. Not to mention the building of big fancy buildings, the waste of energy printing and minting all the various fiat currencies, the transportation thereof in armored cars by no less than two security guards for each who could probably be doing something more productive, etc. &lt;br /&gt;
&lt;br /&gt;
As far as mediums of exchange go, Bitcoin is actually quite economical of resources, compared to others.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Economic Argument 1&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Mining|Bitcoin mining]] is a highly competitive, dynamic, almost [http://en.wikipedia.org/wiki/Perfect_market perfect], market.   Mining rigs can be set up and dismantled almost anywhere in the world with relative ease.   Thus, market forces are constantly pushing mining activity to &#039;&#039;places&#039;&#039; and &#039;&#039;times&#039;&#039; where the marginal price of electricity is low or zero.    These electricity products are cheap for a reason.   Often it’s because the electricity is difficult (and wasteful) to transport, difficult to store, or because there is low demand and high supply.  Using electricity in this way is a lot less wasteful than simply plugging a mining rig into the mains indiscriminately. &lt;br /&gt;
&lt;br /&gt;
For example, Iceland produces an excess of cheap electricity from renewable sources, but it has no way of exporting electricity because of its remote location. It is conceivable that at some point in future Bitcoin mining will only be profitable in places like Iceland, and unprofitable in places like central Europe, where electricity comes mostly from nuclear and fossil sources.   &lt;br /&gt;
&lt;br /&gt;
Market forces could even push mining into innovative solutions that have an effective electricity consumption of &#039;&#039;zero&#039;&#039;.   Mining always produces heat equivalent to the energy consumed - for example, 1000 watts of mining equipment produces the same amount of heat as a 1000 watt heating element used in an electric space heater, hot tub, water heater, or similar appliance.  Someone already in a willing position to incur the cost of electricity for its heat value alone could run mining equipment specially designed to mine bitcoins while capturing and utilizing the heat produced, without incurring any energy costs beyond what they already intended to spend on heating.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Economic Argument 2&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When the environmental costs of mining are considered, they need to be weighed up against the benefits.   If you question Bitcoin on the grounds that it consumes electricity, then you should also ask questions like this: Will Bitcoin promote economic growth by freeing up trade?  Will this speed up the rate of technological innovation? Will this lead to faster development of green technologies? Will Bitcoin enable new, border crossing [http://en.wikipedia.org/wiki/Smart_grid smart grid] technologies?  …&lt;br /&gt;
&lt;br /&gt;
Dismissal of Bitcoin because of its costs, while ignoring its benefits, is a dishonest argument. In fact, any environmental argument of this type is dishonest, not just pertaining to Bitcoin.  Along similar lines, it could be argued that wind turbines are bad for the environment because making the steel structure consumes energy.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ratio of Capital Costs versus Electrical Costs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The BFL Jalapeno hashes at 5.5 Gh/s using 30W.  That device consumes about $40 per year in electricity (using U.S. residential average of about $0.15 per kWh.)   But the device costs over $300 including shipping.  Thus just about a quarter of all costs over a two-year useful life goes to electricity.  This compares to GPUs where more than 90% of costs over a two-year life went to electricity.  Even more efficient designs can be expected in the future.&lt;br /&gt;
&lt;br /&gt;
== Shopkeepers can&#039;t seriously set prices in bitcoins because of the volatile exchange rate ==&lt;br /&gt;
&lt;br /&gt;
The assumption is that bitcoins must be sold immediately to cover operating expenses. If the shopkeeper&#039;s back-end expenses were transacted in bitcoins as well, then the exchange rate would be irrelevant. Larger adoption of Bitcoin would make prices [http://en.wikipedia.org/wiki/Sticky_%28economics%29 sticky]. Future volatility is expected to decrease, as the size and depth of the market grows. &lt;br /&gt;
&lt;br /&gt;
In the meantime, many merchants simply regularly pull the latest market rates from the exchanges and automatically update the prices on their websites. Also you might be able to buy a put option in order to sell at a fixed rate for a given amount of time. This would protect you from drops in price and simplify your operations for that time period.&lt;br /&gt;
&lt;br /&gt;
== Like Flooz and e-gold, bitcoins serve as opportunities for criminals and will be shut down ==&lt;br /&gt;
&lt;br /&gt;
* Visa, MasterCard, PayPal, and cash all serve as opportunities for criminals as well, but society keeps them around due to their recognized net benefit.&lt;br /&gt;
* Hopefully Bitcoin will grow to the point where no single organization can disrupt the network, or would be better served by helping it.&lt;br /&gt;
* Terrorists fly aircraft into buildings, but the governments have not yet abolished consumer air travel. Obviously the public good outweighs the possible bad in their opinion.&lt;br /&gt;
* Criminal law differs between jurisdictions.&lt;br /&gt;
&lt;br /&gt;
== Bitcoins will be shut down by the government just like Liberty Dollars were ==&lt;br /&gt;
&lt;br /&gt;
Liberty Dollars started as a commercial venture to establish an alternative US currency, including physical banknotes and coins, backed by precious metals. This, in and of itself, is not illegal. They were prosecuted under counterfeiting laws because the silver coins allegedly resembled US currency.&lt;br /&gt;
&lt;br /&gt;
Bitcoins do not resemble the currency of the US or of any other nation in any way, shape, or form. The word &amp;quot;dollar&amp;quot; is not attached to them in any way.  The &amp;quot;$&amp;quot; symbol is not used in any way.&lt;br /&gt;
&lt;br /&gt;
Bitcoins have no representational similarity whatsoever to US dollars. &lt;br /&gt;
&lt;br /&gt;
Of course, actually &#039;shutting down&#039; Liberty Dollars was as easy as arresting the head of the company and seizing the offices and the precious metals used as backing. The decentralized Bitcoin, with no leader, no servers, no office, and no tangible asset backing, does not have the same vulnerability.&lt;br /&gt;
&lt;br /&gt;
== Bitcoin is not decentralized because the developers can dictate the software&#039;s behavior ==&lt;br /&gt;
&lt;br /&gt;
The Bitcoin protocol was originally defined by Bitcoin&#039;s inventor, [[Satoshi Nakamoto]], and this protocol has now been widely accepted as the standard by the community of miners and users. &lt;br /&gt;
&lt;br /&gt;
Though the developers of the original Bitcoin client still exert influence over the Bitcoin community, their power to arbitrarily modify the protocol is very limited.  Since the release of Bitcoin v0.3, changes to the protocol have been minor and always in agreement with community consensus.&lt;br /&gt;
&lt;br /&gt;
Protocol modifications, such as increasing the block award from 25 to 50 BTC, are not compatible with clients already running in the network.  If the developers were to release a new client that the majority of miners perceives as corrupt, or in violation of the project’s aims, that client would simply not catch on, and the few users who do try to use it would find that their transactions get rejected by the network.&lt;br /&gt;
&lt;br /&gt;
There are also other [[:Category:Clients|Bitcoin clients made by other developers]] that adhere to the Bitcoin protocol. As more developers create alternative clients, less power will lie with the developers of the original Bitcoin client. &lt;br /&gt;
&lt;br /&gt;
== Bitcoin is a pyramid scheme ==&lt;br /&gt;
&lt;br /&gt;
Bitcoin is nearly opposite of a pyramid scheme in a mathematical sense. Because Bitcoins are algorithmically made scarce, no exponential benefit is derived from introducing new users to use of it. There is a quantitative benefit in having additional interest or demand, but this is in no way exponential.&lt;br /&gt;
&lt;br /&gt;
== Bitcoin was hacked ==&lt;br /&gt;
&lt;br /&gt;
In the history of Bitcoin, there has never been an attack on the [[block chain]]  that resulted in stolen money from a confirmed output.  Neither has there ever been a reported theft resulting directly from  a vulnerability in the [[Original Bitcoin client|original Bitcoin client]], or a vulnerability in the protocol.  Bitcoin is secured by standard cryptographic functions. These functions have been peer reviewed by cryptography experts and are considered unlikely to be breakable in the foreseeable future.&lt;br /&gt;
&lt;br /&gt;
It is safe to say that the currency itself has never been &#039;hacked&#039;.   However, several major &#039;&#039;websites&#039;&#039; using the currency have been hacked, often resulting in high profile Bitcoin heists.  These heists are misreported in some media as hacks on Bitcoin itself.   An analogy:  Just because someone stole US dollars from a supermarket till, doesn’t mean that the US dollar as a currency has been &#039;hacked&#039;.&lt;br /&gt;
&lt;br /&gt;
Most bitcoin thefts are the result of inadequate [[Securing your wallet|wallet security]].  In response to the wave of thefts in 2011 and 2012, the community has developed risk-mitigating measures such as [[Wallet_encryption|wallet encryption]], support for [[BIP_0011|multiple signatures]], [[How_to_set_up_a_secure_offline_savings_wallet|offline wallets]], [[Paper_wallet|paper wallets]], and [[Hardware_wallet|hardware wallets]].  As these measures gain adoption by merchants and users, it is expected that the number of thefts will drop.&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[de:Mythen]]&lt;br /&gt;
[[ru:Мифы о биткоине]]&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Help:FAQ&amp;diff=36254</id>
		<title>Help:FAQ</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Help:FAQ&amp;diff=36254"/>
		<updated>2013-03-20T22:07:59Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* How are new bitcoins created? */ 50 BTC reward present tense -&amp;gt; past tense&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here you will find answers to the most commonly asked questions.&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
=== What are bitcoins? ===&lt;br /&gt;
Bitcoins are the unit of currency of the Bitcoin system. A commonly used shorthand for this is “BTC” to refer to a price or amount (eg: “100 BTC”).&lt;br /&gt;
There are such things as [[physical bitcoins]], but ultimately, a bitcoin is just a number associated with a [[Address|Bitcoin Address]].  A physical bitcoin is simply an object, such as a coin, with the number carefully embedded inside.  See also an [[Introduction|easy intro]] to bitcoin.&lt;br /&gt;
&lt;br /&gt;
=== How can I get bitcoins? ===&lt;br /&gt;
&lt;br /&gt;
There are a variety of ways to acquire bitcoins:&lt;br /&gt;
&lt;br /&gt;
* Accept bitcoins as payment for goods or services.&lt;br /&gt;
* The most common way to buy bitcoins are the [[Buying bitcoins|Bitcoin Exchanges]]&lt;br /&gt;
* There are several services where you can [[Buying_Bitcoins_(the_noob_version)|trade them]] for traditional currency.&lt;br /&gt;
* Find someone to trade cash for bitcoins in-person through a [https://en.bitcoin.it/wiki/Category:Directories local directory].&lt;br /&gt;
* Participate in a [[Pooled mining|mining pool]].&lt;br /&gt;
* If you have a lot of mining hardware, you can solo mine and attempt to create a new [[block]] (currently yields 25 bitcoins plus transaction fees).&lt;br /&gt;
&lt;br /&gt;
===Does Bitcoin guarantee an influx of free money?===&lt;br /&gt;
&lt;br /&gt;
Since Bitcoin is a new technology, what it is and how it works may be initially unclear.  Bitcoin is sometimes presented as being one of three things:&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type: upper-alpha;&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;Some sort of online &#039;get-rich-quick&#039; scam.&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;A loophole in the market economy, the installation of which guarantees a steady influx of cash.&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;A sure investment that will almost certainly yield a profit.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
In fact, none of the above are true.  Let&#039;s look at them independently.&lt;br /&gt;
&lt;br /&gt;
;Is Bitcoin a &#039;get-rich-quick&#039; scheme?&lt;br /&gt;
:If you&#039;ve spent much time on the Internet, you&#039;ve probably seen ads for many &#039;get-rich-quick&#039; schemes. These ads usually promise huge profits for a small amounts of easy work.  Such schemes are usually pyramid/matrix-style schemes that make money from their own employees and offer nothing of any real value.  Most convince one to buy packages that will make them earn hundreds a day, which in fact  have the buyer distribute more such ads, and make minute profits.&lt;br /&gt;
&lt;br /&gt;
:Bitcoin is in no way similar to these schemes. Bitcoin doesn&#039;t promise windfall profits. There is no way for the developers to make money from your involvement or to take money from you. That bitcoins are nearly impossible to acquire without the owner&#039;s consent represents one of its greatest strengths.  Bitcoin is an experimental, virtual currency that may succeed or may fail. None of its developers expect to get rich off of it. &lt;br /&gt;
&lt;br /&gt;
:A more detailed answer to this question can be found [http://bitcointalk.org/?topic=7815.0 here].&lt;br /&gt;
&lt;br /&gt;
;Will I make money by installing the client?&lt;br /&gt;
:Most people who use Bitcoin don&#039;t earn anything by doing so, and the default client has no built-in way to earn Bitcoins.  A small minority of people with dedicated, high-performance hardware do earn some Bitcoins by &amp;quot;&#039;&#039;mining&#039;&#039;&amp;quot; (generating new bitcoins, see [[#What is mining?|What is mining?]]) with special software, but joining Bitcoin shouldn&#039;t be construed as being the road to riches.  Most Bitcoin users get involved because they find the project conceptually interesting and don&#039;t earn anything by doing so.  This is also why you won&#039;t find much speculation about the political or economic repercussions of Bitcoin anywhere on this site: Bitcoin developers owe their dedication to the project&#039;s intellectual yieldings more than to those of a monetary nature.  Bitcoin is still taking its first baby steps; it may go on to do great things but right now it only has something to offer those chasing conceptually interesting projects or bleeding edge technology.&lt;br /&gt;
&lt;br /&gt;
;As an investment, is Bitcoin a sure thing?&lt;br /&gt;
:Bitcoin is a new and interesting electronic currency, the value of which is not backed by any single government or organization.  Like other currencies, it is worth something partly because people are willing to trade it for goods and services. Its exchange rate fluctuates continuously, and sometimes wildly. It lacks wide acceptance and is vulnerable to manipulation by parties with modest funding. Security incidents such as website and account compromise may trigger major sell-offs. Other fluctuations can build into positive feedback loops cause much larger exchange rate fluctuations. Anyone who puts money into Bitcoin should take measures to reduce their risk and consider it as a high-risk currency. Later, as Bitcoin becomes better known and more widely accepted, it should stabilize, but for the time being it is unpredictable. Any investment in Bitcoin should be done carefully and with a clear plan to manage risk.&lt;br /&gt;
&lt;br /&gt;
=== Can I buy bitcoins with Paypal? ===&lt;br /&gt;
&lt;br /&gt;
It is possible to buy [[physical bitcoins]] with PayPal but it is otherwise difficult and/or expensive to do so, because of significant risk to the seller. &lt;br /&gt;
&lt;br /&gt;
While it is possible to find an individual who wishes to sell Bitcoin to you via Paypal, (perhaps via [http://www.bitcoin-otc.com/ #bitcoin-otc] ) most exchanges do not allow funding through PayPal. This is due to repeated cases where someone pays for bitcoins with Paypal receives their bitcoins, and then fraudulently complains to Paypal that they never received their purchase. PayPal often sides with the fraudulent buyer in this case which means any seller would need to cover that risk with higher fees or refuse to accept PayPal altogether.&lt;br /&gt;
&lt;br /&gt;
Buying Bitcoins from individuals with this method is still possible, but requires the seller to have some trust that the buyer will not file a claim with PayPal to reverse the payment.&lt;br /&gt;
&lt;br /&gt;
=== Where can I find a forum to discuss Bitcoin? ===&lt;br /&gt;
&lt;br /&gt;
Please visit the  [[Bitcoin:Community_portal#Bitcoin_Community_Forums_on_various_platforms|Community Portal]] for links to Bitcoin-related forums.&lt;br /&gt;
&lt;br /&gt;
=== How are new bitcoins created? ===&lt;br /&gt;
&lt;br /&gt;
[[File:total_bitcoins_over_time_graph.png|thumb|Number of bitcoins over time, assuming a perfect 10-minute interval.]]&lt;br /&gt;
New bitcoins are generated by the network through the process of &amp;quot;[[#What is mining?|&#039;&#039;mining&#039;&#039;]]&amp;quot;. In a process that is similar to a continuous raffle draw, mining nodes on the network are awarded bitcoins each time they find the solution to a certain mathematical problem (and thereby create a new [[block]]). Creating a block is a [[proof of work]] with a difficulty that varies with the overall strength of the network.  The reward for solving a block is [[Controlled Currency Supply|automatically adjusted]] so that in roughly the first four years of operation of the Bitcoin network, {{formatnum:10500000}} BTC will be created. This amount is halved each four years, so it will be {{formatnum:5250000}} over years 4-8, {{formatnum:2625000}} over years 8-12, and so on. Thus the total number of bitcoins in existence will not exceed {{formatnum:21000000}}. See [[Controlled Currency Supply]].&lt;br /&gt;
&lt;br /&gt;
Blocks are [[Mining|mined]] every 10 minutes, on average and for the first four years ({{formatnum:210000}} blocks) each block included 50 new bitcoins.  As the amount of processing power directed at mining changes, the difficulty of creating new bitcoins changes.  This difficulty factor is calculated every 2016 blocks and is based upon the time taken to generate the previous 2016 blocks. See [[Mining]].&lt;br /&gt;
&lt;br /&gt;
=== What&#039;s the current total number of bitcoins in existence?  ===&lt;br /&gt;
&lt;br /&gt;
[http://blockexplorer.com/q/totalbc Current count]. Also see [https://blockchain.info/charts/total-bitcoins Total bitcoins in circulation chart]&lt;br /&gt;
&lt;br /&gt;
The number of blocks times the coin value of a block is the number of coins in existence. The coin value of a block is 50 BTC for each of the first {{formatnum:210000}} blocks, 25 BTC for the next {{formatnum:210000}} blocks, then 12.5 BTC, 6.25 BTC and so on.&lt;br /&gt;
&lt;br /&gt;
=== How divisible are bitcoins?  ===&lt;br /&gt;
&lt;br /&gt;
A bitcoin can be divided down to 8 decimal places. Therefore, 0.00000001 BTC is the smallest amount that can be handled in a transaction. If necessary, the protocol and related software can be modified to handle even smaller amounts.&lt;br /&gt;
&lt;br /&gt;
=== What do I call the various denominations of bitcoins? ===&lt;br /&gt;
&lt;br /&gt;
There is a lot of discussion about the naming of these fractions of bitcoins. The leading candidates are:&lt;br /&gt;
&lt;br /&gt;
* 1 BTC = 1 bitcoin&lt;br /&gt;
* 0.01 BTC = 1 cBTC = 1 centibitcoin (also referred to as bitcent)&lt;br /&gt;
* 0.001 BTC = 1 mBTC = 1 millibitcoin (also referred to as mbit (pronounced em-bit) or millibit or even bitmill)&lt;br /&gt;
* 0.000 001 BTC = 1 μBTC = 1 microbitcoin (also referred to as ubit (pronounced yu-bit) or microbit)&lt;br /&gt;
&lt;br /&gt;
The above follows the accepted international SI prefixes for hundredths, thousandths, and millionths. There are many arguments against the special case of 0.01 BTC since it is unlikely to represent anything meaningful as the Bitcoin economy grows (it certainly won&#039;t be the equivalent of 0.01 USD, GBP or EUR). Equally, the inclusion of existing national currency denominations such as &amp;quot;cent&amp;quot;, &amp;quot;nickel&amp;quot;, &amp;quot;dime&amp;quot;, &amp;quot;pence&amp;quot;, &amp;quot;pound&amp;quot;, &amp;quot;kopek&amp;quot; and so on are to be discouraged; this is a worldwide currency.&lt;br /&gt;
&lt;br /&gt;
One exception is the &amp;quot;satoshi&amp;quot; which is smallest denomination currently possible &lt;br /&gt;
&lt;br /&gt;
* 0.000 000 01 BTC = 1 satoshi (pronounced sa-toh-shee)&lt;br /&gt;
which is so named in honour of Satoshi Nakamoto, the pseudonym of the inventor of Bitcoin.&lt;br /&gt;
&lt;br /&gt;
For an overview of all defined units of Bitcoin (including less common and niche units), see [[Units]].&lt;br /&gt;
&lt;br /&gt;
Further discussion on this topic can be found on the forums here:&lt;br /&gt;
&lt;br /&gt;
* [https://bitcointalk.org/index.php?topic=14438.msg195287#msg195287 We need names]&lt;br /&gt;
* [https://bitcointalk.org/index.php?topic=8282.0 What to call 0.001 BTC]&lt;br /&gt;
&lt;br /&gt;
=== How does the halving work when the number gets really small? ===&lt;br /&gt;
&lt;br /&gt;
Eventually the reward will go from 0.00000001 BTC to zero and no more bitcoins will be created.  &lt;br /&gt;
&lt;br /&gt;
The block reward calculation is done as a right bitwise shift of a 64-bit signed integer, which means it is divided by two and rounded down. The integer is equal to the value in BTC * 100,000,000 since internally in the reference client software, all Bitcoin balances and values are stored as unsigned integers.&lt;br /&gt;
&lt;br /&gt;
With an initial block reward of 50 BTC, it will take many 4-year periods for the block reward to reach zero.&lt;br /&gt;
&lt;br /&gt;
=== How long will it take to generate all the coins? ===&lt;br /&gt;
&lt;br /&gt;
The last block that will generate coins will be block #6,929,999 which should be generated at or near the year 2140. The total number of coins in circulation will then remain static at 20,999,999.9769 BTC.&lt;br /&gt;
&lt;br /&gt;
Even if the allowed precision is expanded from the current 8 decimals, the total BTC in circulation will always be slightly below 21 million (assuming everything else stays the same). For example, with 16 decimals of precision, the end total would be 20,999,999.999999999496 BTC.&lt;br /&gt;
&lt;br /&gt;
=== If no more coins are going to be generated, will more blocks be created? ===&lt;br /&gt;
&lt;br /&gt;
Absolutely!  Even before the creation of coins ends, the use of [[transaction fee|transaction fees]] will likely make creating new blocks more valuable from the fees than the new coins being created.  When coin generation ends, these fees will sustain the ability to use bitcoins and the Bitcoin network. There is no practical limit on the number of blocks that will be mined in the future.&lt;br /&gt;
&lt;br /&gt;
=== But if no more coins are generated, what happens when Bitcoins are lost? Won&#039;t that be a problem? ===&lt;br /&gt;
&lt;br /&gt;
Because of the law of supply and demand, when fewer bitcoins are available the ones that are left will be in higher demand, and therefore will have a higher value. So, as Bitcoins are lost, the remaining bitcoins will eventually increase in value to compensate. As the value of a bitcoin increases, the number of bitcoins required to purchase an item &#039;&#039;&#039;de&#039;&#039;&#039;creases. This is a [[Deflationary spiral|deflationary economic model]]. As the average transaction size reduces, transactions will probably be denominated in sub-units of a bitcoin such as millibitcoins (&amp;quot;Millies&amp;quot;) or microbitcoins (&amp;quot;Mikes&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
The Bitcoin protocol uses a base unit of one hundred-millionth of a Bitcoin (&amp;quot;a Satoshi&amp;quot;), but unused bits are available in the protocol fields that could be used to denote even smaller subdivisions.&lt;br /&gt;
&lt;br /&gt;
=== If every transaction is broadcast via the network, does Bitcoin scale? ===&lt;br /&gt;
The Bitcoin protocol allows lightweight clients that can use Bitcoin without downloading the entire transaction history. As traffic grows and this becomes more critical, implementations of the concept will be developed. Full network nodes will at some point become a more specialized service.&lt;br /&gt;
&lt;br /&gt;
With some modifications to the software, full Bitcoin nodes could easily keep up with both VISA and MasterCard combined, using only fairly modest hardware (a single high end server by todays standards). It is worth noting that the MasterCard network is structured somewhat like Bitcoin itself - as a peer to peer broadcast network.&lt;br /&gt;
&lt;br /&gt;
Learn more about [[Scalability]].&lt;br /&gt;
&lt;br /&gt;
==Economy==&lt;br /&gt;
=== Where does the value of Bitcoin stem from? What backs up Bitcoin? ===&lt;br /&gt;
Bitcoins have value because they are useful and because they are [[Controlled Currency Supply|scarce]]. As they are accepted by more merchants, their value will [http://en.wikipedia.org/wiki/Sticky_%28economics%29 stabilize]. See the [[Trade|list of Bitcoin-accepting sites]].&lt;br /&gt;
&lt;br /&gt;
When we say that a currency is backed up by gold, we mean that there&#039;s a promise in place that you can exchange the currency for gold. Bitcoins, like dollars and euros, are not backed up by anything except the variety of merchants that accept them.&lt;br /&gt;
&lt;br /&gt;
It&#039;s a common misconception that Bitcoins gain their value from the cost of electricity required to generate them. Cost doesn&#039;t equal value – hiring 1,000 men to shovel a big hole in the ground may be costly, but not valuable. Also, even though scarcity is a critical requirement for a useful currency, it alone doesn&#039;t make anything valuable. For example, your fingerprints are scarce, but that doesn&#039;t mean they have any exchange value.&lt;br /&gt;
&lt;br /&gt;
Alternatively it needs to be added that while the law of supply and demand applies it does not guarantee value of Bitcoins in the future.  If confidence in Bitcoins is lost then it will not matter that the supply can no longer be increased, the demand will fall off with all holders trying to get rid of their coins.  An example of this can be seen in cases of state currencies, in cases when the state in question dissolves and so no new supply of the currency is available (the central authority managing the supply is gone), however the demand for the currency falls sharply because confidence in its purchasing power disappears.  Of-course Bitcoins do not have such central authority managing the supply of the coins, but it does not prevent confidence from eroding due to other situations that are not necessarily predictable.&lt;br /&gt;
&lt;br /&gt;
=== Is Bitcoin a bubble? ===&lt;br /&gt;
Yes, in the same way as the euro and dollar are. They only have value in exchange and have no inherent value. If everyone suddenly stopped accepting your dollars, euros or bitcoins, the &amp;quot;bubble&amp;quot; would burst and their value would drop to zero. But that is unlikely to happen: even in Somalia, where the government collapsed 20 years ago, [http://en.wikipedia.org/wiki/Somali_shilling Somali shillings] are still accepted as payment.&lt;br /&gt;
&lt;br /&gt;
=== Is Bitcoin a Ponzi scheme? ===&lt;br /&gt;
In a Ponzi Scheme, the founders persuade investors that they’ll profit. Bitcoin does not make such a guarantee. There is no central entity, just individuals building an economy.&lt;br /&gt;
&lt;br /&gt;
A ponzi scheme is a zero sum game. Early adopters can only profit at the expense of late adopters. Bitcoin has possible win-win outcomes. Early adopters profit from the rise in value. Late adopters, and indeed, society as a whole, benefit from the usefulness of a stable, fast, inexpensive, and widely accepted p2p currency.&lt;br /&gt;
&lt;br /&gt;
The fact that early adopters benefit more doesn&#039;t alone make anything a Ponzi scheme. All good investments in successful companies have this quality.&lt;br /&gt;
&lt;br /&gt;
=== Doesn&#039;t Bitcoin unfairly benefit early adopters? ===&lt;br /&gt;
Early adopters have a large number of bitcoins now because they took a risk and invested resources in an unproven technology. By so doing, they have helped Bitcoin become what it is now and what it will be in the future (hopefully, a ubiquitous decentralized digital currency). It is only fair they will reap the benefits of their successful investment.&lt;br /&gt;
&lt;br /&gt;
In any case, any bitcoin generated will probably change hands dozens of time as a medium of exchange, so the profit made from the initial distribution will be insignificant compared to the total commerce enabled by Bitcoin.&lt;br /&gt;
&lt;br /&gt;
Since the pricing of Bitcoins has fallen greatly from its June 2011 peak, prices today are much more similar to those enjoyed by many early adopters.  Those who are buying Bitcoins today likely believe that Bitcoin will grow significantly in the future.  Setting aside the brief opportunity to have sold Bitcoins at the June 2011 peak enjoyed by few, the early-adopter window is arguably still open.&lt;br /&gt;
&lt;br /&gt;
===Won&#039;t loss of wallets and the finite amount of Bitcoins create excessive deflation, destroying Bitcoin? ===&lt;br /&gt;
Worries about Bitcoin being destroyed by deflation are not entirely unfounded.  Unlike most currencies, which experience inflation as their founding institutions create more and more units, Bitcoin will likely experience gradual deflation with the passage of time.  Bitcoin is unique in that only a small amount of units will ever be produced (twenty-one million to be exact), this number has been known since the project&#039;s inception, and the units are created at a predicable rate.&lt;br /&gt;
&lt;br /&gt;
Also, Bitcoin users are faced with a danger that doesn&#039;t threaten users of any other currency: if a Bitcoin user loses his wallet, his money is gone forever, unless he finds it again.  And not just to him;  it&#039;s gone completely out of circulation, rendered utterly inaccessible to anyone. As people will lose their wallets, the total number of Bitcoins will slowly decrease.&lt;br /&gt;
&lt;br /&gt;
Therefore, Bitcoin seems to be faced with a unique problem.  Whereas most currencies inflate over time, Bitcoin will mostly likely do the just the opposite.  Time will see the irretrievable loss of an ever-increasing number of Bitcoins.  An already small number will be permanently whittled down further and further.  And as there become fewer and fewer Bitcoins, the laws of supply and demand suggest that their value will probably continually rise.&lt;br /&gt;
&lt;br /&gt;
Thus Bitcoin is bound to once again stray into mysterious territory, because no one exactly knows what happens to a currency that grows continually more valuable. Economists generally agree that a low level of inflation is a good thing for a currency, but nobody is quite sure about what might happens to one that continually deflates.  Although deflation could hardly be called a rare phenomenon, steady, constant deflation is unheard of.  There may be a lot of speculation, no one has any hard data to back up their claims.&lt;br /&gt;
&lt;br /&gt;
That being said, there is a mechanism in place to combat the obvious consequences.  Extreme deflation would render most currencies highly impractical: if a single Canadian dollar could suddenly buy the holder a car, how would one go about buying bread or candy?  Even pennies would fetch more than a person could carry.  Bitcoin, however, offers a simple and stylish solution: infinite divisibility.  Bitcoins can be divided up and trade into as small of pieces as one wants, so no matter how valuable Bitcoins become, one can trade them in practical quantities.  &lt;br /&gt;
&lt;br /&gt;
In fact, infinite divisibility should allow Bitcoins to function in cases of extreme wallet loss.  Even if, in the far future, so many people have lost their wallets that only a single Bitcoin, or a fraction of one, remains, Bitcoin should continue to function just fine.  No one can claim to be sure what is going to happen, but deflation may prove to present a smaller threat than many expect.&lt;br /&gt;
&lt;br /&gt;
For more information, see the [[Deflationary spiral]] page.&lt;br /&gt;
&lt;br /&gt;
=== What if someone bought up all the existing Bitcoins? ===&lt;br /&gt;
Bitcoin markets are competitive -- meaning the price of a bitcoin will rise or fall depending on supply and demand at certain price levels.  Only a fraction of bitcoins issued to date are found on the exchange markets for sale.  So even though technically a buyer with lots of money could buy all the bitcoins offered for sale, unless those holding the rest of the bitcoins offer them for sale as well, even the wealthiest, most determined buyer can&#039;t get at them.&lt;br /&gt;
&lt;br /&gt;
Additionally, new currency continues to be issued daily and will continue to do so for decades though over time the rate at which they are issued declines to insignificant levels.  Those who are mining aren&#039;t obligated to sell their bitcoins so not all bitcoins will make it to the markets even.&lt;br /&gt;
&lt;br /&gt;
This situation doesn&#039;t suggest, however, that the markets aren&#039;t vulnerable to price manipulation.  It doesn&#039;t take significant amounts of money to move the market price up or down and thus Bitcoin remains a volatile asset.&lt;br /&gt;
&lt;br /&gt;
===What if someone creates a new block chain, or a new digital currency that renders Bitcoin obsolete?===&lt;br /&gt;
&lt;br /&gt;
That the block chain cannot be easily forked represents one of the central security mechanisms of Bitcoin.  Given the choice between two block chains, a Bitcoin miner always chooses the longer one - that is to say, the one with the more complex hash.  Thusly, it ensures that each user can only spend their bitcoins once, and that no user gets ripped off.&lt;br /&gt;
&lt;br /&gt;
As a consequence of the block chain structure, there may at any time be many different sub-branches, and the possibility always exists of a transaction being over-written by the longest branch, if it has been recorded in a shorter one.  The older a transaction is though, the lower its chances of being over-written, and the higher of becoming permanent.  Although the block chain prevents one from spending more Bitcoins than one has, it means that transactions can be accidentally nullified.  &lt;br /&gt;
&lt;br /&gt;
A new block chain would leave the network vulnerable to [[double-spending|double-spend]] attacks.  However, the creation of a viable new chain presents considerable difficulty, and the possibility does not present much of a risk.&lt;br /&gt;
&lt;br /&gt;
Bitcoin will always choose the longer Block Chain and determines the relative length of two branches by the complexities of their hashes.  Since the hash of each new block is made from that of the block preceding it, to create a block with a more complex hash, one must be prepared to do more computation than has been done by the entire Bitcoin network from the fork point up to the newest of the blocks one is trying to supersede.  Needless to say, such an undertaking would require a very large amount of processing power and since Bitcoin is continually growing and expanding, it will likely only require more with the passage of time.&lt;br /&gt;
&lt;br /&gt;
A much more distinct and real threat to the Bitcoin use is the development of other, superior virtual currencies, which could supplant Bitcoin and render it obsolete and valueless.&lt;br /&gt;
&lt;br /&gt;
A great deal of careful thought and ingenuity has gone into the development of Bitcoin, but it is the first of its breed, a prototype, and vulnerable to more highly-evolved competitors. At present, any threatening rivals have yet to rear its head; Bitcoin remains the first and foremost private virtual currency, but we can offer no guarantees that it will retain that position.  It would certainly be in keeping with internet history for similar system built from the same principles to supersede and cast Bitcoin into obsolescence, after time had revealed its major shortcomings.  Friendster and Myspace suffered similar fates at the hand of Facebook, Napster was ousted by Limeware, Bearshare and torrent applications, and Skype has all but crushed the last few disciples of the Microsoft Messenger army.  &lt;br /&gt;
&lt;br /&gt;
This may sound rather foreboding, so bear in mind that introduction of new and possibly better virtual currencies will not necessarily herald Bitcoin&#039;s demise.  If Bitcoin establishes itself sufficiently firmly before the inception of the next generation of private, online currencies as to gain widespread acceptance and general stability, future currencies may pose little threat even if they can claim superior design.&lt;br /&gt;
&lt;br /&gt;
==Sending and Receiving Payments==&lt;br /&gt;
&lt;br /&gt;
=== Why do I have to wait 10 minutes before I can spend money I received? ===&lt;br /&gt;
&lt;br /&gt;
10 minutes is the average time taken to find a block. It can be significantly more or less time than that depending on luck; 10 minutes is simply the average case. &lt;br /&gt;
&lt;br /&gt;
You can see how long all other recent transactions have taken here: [http://bitcoinstats.org/ BitcoinStats.org]. &lt;br /&gt;
&lt;br /&gt;
[[Blocks]] (shown as &amp;quot;confirmations&amp;quot; in the GUI) are how the Bitcoin achieves consensus on who owns what. Once a block is found everyone agrees that you now own those coins, so you can spend them again. Until then it&#039;s possible that some network nodes believe otherwise, if somebody is attempting to defraud the system by reversing a transaction. The more confirmations a transaction has, the less risk there is of a reversal. Only 6 blocks or 1 hour is enough to make reversal computationally impractical. This is dramatically better than credit cards which can see chargebacks occur up to three months after the original transaction!&lt;br /&gt;
&lt;br /&gt;
Ten minutes was specifically chosen by [[Satoshi]] as a tradeoff between propagation time of new blocks in large networks and the amount of work wasted due to chain splits. For a more technical explanation, see Satoshi&#039;s [http://www.bitcoin.org/bitcoin.pdf original technical paper].&lt;br /&gt;
&lt;br /&gt;
[[File:TransactionConfirmationTimesExample.PNG]]&lt;br /&gt;
&lt;br /&gt;
=== Do you have to wait until my transactions are confirmed in order to buy or sell things with Bitcoin? ===&lt;br /&gt;
&lt;br /&gt;
YES, you do, IF the transaction is non-recourse. The Bitcoin reference software does not display transactions as confirmed until six blocks have passed (confirmations). As transactions are burred in the chain they become increasingly non-reversible but are very reversible before the first confirmation. Two to six confirmations are recommended for non-recourse situations depending on the value of the transactions involved.&lt;br /&gt;
&lt;br /&gt;
When people ask this question they are usually thinking about applications like supermarkets.  This generally is a recourse situation: if somebody tries to double-spend on a face-to-face transaction it might work a few times, but probabalistically speaking eventually one of the double-spends will get noticed, and the penalty for shoplifting charges in most localities is calibrated to be several times worse than the proceeds of a single shoplifting event.&lt;br /&gt;
&lt;br /&gt;
Double-spends might be a concern for something like a snack machine in a low-traffic area with no nearby security cameras.  Such a machine shouldn&#039;t honor 0-confirmation payments, and should instead use some other mechanism of clearing Bitcoin or validating transactions against reversal, see the wiki article [[Myths#Point_of_sale_with_bitcoins_isn.27t_possible_because_of_the_10_minute_wait_for_confirmation|here]] for alternatives.&lt;br /&gt;
&lt;br /&gt;
Applications that require immediate payment processing, like supermarkets or snack machines, need to manage the risks. Here is one way to reverse an unconfirmed payment:&lt;br /&gt;
&lt;br /&gt;
A [[Double-spending#Finney_attack|Finney attack]], in which an attacker mines a block containing a movement of some coins back to themselves. Once they find a block solution, they quickly go to a merchant and make a purchase, then broadcast the block, thus taking back the coins. This attack is a risk primarily for goods that are dispatched immediately, like song downloads or currency trades. Because the attacker can&#039;t choose the time of the attack, it isn&#039;t a risk for merchants such as supermarkets where you can&#039;t choose exactly when to pay (due to queues, etc). The attack can fail if somebody else finds a block containing the purchasing transaction before you release your own block, therefore, merchants can reduce but not eliminate the risk by making purchasers wait some length of time that&#039;s less than a confirm.&lt;br /&gt;
&lt;br /&gt;
Because pulling off this attack is not trivial, merchants who need to sell things automatically and instantly are most likely to just price the cost of reversal fraud in, or use insurance.&lt;br /&gt;
&lt;br /&gt;
=== I was sent some bitcoins and they haven&#039;t arrived yet! Where are they? ===&lt;br /&gt;
&lt;br /&gt;
Don&#039;t panic!  There are a number of reasons why your bitcoins might not show up yet, and a number of ways to diagnose them.  &lt;br /&gt;
&lt;br /&gt;
The latest version of the Bitcoin-Qt client tells you how far it has yet to go in downloading the blockchain.  Hover over the icon in the bottom right corner of the client to learn your client&#039;s status.&lt;br /&gt;
&lt;br /&gt;
If it has not caught up then it&#039;s possible that your transaction hasn&#039;t been included in a block yet.  &lt;br /&gt;
&lt;br /&gt;
You can check pending transactions in the network by going [http://blockchain.info here] and then searching for your address.  If the transaction is listed here then it&#039;s a matter of waiting until it gets included in a block before it will show in your client.  &lt;br /&gt;
&lt;br /&gt;
If the transaction is based on a coin that was in a recent transaction then it could be considered a low priority transaction. Transfers can take longer if the transaction fee paid was not high enough.  If there is no fee at all the transfer can get a very low priority and take hours or even days to be included in a block.&lt;br /&gt;
&lt;br /&gt;
=== Why does my Bitcoin address keep changing? ===&lt;br /&gt;
&lt;br /&gt;
Whenever the address listed in &amp;quot;Your address&amp;quot; receives a transaction, Bitcoin replaces it with a new address. This is meant to encourage you to use a new address for every transaction, which enhances [[anonymity]]. All of your old addresses are still usable: you can see them in &#039;&#039;Settings -&amp;gt; Your Receiving Addresses&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
===How much will the transaction fee be?===&lt;br /&gt;
&lt;br /&gt;
Some transactions might require a [[transaction fee]] for them to get confirmed in a timely manner.  The transaction fee is processed by and received by the bitcoin miner.  The most recent version of the Bitcoin client will estimate an appropriate fee when a fee might be required.&lt;br /&gt;
&lt;br /&gt;
The fee is added to the payment amount.  For example, if you are sending a 1.234 BTC payment and the client requires a 0.0005 BTC fee, then 1.2345 BTC will be subtracted from the wallet balance for the entire transaction and the address for where the payment was sent will receive a payment of 1.234 BTC.&lt;br /&gt;
&lt;br /&gt;
A fee might be imposed because your transaction looks like a denial of service attack to the Bitcoin system. For example, it might be burdensome to transmit or it might recycle Bitcoins you recently received.  The wallet software attempts to avoid generating burdensome transactions, but it isn&#039;t always able to do so: The funds in your wallet might be new or composed of many tiny payments. &lt;br /&gt;
&lt;br /&gt;
Because the fee is related to the amount of data that makes up the transaction and not to the amount of Bitcoins being sent, the fee may seem extremely low (0.0005 BTC for a 1,000 BTC transfer) or unfairly high (0.004 BTC for a 0.02 BTC payment, or about 20%).  If you are receiving tiny amounts (&#039;&#039;e.g.&#039;&#039; as small payments from a mining pool) then fees when sending will be higher than if your activity follows the pattern of conventional consumer or business transactions. &lt;br /&gt;
&lt;br /&gt;
As of Bitcoin 0.5.3 the required fee will not be higher than 0.05 BTC. For most users there is usually no required fee at all. If a fee is required it will most commonly be 0.0005 BTC.&lt;br /&gt;
&lt;br /&gt;
=== What happens when someone sends me a bitcoin but my computer is powered off? ===&lt;br /&gt;
&lt;br /&gt;
Bitcoins are not actually &amp;quot;sent&amp;quot; to your wallet; the software only uses that term so that we can use the currency without having to learn new concepts.  Your wallet is only needed when you wish to spend coins that you&#039;ve received.&lt;br /&gt;
&lt;br /&gt;
If you are sent coins when your wallet client program is not running, and you later launch the wallet client program, the coins will eventually appear as if they were just received in the wallet. That is to say, when the client program is started it must download blocks and catch up with any transactions it did not already know about.&lt;br /&gt;
&lt;br /&gt;
=== How long does &amp;quot;synchronizing&amp;quot; take when the Bitcoin client is first installed? What&#039;s it doing? ===&lt;br /&gt;
&lt;br /&gt;
The popular Bitcoin client software from bitcoin.org implements a &amp;quot;full&amp;quot; Bitcoin node: It can carry out all the duties of the Bitcoin P2P system, it isn&#039;t simply a &amp;quot;client&amp;quot;. One of the principles behind the operation of full Bitcoin nodes is that they don&#039;t assume that the other participants have followed the rules of the Bitcoin system. During synchronization, the software is processing historical Bitcoin transactions and making sure for itself that all of the rules of the system have been correctly followed.&lt;br /&gt;
&lt;br /&gt;
In normal operation, after synchronizing, the software should use a hardly noticeable amount of your computer&#039;s resources.&lt;br /&gt;
&lt;br /&gt;
When the wallet client program is first installed, its initial validation requires a lot of work from your computer&#039;s hard disk, so the amount of time to synchronize depends on your disk speed and, to a lesser extent, your CPU speed. It can take anywhere from a few hours to a day or so. On a slow computer it could take more than 40 hours of continuous synchronization, so check your computer&#039;s power-saving settings to ensure that it does not turn its hard disk off when unattended for a few hours.  You can use the Bitcoin software during synchronization, but you may not see recent payments to you until the client program has caught up to the point where those transactions happened.&lt;br /&gt;
&lt;br /&gt;
If you feel that this process takes too long, you can download a pre-synchronized blockchain from [http://eu2.bitcoincharts.com/blockchain/ http://eu2.bitcoincharts.com/blockchain/]. Alternatively, you can try an alternative &amp;quot;lite&amp;quot; client such as Multibit or a super-light client like electrum, though these clients have somewhat weaker security, are less mature, and don&#039;t contribute to the health of the P2P network.&lt;br /&gt;
&lt;br /&gt;
==Networking==&lt;br /&gt;
=== Do I need to configure my firewall to run Bitcoin? ===&lt;br /&gt;
&lt;br /&gt;
Bitcoin will connect to other nodes, usually on TCP port 8333. You will need to allow outgoing TCP connections to port 8333 if you want to allow your Bitcoin client to connect to many nodes. [[Testnet]] uses TCP port 18333 instead of 8333.&lt;br /&gt;
&lt;br /&gt;
If you want to restrict your firewall rules to a few IPs, you can find stable nodes in the [[Fallback Nodes|fallback nodes list]].&lt;br /&gt;
&lt;br /&gt;
=== How does the peer finding mechanism work? ===&lt;br /&gt;
&lt;br /&gt;
Bitcoin finds peers primarily by forwarding peer announcements within its own network and each node saves a database of peers that it&#039;s aware of, for future use. In order to bootstrap this process Bitcoin needs a list of initial peers, these can be provided manually but normally it obtains them by querying a set of DNS domain names which have automatically updated lists, if that doesn&#039;t work it falls back to a built-in list which is updated from time to time in new versions of the software. There is also an IRC based mechanism but it is disabled by default.&lt;br /&gt;
&lt;br /&gt;
==Mining==&lt;br /&gt;
===What is mining?===&lt;br /&gt;
[[Mining]] is the process of spending computation power to secure Bitcoin transactions against reversal and introducing new Bitcoins to the system.&lt;br /&gt;
&lt;br /&gt;
Technically speaking, mining is the calculation of a [[hash]] of the a block header, which includes among other things a reference to the previous block, a hash of a set of transactions and a [[nonce]]. If the hash value is found to be less than the current [[target]] (which is inversely proportional to the [[difficulty]]), a new block is formed and the miner gets the newly generated Bitcoins (25 per block at current levels). If the hash is not less than the current target, a new nonce is tried, and a new hash is calculated. This is done millions of times per second by each miner.&lt;br /&gt;
&lt;br /&gt;
===Is mining used for some useful computation?===&lt;br /&gt;
The computations done when mining are internal to Bitcoin and not related to any other distributed computing projects. They serve the purpose of securing the Bitcoin network, which is useful.&lt;br /&gt;
&lt;br /&gt;
===Is it not a waste of energy?===&lt;br /&gt;
Spending energy on creating and securing a free monetary system is hardly a waste. Also, services necessary for the operation of currently widespread monetary systems, such as banks and credit card companies, also spend energy, arguably more than Bitcoin would.&lt;br /&gt;
&lt;br /&gt;
===Why don&#039;t we use calculations that are also useful for some other purpose?===&lt;br /&gt;
To provide security for the Bitcoin network, the calculations involved need to have some [http://bitcoin.stackexchange.com/questions/5617/why-are-bitcoin-calculation-useless/5618#5618 very specific features]. These features are incompatible with leveraging the computation for other purposes.&lt;br /&gt;
&lt;br /&gt;
===How can we stop miners from creating zero transaction blocks?===&lt;br /&gt;
The incentive for miners to include transactions is in the fees that come along with them. If we were to implement some minimum number of transactions per block it would be trivial for a miner to create and include transactions merely to surpass that threshold. As the network matures, the block reward drops, and miners become more dependent on transactions fees to pay their costs, the problem of zero transaction blocks should diminish over time.&lt;br /&gt;
&lt;br /&gt;
===How does the proof-of-work system help secure Bitcoin?===&lt;br /&gt;
To give a general idea of the mining process, imagine this setup:&lt;br /&gt;
&lt;br /&gt;
  payload = &amp;lt;some data related to things happening on the Bitcoin network&amp;gt;&lt;br /&gt;
  nonce = 1&lt;br /&gt;
  hash = [http://en.wikipedia.org/wiki/SHA2 SHA2]( [http://en.wikipedia.org/wiki/SHA2 SHA2]( payload + nonce ) )&lt;br /&gt;
&lt;br /&gt;
The work performed by a miner consists of repeatedly increasing &amp;quot;nonce&amp;quot; until&lt;br /&gt;
the hash function yields a value, that has the rare property of being below a certain&lt;br /&gt;
target threshold. (In other words: The hash &amp;quot;starts with a certain number of zeroes&amp;quot;,&lt;br /&gt;
if you display it in the fixed-length representation, that is typically used.)&lt;br /&gt;
&lt;br /&gt;
As can be seen, the mining process doesn&#039;t compute anything special. It merely&lt;br /&gt;
tries to find a number (also referred to as nonce) which - in combination with the payload -&lt;br /&gt;
results in a hash with special properties.&lt;br /&gt;
&lt;br /&gt;
The advantage of using such a mechanism consists of the fact, that it is very easy to check a result: Given the payload and a specific nonce, only a single call of the hashing function is needed to verify that the hash has the required properties. Since there is no known way to find these hashes other than brute force, this can be used as a &amp;quot;proof of work&amp;quot; that someone invested a lot of computing power to find the correct nonce for this payload.&lt;br /&gt;
&lt;br /&gt;
This feature is then used in the Bitcoin network to secure various aspects. An attacker&lt;br /&gt;
that wants to introduce malicious payload data into the network, will need to do the&lt;br /&gt;
required proof of work before it will be accepted. And as long as honest miners have more&lt;br /&gt;
computing power, they can always outpace an attacker.&lt;br /&gt;
&lt;br /&gt;
Also see [http://en.wikipedia.org/wiki/Hashcash Hashcash] and [http://en.wikipedia.org/wiki/Proof-of-work_system Proof-of-work system] and [http://en.wikipedia.org/wiki/SHA2 SHA2] and on Wikipedia.&lt;br /&gt;
&lt;br /&gt;
===Why was the &amp;quot;Generate coin&amp;quot; option of the client software removed?===&lt;br /&gt;
&lt;br /&gt;
In the early days of Bitcoin, it was easy for anyone to find new blocks using standard CPUs. As more and more people started mining, the [[difficulty]] of finding new blocks has greatly increased to the point where the average time for a CPU to find a single block can be many years. The only cost-effective method of [[Mining|mining]] is using a high-end graphics card with special software (see also [[Why a GPU mines faster than a CPU]]) and/or joining a [[Bitcoin Pool|mining pool]]. Since solo CPU mining is essentially useless, it was removed from the GUI of the Bitcoin software.&lt;br /&gt;
&lt;br /&gt;
==Security==&lt;br /&gt;
&lt;br /&gt;
===Could miners collude to give themselves money or to fundamentally change the nature of Bitcoin?===&lt;br /&gt;
&lt;br /&gt;
There are two questions in here.  Let&#039;s look at them separately.&lt;br /&gt;
&lt;br /&gt;
;Could miners gang up and give themselves money?&lt;br /&gt;
&lt;br /&gt;
Mining itself is the process of creating new blocks in the block chain.  Each block contains a list of all the transactions that have taken place across the entire Bitcoin network since the last block was created, as well as a hash of the previous block.  New blocks are &#039;mined&#039;, or rather, generated, by  Bitcoin clients correctly guessing sequences of characters in codes called &#039;hashes,&#039; which are created using information from previous blocks.  Bitcoin users may download specialized &#039;mining&#039; software, which  allows them to dedicate some amount of their processing power – however large or small – to guessing at strings within the hash of the previous block.  Whoever makes the right guess first, thus creating a new block, receives a reward in Bitcoins.&lt;br /&gt;
	&lt;br /&gt;
The block chain is one of the two structures that makes Bitcoin secure, the other being the public-key encryption system on which Bitcoin trade is based.  The block chain assures that not only is every single transaction that ever takes place recorded, but that every single transaction is recorded on the computer of anyone who chooses to store the relevant information.  Many, many users have complete records of every transaction in Bitcoins history readily available to them at any point, and anyone who wants in the information can obtain it with ease.  These things make Bitcoin very hard to fool.&lt;br /&gt;
&lt;br /&gt;
The Bitcoin network takes considerable processing power to run, and since those with the most processing power can make the most guesses, those who put the most power toward to sustaining the network earn the most currency.  Each correct guess yields, at present, twenty-five Bitcoins, and as Bitcoins are presently worth something (although the value still fluctuates) every miner who earns any number of Bitcoins makes money.  Some miners pull in Bitcoins on their own; and some also join or form pools wherein all who contribute earn a share of the profits.  &lt;br /&gt;
	&lt;br /&gt;
Therefore, first answer is a vehement “yes”  – no only can miners collude to get more money, Bitcoin is designed to encourage them to do so.  Bitcoin pools are communal affairs, and there is nothing dishonest or underhanded about them.&lt;br /&gt;
&lt;br /&gt;
Of course, the real question is:&lt;br /&gt;
&lt;br /&gt;
;Can they do so in ways not sanction by Bitcoin developers?  Is there any way to rip off the network and make loads of money dishonestly?&lt;br /&gt;
&lt;br /&gt;
Bitcoin isn&#039;t infallible.  It can be cheated, but doing so is extremely difficult.  Bitcoin was designed to evade some of the central problems with modern currencies – namely, that their trustworthiness hinges upon that of people who might not have users&#039; best interests in mind.  Every currency in the world (other than Bitcoin) is controlled by large institutions who keep track of what&#039;s done with it, and who can manipulate its value.  And every other currency has value because people trust the institutions that control them.&lt;br /&gt;
&lt;br /&gt;
Bitcoin doesn&#039;t ask that its users trust any institution.  Its security is based on the cryptography that is an integral part of its structure, and that is readily available for any and all to see.  Instead of one entity keeping track of transactions, the entire network does, so Bitcoins are astoundingly difficult to steal, or double-spend. Bitcoins are created in a regular and predictable fashion, and by many different users, so no one can decide to make a whole lot more and lessen their value.  In short, Bitcoin is designed to be inflation-proof, double-spend-proof and completely distributed.&lt;br /&gt;
&lt;br /&gt;
Nonetheless, there are a few ways that one can acquire Bitcoins dishonestly.  Firstly, one can steal private keys.  Key theft isn&#039;t something that Bitcoin security has been designed to prevent: it&#039;s up to users to keep theirs safe.  But the cryptography is designed so that it is completely impossible to deduce someone&#039;s private key from their public one. As long as you keep your private key to yourself, you don&#039;t have much to worry about.  Furthermore, one could theoretically create a new block chain, but due to the way in which the block chain is constructed, this would be extremely difficult and require massive amounts of processing power.  A full explanation of the difficulties involved can be found in the [[block chain]] article.&lt;br /&gt;
&lt;br /&gt;
Bitcoin can be ripped off – but doing so would be extremely hard and require considerable expertise and a staggering amount of processing power.  And it&#039;s only going to get harder with time.  Bitcoin isn&#039;t impenetrable, but it&#039;s close enough to put any real worries in the peripherals.&lt;br /&gt;
	&lt;br /&gt;
;Could miners fundamentally change the nature of Bitcoin?&lt;br /&gt;
&lt;br /&gt;
Once again, almost certainly not.&lt;br /&gt;
&lt;br /&gt;
Bitcoin is a distributed network, so any changes implemented to the system must be accepted by all users.  Someone trying to change the way Bitcoins are generated would have to convince every user to download and use their software – so the only changes that would go through are those that would be equally benefit all users. &lt;br /&gt;
&lt;br /&gt;
And thus, it is more or less impossible for anyone to change the function of Bitcoin to their advantage.  If users don&#039;t like the changes, they won&#039;t adopt them, whereas if users do like them, then these will help everyone equally.  Of course, one can conceive of a situation where someone manages to get a change pushed through that provides them with an advantage that no one notices, but given that Bitcoin is structurally relatively simple, it is unlikely that any major changes will go through without someone noticing first.&lt;br /&gt;
&lt;br /&gt;
The fact that such changes are so difficult to make testifies to the fully distributed nature of Bitcoin.  Any centrally controlled currency can be modified by its central agency without the consent of its adherents.  Bitcoin has no central authority, so it changes only at the behest of the whole community.  Bitcoins development represents a kind of collective evolution; the first of its kind among currencies.&lt;br /&gt;
&lt;br /&gt;
==Help==&lt;br /&gt;
===I&#039;d like to learn more.  Where can I get help?===&lt;br /&gt;
&lt;br /&gt;
* Read the [[Introduction|introduction to bitcoin]] &lt;br /&gt;
* See the videos, podcasts, and blog posts from the [[Press]]&lt;br /&gt;
* Read and post on the [[Bitcoin:Community_portal#Bitcoin_Community_Forums|forums]]&lt;br /&gt;
* Chat on one of the [[Bitcoin:Community_portal#IRC_Chat|Bitcoin IRC]] channels&lt;br /&gt;
* Listen to [http://omegataupodcast.net/2011/03/59-bitcoin-a-digital-decentralized-currency/ this podcast], which goes into the details of how bitcoin works&lt;br /&gt;
* Ask questions on the [http://bitcoin.stackexchange.com Bitcoin Stack Exchange]&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Man page]]&lt;br /&gt;
* [[Introduction]]&lt;br /&gt;
&lt;br /&gt;
[[de:FAQ]]&lt;br /&gt;
[[zh-cn:FAQ]]&lt;br /&gt;
[[fr:FAQ]]&lt;br /&gt;
[[ru:FAQ]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Technical]]&lt;br /&gt;
[[Category:Vocabulary]]&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Help:FAQ&amp;diff=36253</id>
		<title>Help:FAQ</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Help:FAQ&amp;diff=36253"/>
		<updated>2013-03-20T22:02:43Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Could miners collude to give themselves money or to fundamentally change the nature of Bitcoin? */ 50 BTC reward -&amp;gt; 25 BTC reward&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here you will find answers to the most commonly asked questions.&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
=== What are bitcoins? ===&lt;br /&gt;
Bitcoins are the unit of currency of the Bitcoin system. A commonly used shorthand for this is “BTC” to refer to a price or amount (eg: “100 BTC”).&lt;br /&gt;
There are such things as [[physical bitcoins]], but ultimately, a bitcoin is just a number associated with a [[Address|Bitcoin Address]].  A physical bitcoin is simply an object, such as a coin, with the number carefully embedded inside.  See also an [[Introduction|easy intro]] to bitcoin.&lt;br /&gt;
&lt;br /&gt;
=== How can I get bitcoins? ===&lt;br /&gt;
&lt;br /&gt;
There are a variety of ways to acquire bitcoins:&lt;br /&gt;
&lt;br /&gt;
* Accept bitcoins as payment for goods or services.&lt;br /&gt;
* The most common way to buy bitcoins are the [[Buying bitcoins|Bitcoin Exchanges]]&lt;br /&gt;
* There are several services where you can [[Buying_Bitcoins_(the_noob_version)|trade them]] for traditional currency.&lt;br /&gt;
* Find someone to trade cash for bitcoins in-person through a [https://en.bitcoin.it/wiki/Category:Directories local directory].&lt;br /&gt;
* Participate in a [[Pooled mining|mining pool]].&lt;br /&gt;
* If you have a lot of mining hardware, you can solo mine and attempt to create a new [[block]] (currently yields 25 bitcoins plus transaction fees).&lt;br /&gt;
&lt;br /&gt;
===Does Bitcoin guarantee an influx of free money?===&lt;br /&gt;
&lt;br /&gt;
Since Bitcoin is a new technology, what it is and how it works may be initially unclear.  Bitcoin is sometimes presented as being one of three things:&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type: upper-alpha;&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;Some sort of online &#039;get-rich-quick&#039; scam.&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;A loophole in the market economy, the installation of which guarantees a steady influx of cash.&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;A sure investment that will almost certainly yield a profit.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
In fact, none of the above are true.  Let&#039;s look at them independently.&lt;br /&gt;
&lt;br /&gt;
;Is Bitcoin a &#039;get-rich-quick&#039; scheme?&lt;br /&gt;
:If you&#039;ve spent much time on the Internet, you&#039;ve probably seen ads for many &#039;get-rich-quick&#039; schemes. These ads usually promise huge profits for a small amounts of easy work.  Such schemes are usually pyramid/matrix-style schemes that make money from their own employees and offer nothing of any real value.  Most convince one to buy packages that will make them earn hundreds a day, which in fact  have the buyer distribute more such ads, and make minute profits.&lt;br /&gt;
&lt;br /&gt;
:Bitcoin is in no way similar to these schemes. Bitcoin doesn&#039;t promise windfall profits. There is no way for the developers to make money from your involvement or to take money from you. That bitcoins are nearly impossible to acquire without the owner&#039;s consent represents one of its greatest strengths.  Bitcoin is an experimental, virtual currency that may succeed or may fail. None of its developers expect to get rich off of it. &lt;br /&gt;
&lt;br /&gt;
:A more detailed answer to this question can be found [http://bitcointalk.org/?topic=7815.0 here].&lt;br /&gt;
&lt;br /&gt;
;Will I make money by installing the client?&lt;br /&gt;
:Most people who use Bitcoin don&#039;t earn anything by doing so, and the default client has no built-in way to earn Bitcoins.  A small minority of people with dedicated, high-performance hardware do earn some Bitcoins by &amp;quot;&#039;&#039;mining&#039;&#039;&amp;quot; (generating new bitcoins, see [[#What is mining?|What is mining?]]) with special software, but joining Bitcoin shouldn&#039;t be construed as being the road to riches.  Most Bitcoin users get involved because they find the project conceptually interesting and don&#039;t earn anything by doing so.  This is also why you won&#039;t find much speculation about the political or economic repercussions of Bitcoin anywhere on this site: Bitcoin developers owe their dedication to the project&#039;s intellectual yieldings more than to those of a monetary nature.  Bitcoin is still taking its first baby steps; it may go on to do great things but right now it only has something to offer those chasing conceptually interesting projects or bleeding edge technology.&lt;br /&gt;
&lt;br /&gt;
;As an investment, is Bitcoin a sure thing?&lt;br /&gt;
:Bitcoin is a new and interesting electronic currency, the value of which is not backed by any single government or organization.  Like other currencies, it is worth something partly because people are willing to trade it for goods and services. Its exchange rate fluctuates continuously, and sometimes wildly. It lacks wide acceptance and is vulnerable to manipulation by parties with modest funding. Security incidents such as website and account compromise may trigger major sell-offs. Other fluctuations can build into positive feedback loops cause much larger exchange rate fluctuations. Anyone who puts money into Bitcoin should take measures to reduce their risk and consider it as a high-risk currency. Later, as Bitcoin becomes better known and more widely accepted, it should stabilize, but for the time being it is unpredictable. Any investment in Bitcoin should be done carefully and with a clear plan to manage risk.&lt;br /&gt;
&lt;br /&gt;
=== Can I buy bitcoins with Paypal? ===&lt;br /&gt;
&lt;br /&gt;
It is possible to buy [[physical bitcoins]] with PayPal but it is otherwise difficult and/or expensive to do so, because of significant risk to the seller. &lt;br /&gt;
&lt;br /&gt;
While it is possible to find an individual who wishes to sell Bitcoin to you via Paypal, (perhaps via [http://www.bitcoin-otc.com/ #bitcoin-otc] ) most exchanges do not allow funding through PayPal. This is due to repeated cases where someone pays for bitcoins with Paypal receives their bitcoins, and then fraudulently complains to Paypal that they never received their purchase. PayPal often sides with the fraudulent buyer in this case which means any seller would need to cover that risk with higher fees or refuse to accept PayPal altogether.&lt;br /&gt;
&lt;br /&gt;
Buying Bitcoins from individuals with this method is still possible, but requires the seller to have some trust that the buyer will not file a claim with PayPal to reverse the payment.&lt;br /&gt;
&lt;br /&gt;
=== Where can I find a forum to discuss Bitcoin? ===&lt;br /&gt;
&lt;br /&gt;
Please visit the  [[Bitcoin:Community_portal#Bitcoin_Community_Forums_on_various_platforms|Community Portal]] for links to Bitcoin-related forums.&lt;br /&gt;
&lt;br /&gt;
=== How are new bitcoins created? ===&lt;br /&gt;
&lt;br /&gt;
[[File:total_bitcoins_over_time_graph.png|thumb|Number of bitcoins over time, assuming a perfect 10-minute interval.]]&lt;br /&gt;
New bitcoins are generated by the network through the process of &amp;quot;[[#What is mining?|&#039;&#039;mining&#039;&#039;]]&amp;quot;. In a process that is similar to a continuous raffle draw, mining nodes on the network are awarded bitcoins each time they find the solution to a certain mathematical problem (and thereby create a new [[block]]). Creating a block is a [[proof of work]] with a difficulty that varies with the overall strength of the network.  The reward for solving a block is [[Controlled Currency Supply|automatically adjusted]] so that in roughly the first four years of operation of the Bitcoin network, {{formatnum:10500000}} BTC will be created. This amount is halved each four years, so it will be {{formatnum:5250000}} over years 4-8, {{formatnum:2625000}} over years 8-12, and so on. Thus the total number of bitcoins in existence will not exceed {{formatnum:21000000}}. See [[Controlled Currency Supply]].&lt;br /&gt;
&lt;br /&gt;
Blocks are [[Mining|mined]] every 10 minutes, on average and for the first four years ({{formatnum:210000}} blocks) each block includes 50 new bitcoins.  As the amount of processing power directed at mining changes, the difficulty of creating new bitcoins changes.  This difficulty factor is calculated every 2016 blocks and is based upon the time taken to generate the previous 2016 blocks. See [[Mining]].&lt;br /&gt;
&lt;br /&gt;
=== What&#039;s the current total number of bitcoins in existence?  ===&lt;br /&gt;
&lt;br /&gt;
[http://blockexplorer.com/q/totalbc Current count]. Also see [https://blockchain.info/charts/total-bitcoins Total bitcoins in circulation chart]&lt;br /&gt;
&lt;br /&gt;
The number of blocks times the coin value of a block is the number of coins in existence. The coin value of a block is 50 BTC for each of the first {{formatnum:210000}} blocks, 25 BTC for the next {{formatnum:210000}} blocks, then 12.5 BTC, 6.25 BTC and so on.&lt;br /&gt;
&lt;br /&gt;
=== How divisible are bitcoins?  ===&lt;br /&gt;
&lt;br /&gt;
A bitcoin can be divided down to 8 decimal places. Therefore, 0.00000001 BTC is the smallest amount that can be handled in a transaction. If necessary, the protocol and related software can be modified to handle even smaller amounts.&lt;br /&gt;
&lt;br /&gt;
=== What do I call the various denominations of bitcoins? ===&lt;br /&gt;
&lt;br /&gt;
There is a lot of discussion about the naming of these fractions of bitcoins. The leading candidates are:&lt;br /&gt;
&lt;br /&gt;
* 1 BTC = 1 bitcoin&lt;br /&gt;
* 0.01 BTC = 1 cBTC = 1 centibitcoin (also referred to as bitcent)&lt;br /&gt;
* 0.001 BTC = 1 mBTC = 1 millibitcoin (also referred to as mbit (pronounced em-bit) or millibit or even bitmill)&lt;br /&gt;
* 0.000 001 BTC = 1 μBTC = 1 microbitcoin (also referred to as ubit (pronounced yu-bit) or microbit)&lt;br /&gt;
&lt;br /&gt;
The above follows the accepted international SI prefixes for hundredths, thousandths, and millionths. There are many arguments against the special case of 0.01 BTC since it is unlikely to represent anything meaningful as the Bitcoin economy grows (it certainly won&#039;t be the equivalent of 0.01 USD, GBP or EUR). Equally, the inclusion of existing national currency denominations such as &amp;quot;cent&amp;quot;, &amp;quot;nickel&amp;quot;, &amp;quot;dime&amp;quot;, &amp;quot;pence&amp;quot;, &amp;quot;pound&amp;quot;, &amp;quot;kopek&amp;quot; and so on are to be discouraged; this is a worldwide currency.&lt;br /&gt;
&lt;br /&gt;
One exception is the &amp;quot;satoshi&amp;quot; which is smallest denomination currently possible &lt;br /&gt;
&lt;br /&gt;
* 0.000 000 01 BTC = 1 satoshi (pronounced sa-toh-shee)&lt;br /&gt;
which is so named in honour of Satoshi Nakamoto, the pseudonym of the inventor of Bitcoin.&lt;br /&gt;
&lt;br /&gt;
For an overview of all defined units of Bitcoin (including less common and niche units), see [[Units]].&lt;br /&gt;
&lt;br /&gt;
Further discussion on this topic can be found on the forums here:&lt;br /&gt;
&lt;br /&gt;
* [https://bitcointalk.org/index.php?topic=14438.msg195287#msg195287 We need names]&lt;br /&gt;
* [https://bitcointalk.org/index.php?topic=8282.0 What to call 0.001 BTC]&lt;br /&gt;
&lt;br /&gt;
=== How does the halving work when the number gets really small? ===&lt;br /&gt;
&lt;br /&gt;
Eventually the reward will go from 0.00000001 BTC to zero and no more bitcoins will be created.  &lt;br /&gt;
&lt;br /&gt;
The block reward calculation is done as a right bitwise shift of a 64-bit signed integer, which means it is divided by two and rounded down. The integer is equal to the value in BTC * 100,000,000 since internally in the reference client software, all Bitcoin balances and values are stored as unsigned integers.&lt;br /&gt;
&lt;br /&gt;
With an initial block reward of 50 BTC, it will take many 4-year periods for the block reward to reach zero.&lt;br /&gt;
&lt;br /&gt;
=== How long will it take to generate all the coins? ===&lt;br /&gt;
&lt;br /&gt;
The last block that will generate coins will be block #6,929,999 which should be generated at or near the year 2140. The total number of coins in circulation will then remain static at 20,999,999.9769 BTC.&lt;br /&gt;
&lt;br /&gt;
Even if the allowed precision is expanded from the current 8 decimals, the total BTC in circulation will always be slightly below 21 million (assuming everything else stays the same). For example, with 16 decimals of precision, the end total would be 20,999,999.999999999496 BTC.&lt;br /&gt;
&lt;br /&gt;
=== If no more coins are going to be generated, will more blocks be created? ===&lt;br /&gt;
&lt;br /&gt;
Absolutely!  Even before the creation of coins ends, the use of [[transaction fee|transaction fees]] will likely make creating new blocks more valuable from the fees than the new coins being created.  When coin generation ends, these fees will sustain the ability to use bitcoins and the Bitcoin network. There is no practical limit on the number of blocks that will be mined in the future.&lt;br /&gt;
&lt;br /&gt;
=== But if no more coins are generated, what happens when Bitcoins are lost? Won&#039;t that be a problem? ===&lt;br /&gt;
&lt;br /&gt;
Because of the law of supply and demand, when fewer bitcoins are available the ones that are left will be in higher demand, and therefore will have a higher value. So, as Bitcoins are lost, the remaining bitcoins will eventually increase in value to compensate. As the value of a bitcoin increases, the number of bitcoins required to purchase an item &#039;&#039;&#039;de&#039;&#039;&#039;creases. This is a [[Deflationary spiral|deflationary economic model]]. As the average transaction size reduces, transactions will probably be denominated in sub-units of a bitcoin such as millibitcoins (&amp;quot;Millies&amp;quot;) or microbitcoins (&amp;quot;Mikes&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
The Bitcoin protocol uses a base unit of one hundred-millionth of a Bitcoin (&amp;quot;a Satoshi&amp;quot;), but unused bits are available in the protocol fields that could be used to denote even smaller subdivisions.&lt;br /&gt;
&lt;br /&gt;
=== If every transaction is broadcast via the network, does Bitcoin scale? ===&lt;br /&gt;
The Bitcoin protocol allows lightweight clients that can use Bitcoin without downloading the entire transaction history. As traffic grows and this becomes more critical, implementations of the concept will be developed. Full network nodes will at some point become a more specialized service.&lt;br /&gt;
&lt;br /&gt;
With some modifications to the software, full Bitcoin nodes could easily keep up with both VISA and MasterCard combined, using only fairly modest hardware (a single high end server by todays standards). It is worth noting that the MasterCard network is structured somewhat like Bitcoin itself - as a peer to peer broadcast network.&lt;br /&gt;
&lt;br /&gt;
Learn more about [[Scalability]].&lt;br /&gt;
&lt;br /&gt;
==Economy==&lt;br /&gt;
=== Where does the value of Bitcoin stem from? What backs up Bitcoin? ===&lt;br /&gt;
Bitcoins have value because they are useful and because they are [[Controlled Currency Supply|scarce]]. As they are accepted by more merchants, their value will [http://en.wikipedia.org/wiki/Sticky_%28economics%29 stabilize]. See the [[Trade|list of Bitcoin-accepting sites]].&lt;br /&gt;
&lt;br /&gt;
When we say that a currency is backed up by gold, we mean that there&#039;s a promise in place that you can exchange the currency for gold. Bitcoins, like dollars and euros, are not backed up by anything except the variety of merchants that accept them.&lt;br /&gt;
&lt;br /&gt;
It&#039;s a common misconception that Bitcoins gain their value from the cost of electricity required to generate them. Cost doesn&#039;t equal value – hiring 1,000 men to shovel a big hole in the ground may be costly, but not valuable. Also, even though scarcity is a critical requirement for a useful currency, it alone doesn&#039;t make anything valuable. For example, your fingerprints are scarce, but that doesn&#039;t mean they have any exchange value.&lt;br /&gt;
&lt;br /&gt;
Alternatively it needs to be added that while the law of supply and demand applies it does not guarantee value of Bitcoins in the future.  If confidence in Bitcoins is lost then it will not matter that the supply can no longer be increased, the demand will fall off with all holders trying to get rid of their coins.  An example of this can be seen in cases of state currencies, in cases when the state in question dissolves and so no new supply of the currency is available (the central authority managing the supply is gone), however the demand for the currency falls sharply because confidence in its purchasing power disappears.  Of-course Bitcoins do not have such central authority managing the supply of the coins, but it does not prevent confidence from eroding due to other situations that are not necessarily predictable.&lt;br /&gt;
&lt;br /&gt;
=== Is Bitcoin a bubble? ===&lt;br /&gt;
Yes, in the same way as the euro and dollar are. They only have value in exchange and have no inherent value. If everyone suddenly stopped accepting your dollars, euros or bitcoins, the &amp;quot;bubble&amp;quot; would burst and their value would drop to zero. But that is unlikely to happen: even in Somalia, where the government collapsed 20 years ago, [http://en.wikipedia.org/wiki/Somali_shilling Somali shillings] are still accepted as payment.&lt;br /&gt;
&lt;br /&gt;
=== Is Bitcoin a Ponzi scheme? ===&lt;br /&gt;
In a Ponzi Scheme, the founders persuade investors that they’ll profit. Bitcoin does not make such a guarantee. There is no central entity, just individuals building an economy.&lt;br /&gt;
&lt;br /&gt;
A ponzi scheme is a zero sum game. Early adopters can only profit at the expense of late adopters. Bitcoin has possible win-win outcomes. Early adopters profit from the rise in value. Late adopters, and indeed, society as a whole, benefit from the usefulness of a stable, fast, inexpensive, and widely accepted p2p currency.&lt;br /&gt;
&lt;br /&gt;
The fact that early adopters benefit more doesn&#039;t alone make anything a Ponzi scheme. All good investments in successful companies have this quality.&lt;br /&gt;
&lt;br /&gt;
=== Doesn&#039;t Bitcoin unfairly benefit early adopters? ===&lt;br /&gt;
Early adopters have a large number of bitcoins now because they took a risk and invested resources in an unproven technology. By so doing, they have helped Bitcoin become what it is now and what it will be in the future (hopefully, a ubiquitous decentralized digital currency). It is only fair they will reap the benefits of their successful investment.&lt;br /&gt;
&lt;br /&gt;
In any case, any bitcoin generated will probably change hands dozens of time as a medium of exchange, so the profit made from the initial distribution will be insignificant compared to the total commerce enabled by Bitcoin.&lt;br /&gt;
&lt;br /&gt;
Since the pricing of Bitcoins has fallen greatly from its June 2011 peak, prices today are much more similar to those enjoyed by many early adopters.  Those who are buying Bitcoins today likely believe that Bitcoin will grow significantly in the future.  Setting aside the brief opportunity to have sold Bitcoins at the June 2011 peak enjoyed by few, the early-adopter window is arguably still open.&lt;br /&gt;
&lt;br /&gt;
===Won&#039;t loss of wallets and the finite amount of Bitcoins create excessive deflation, destroying Bitcoin? ===&lt;br /&gt;
Worries about Bitcoin being destroyed by deflation are not entirely unfounded.  Unlike most currencies, which experience inflation as their founding institutions create more and more units, Bitcoin will likely experience gradual deflation with the passage of time.  Bitcoin is unique in that only a small amount of units will ever be produced (twenty-one million to be exact), this number has been known since the project&#039;s inception, and the units are created at a predicable rate.&lt;br /&gt;
&lt;br /&gt;
Also, Bitcoin users are faced with a danger that doesn&#039;t threaten users of any other currency: if a Bitcoin user loses his wallet, his money is gone forever, unless he finds it again.  And not just to him;  it&#039;s gone completely out of circulation, rendered utterly inaccessible to anyone. As people will lose their wallets, the total number of Bitcoins will slowly decrease.&lt;br /&gt;
&lt;br /&gt;
Therefore, Bitcoin seems to be faced with a unique problem.  Whereas most currencies inflate over time, Bitcoin will mostly likely do the just the opposite.  Time will see the irretrievable loss of an ever-increasing number of Bitcoins.  An already small number will be permanently whittled down further and further.  And as there become fewer and fewer Bitcoins, the laws of supply and demand suggest that their value will probably continually rise.&lt;br /&gt;
&lt;br /&gt;
Thus Bitcoin is bound to once again stray into mysterious territory, because no one exactly knows what happens to a currency that grows continually more valuable. Economists generally agree that a low level of inflation is a good thing for a currency, but nobody is quite sure about what might happens to one that continually deflates.  Although deflation could hardly be called a rare phenomenon, steady, constant deflation is unheard of.  There may be a lot of speculation, no one has any hard data to back up their claims.&lt;br /&gt;
&lt;br /&gt;
That being said, there is a mechanism in place to combat the obvious consequences.  Extreme deflation would render most currencies highly impractical: if a single Canadian dollar could suddenly buy the holder a car, how would one go about buying bread or candy?  Even pennies would fetch more than a person could carry.  Bitcoin, however, offers a simple and stylish solution: infinite divisibility.  Bitcoins can be divided up and trade into as small of pieces as one wants, so no matter how valuable Bitcoins become, one can trade them in practical quantities.  &lt;br /&gt;
&lt;br /&gt;
In fact, infinite divisibility should allow Bitcoins to function in cases of extreme wallet loss.  Even if, in the far future, so many people have lost their wallets that only a single Bitcoin, or a fraction of one, remains, Bitcoin should continue to function just fine.  No one can claim to be sure what is going to happen, but deflation may prove to present a smaller threat than many expect.&lt;br /&gt;
&lt;br /&gt;
For more information, see the [[Deflationary spiral]] page.&lt;br /&gt;
&lt;br /&gt;
=== What if someone bought up all the existing Bitcoins? ===&lt;br /&gt;
Bitcoin markets are competitive -- meaning the price of a bitcoin will rise or fall depending on supply and demand at certain price levels.  Only a fraction of bitcoins issued to date are found on the exchange markets for sale.  So even though technically a buyer with lots of money could buy all the bitcoins offered for sale, unless those holding the rest of the bitcoins offer them for sale as well, even the wealthiest, most determined buyer can&#039;t get at them.&lt;br /&gt;
&lt;br /&gt;
Additionally, new currency continues to be issued daily and will continue to do so for decades though over time the rate at which they are issued declines to insignificant levels.  Those who are mining aren&#039;t obligated to sell their bitcoins so not all bitcoins will make it to the markets even.&lt;br /&gt;
&lt;br /&gt;
This situation doesn&#039;t suggest, however, that the markets aren&#039;t vulnerable to price manipulation.  It doesn&#039;t take significant amounts of money to move the market price up or down and thus Bitcoin remains a volatile asset.&lt;br /&gt;
&lt;br /&gt;
===What if someone creates a new block chain, or a new digital currency that renders Bitcoin obsolete?===&lt;br /&gt;
&lt;br /&gt;
That the block chain cannot be easily forked represents one of the central security mechanisms of Bitcoin.  Given the choice between two block chains, a Bitcoin miner always chooses the longer one - that is to say, the one with the more complex hash.  Thusly, it ensures that each user can only spend their bitcoins once, and that no user gets ripped off.&lt;br /&gt;
&lt;br /&gt;
As a consequence of the block chain structure, there may at any time be many different sub-branches, and the possibility always exists of a transaction being over-written by the longest branch, if it has been recorded in a shorter one.  The older a transaction is though, the lower its chances of being over-written, and the higher of becoming permanent.  Although the block chain prevents one from spending more Bitcoins than one has, it means that transactions can be accidentally nullified.  &lt;br /&gt;
&lt;br /&gt;
A new block chain would leave the network vulnerable to [[double-spending|double-spend]] attacks.  However, the creation of a viable new chain presents considerable difficulty, and the possibility does not present much of a risk.&lt;br /&gt;
&lt;br /&gt;
Bitcoin will always choose the longer Block Chain and determines the relative length of two branches by the complexities of their hashes.  Since the hash of each new block is made from that of the block preceding it, to create a block with a more complex hash, one must be prepared to do more computation than has been done by the entire Bitcoin network from the fork point up to the newest of the blocks one is trying to supersede.  Needless to say, such an undertaking would require a very large amount of processing power and since Bitcoin is continually growing and expanding, it will likely only require more with the passage of time.&lt;br /&gt;
&lt;br /&gt;
A much more distinct and real threat to the Bitcoin use is the development of other, superior virtual currencies, which could supplant Bitcoin and render it obsolete and valueless.&lt;br /&gt;
&lt;br /&gt;
A great deal of careful thought and ingenuity has gone into the development of Bitcoin, but it is the first of its breed, a prototype, and vulnerable to more highly-evolved competitors. At present, any threatening rivals have yet to rear its head; Bitcoin remains the first and foremost private virtual currency, but we can offer no guarantees that it will retain that position.  It would certainly be in keeping with internet history for similar system built from the same principles to supersede and cast Bitcoin into obsolescence, after time had revealed its major shortcomings.  Friendster and Myspace suffered similar fates at the hand of Facebook, Napster was ousted by Limeware, Bearshare and torrent applications, and Skype has all but crushed the last few disciples of the Microsoft Messenger army.  &lt;br /&gt;
&lt;br /&gt;
This may sound rather foreboding, so bear in mind that introduction of new and possibly better virtual currencies will not necessarily herald Bitcoin&#039;s demise.  If Bitcoin establishes itself sufficiently firmly before the inception of the next generation of private, online currencies as to gain widespread acceptance and general stability, future currencies may pose little threat even if they can claim superior design.&lt;br /&gt;
&lt;br /&gt;
==Sending and Receiving Payments==&lt;br /&gt;
&lt;br /&gt;
=== Why do I have to wait 10 minutes before I can spend money I received? ===&lt;br /&gt;
&lt;br /&gt;
10 minutes is the average time taken to find a block. It can be significantly more or less time than that depending on luck; 10 minutes is simply the average case. &lt;br /&gt;
&lt;br /&gt;
You can see how long all other recent transactions have taken here: [http://bitcoinstats.org/ BitcoinStats.org]. &lt;br /&gt;
&lt;br /&gt;
[[Blocks]] (shown as &amp;quot;confirmations&amp;quot; in the GUI) are how the Bitcoin achieves consensus on who owns what. Once a block is found everyone agrees that you now own those coins, so you can spend them again. Until then it&#039;s possible that some network nodes believe otherwise, if somebody is attempting to defraud the system by reversing a transaction. The more confirmations a transaction has, the less risk there is of a reversal. Only 6 blocks or 1 hour is enough to make reversal computationally impractical. This is dramatically better than credit cards which can see chargebacks occur up to three months after the original transaction!&lt;br /&gt;
&lt;br /&gt;
Ten minutes was specifically chosen by [[Satoshi]] as a tradeoff between propagation time of new blocks in large networks and the amount of work wasted due to chain splits. For a more technical explanation, see Satoshi&#039;s [http://www.bitcoin.org/bitcoin.pdf original technical paper].&lt;br /&gt;
&lt;br /&gt;
[[File:TransactionConfirmationTimesExample.PNG]]&lt;br /&gt;
&lt;br /&gt;
=== Do you have to wait until my transactions are confirmed in order to buy or sell things with Bitcoin? ===&lt;br /&gt;
&lt;br /&gt;
YES, you do, IF the transaction is non-recourse. The Bitcoin reference software does not display transactions as confirmed until six blocks have passed (confirmations). As transactions are burred in the chain they become increasingly non-reversible but are very reversible before the first confirmation. Two to six confirmations are recommended for non-recourse situations depending on the value of the transactions involved.&lt;br /&gt;
&lt;br /&gt;
When people ask this question they are usually thinking about applications like supermarkets.  This generally is a recourse situation: if somebody tries to double-spend on a face-to-face transaction it might work a few times, but probabalistically speaking eventually one of the double-spends will get noticed, and the penalty for shoplifting charges in most localities is calibrated to be several times worse than the proceeds of a single shoplifting event.&lt;br /&gt;
&lt;br /&gt;
Double-spends might be a concern for something like a snack machine in a low-traffic area with no nearby security cameras.  Such a machine shouldn&#039;t honor 0-confirmation payments, and should instead use some other mechanism of clearing Bitcoin or validating transactions against reversal, see the wiki article [[Myths#Point_of_sale_with_bitcoins_isn.27t_possible_because_of_the_10_minute_wait_for_confirmation|here]] for alternatives.&lt;br /&gt;
&lt;br /&gt;
Applications that require immediate payment processing, like supermarkets or snack machines, need to manage the risks. Here is one way to reverse an unconfirmed payment:&lt;br /&gt;
&lt;br /&gt;
A [[Double-spending#Finney_attack|Finney attack]], in which an attacker mines a block containing a movement of some coins back to themselves. Once they find a block solution, they quickly go to a merchant and make a purchase, then broadcast the block, thus taking back the coins. This attack is a risk primarily for goods that are dispatched immediately, like song downloads or currency trades. Because the attacker can&#039;t choose the time of the attack, it isn&#039;t a risk for merchants such as supermarkets where you can&#039;t choose exactly when to pay (due to queues, etc). The attack can fail if somebody else finds a block containing the purchasing transaction before you release your own block, therefore, merchants can reduce but not eliminate the risk by making purchasers wait some length of time that&#039;s less than a confirm.&lt;br /&gt;
&lt;br /&gt;
Because pulling off this attack is not trivial, merchants who need to sell things automatically and instantly are most likely to just price the cost of reversal fraud in, or use insurance.&lt;br /&gt;
&lt;br /&gt;
=== I was sent some bitcoins and they haven&#039;t arrived yet! Where are they? ===&lt;br /&gt;
&lt;br /&gt;
Don&#039;t panic!  There are a number of reasons why your bitcoins might not show up yet, and a number of ways to diagnose them.  &lt;br /&gt;
&lt;br /&gt;
The latest version of the Bitcoin-Qt client tells you how far it has yet to go in downloading the blockchain.  Hover over the icon in the bottom right corner of the client to learn your client&#039;s status.&lt;br /&gt;
&lt;br /&gt;
If it has not caught up then it&#039;s possible that your transaction hasn&#039;t been included in a block yet.  &lt;br /&gt;
&lt;br /&gt;
You can check pending transactions in the network by going [http://blockchain.info here] and then searching for your address.  If the transaction is listed here then it&#039;s a matter of waiting until it gets included in a block before it will show in your client.  &lt;br /&gt;
&lt;br /&gt;
If the transaction is based on a coin that was in a recent transaction then it could be considered a low priority transaction. Transfers can take longer if the transaction fee paid was not high enough.  If there is no fee at all the transfer can get a very low priority and take hours or even days to be included in a block.&lt;br /&gt;
&lt;br /&gt;
=== Why does my Bitcoin address keep changing? ===&lt;br /&gt;
&lt;br /&gt;
Whenever the address listed in &amp;quot;Your address&amp;quot; receives a transaction, Bitcoin replaces it with a new address. This is meant to encourage you to use a new address for every transaction, which enhances [[anonymity]]. All of your old addresses are still usable: you can see them in &#039;&#039;Settings -&amp;gt; Your Receiving Addresses&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
===How much will the transaction fee be?===&lt;br /&gt;
&lt;br /&gt;
Some transactions might require a [[transaction fee]] for them to get confirmed in a timely manner.  The transaction fee is processed by and received by the bitcoin miner.  The most recent version of the Bitcoin client will estimate an appropriate fee when a fee might be required.&lt;br /&gt;
&lt;br /&gt;
The fee is added to the payment amount.  For example, if you are sending a 1.234 BTC payment and the client requires a 0.0005 BTC fee, then 1.2345 BTC will be subtracted from the wallet balance for the entire transaction and the address for where the payment was sent will receive a payment of 1.234 BTC.&lt;br /&gt;
&lt;br /&gt;
A fee might be imposed because your transaction looks like a denial of service attack to the Bitcoin system. For example, it might be burdensome to transmit or it might recycle Bitcoins you recently received.  The wallet software attempts to avoid generating burdensome transactions, but it isn&#039;t always able to do so: The funds in your wallet might be new or composed of many tiny payments. &lt;br /&gt;
&lt;br /&gt;
Because the fee is related to the amount of data that makes up the transaction and not to the amount of Bitcoins being sent, the fee may seem extremely low (0.0005 BTC for a 1,000 BTC transfer) or unfairly high (0.004 BTC for a 0.02 BTC payment, or about 20%).  If you are receiving tiny amounts (&#039;&#039;e.g.&#039;&#039; as small payments from a mining pool) then fees when sending will be higher than if your activity follows the pattern of conventional consumer or business transactions. &lt;br /&gt;
&lt;br /&gt;
As of Bitcoin 0.5.3 the required fee will not be higher than 0.05 BTC. For most users there is usually no required fee at all. If a fee is required it will most commonly be 0.0005 BTC.&lt;br /&gt;
&lt;br /&gt;
=== What happens when someone sends me a bitcoin but my computer is powered off? ===&lt;br /&gt;
&lt;br /&gt;
Bitcoins are not actually &amp;quot;sent&amp;quot; to your wallet; the software only uses that term so that we can use the currency without having to learn new concepts.  Your wallet is only needed when you wish to spend coins that you&#039;ve received.&lt;br /&gt;
&lt;br /&gt;
If you are sent coins when your wallet client program is not running, and you later launch the wallet client program, the coins will eventually appear as if they were just received in the wallet. That is to say, when the client program is started it must download blocks and catch up with any transactions it did not already know about.&lt;br /&gt;
&lt;br /&gt;
=== How long does &amp;quot;synchronizing&amp;quot; take when the Bitcoin client is first installed? What&#039;s it doing? ===&lt;br /&gt;
&lt;br /&gt;
The popular Bitcoin client software from bitcoin.org implements a &amp;quot;full&amp;quot; Bitcoin node: It can carry out all the duties of the Bitcoin P2P system, it isn&#039;t simply a &amp;quot;client&amp;quot;. One of the principles behind the operation of full Bitcoin nodes is that they don&#039;t assume that the other participants have followed the rules of the Bitcoin system. During synchronization, the software is processing historical Bitcoin transactions and making sure for itself that all of the rules of the system have been correctly followed.&lt;br /&gt;
&lt;br /&gt;
In normal operation, after synchronizing, the software should use a hardly noticeable amount of your computer&#039;s resources.&lt;br /&gt;
&lt;br /&gt;
When the wallet client program is first installed, its initial validation requires a lot of work from your computer&#039;s hard disk, so the amount of time to synchronize depends on your disk speed and, to a lesser extent, your CPU speed. It can take anywhere from a few hours to a day or so. On a slow computer it could take more than 40 hours of continuous synchronization, so check your computer&#039;s power-saving settings to ensure that it does not turn its hard disk off when unattended for a few hours.  You can use the Bitcoin software during synchronization, but you may not see recent payments to you until the client program has caught up to the point where those transactions happened.&lt;br /&gt;
&lt;br /&gt;
If you feel that this process takes too long, you can download a pre-synchronized blockchain from [http://eu2.bitcoincharts.com/blockchain/ http://eu2.bitcoincharts.com/blockchain/]. Alternatively, you can try an alternative &amp;quot;lite&amp;quot; client such as Multibit or a super-light client like electrum, though these clients have somewhat weaker security, are less mature, and don&#039;t contribute to the health of the P2P network.&lt;br /&gt;
&lt;br /&gt;
==Networking==&lt;br /&gt;
=== Do I need to configure my firewall to run Bitcoin? ===&lt;br /&gt;
&lt;br /&gt;
Bitcoin will connect to other nodes, usually on TCP port 8333. You will need to allow outgoing TCP connections to port 8333 if you want to allow your Bitcoin client to connect to many nodes. [[Testnet]] uses TCP port 18333 instead of 8333.&lt;br /&gt;
&lt;br /&gt;
If you want to restrict your firewall rules to a few IPs, you can find stable nodes in the [[Fallback Nodes|fallback nodes list]].&lt;br /&gt;
&lt;br /&gt;
=== How does the peer finding mechanism work? ===&lt;br /&gt;
&lt;br /&gt;
Bitcoin finds peers primarily by forwarding peer announcements within its own network and each node saves a database of peers that it&#039;s aware of, for future use. In order to bootstrap this process Bitcoin needs a list of initial peers, these can be provided manually but normally it obtains them by querying a set of DNS domain names which have automatically updated lists, if that doesn&#039;t work it falls back to a built-in list which is updated from time to time in new versions of the software. There is also an IRC based mechanism but it is disabled by default.&lt;br /&gt;
&lt;br /&gt;
==Mining==&lt;br /&gt;
===What is mining?===&lt;br /&gt;
[[Mining]] is the process of spending computation power to secure Bitcoin transactions against reversal and introducing new Bitcoins to the system.&lt;br /&gt;
&lt;br /&gt;
Technically speaking, mining is the calculation of a [[hash]] of the a block header, which includes among other things a reference to the previous block, a hash of a set of transactions and a [[nonce]]. If the hash value is found to be less than the current [[target]] (which is inversely proportional to the [[difficulty]]), a new block is formed and the miner gets the newly generated Bitcoins (25 per block at current levels). If the hash is not less than the current target, a new nonce is tried, and a new hash is calculated. This is done millions of times per second by each miner.&lt;br /&gt;
&lt;br /&gt;
===Is mining used for some useful computation?===&lt;br /&gt;
The computations done when mining are internal to Bitcoin and not related to any other distributed computing projects. They serve the purpose of securing the Bitcoin network, which is useful.&lt;br /&gt;
&lt;br /&gt;
===Is it not a waste of energy?===&lt;br /&gt;
Spending energy on creating and securing a free monetary system is hardly a waste. Also, services necessary for the operation of currently widespread monetary systems, such as banks and credit card companies, also spend energy, arguably more than Bitcoin would.&lt;br /&gt;
&lt;br /&gt;
===Why don&#039;t we use calculations that are also useful for some other purpose?===&lt;br /&gt;
To provide security for the Bitcoin network, the calculations involved need to have some [http://bitcoin.stackexchange.com/questions/5617/why-are-bitcoin-calculation-useless/5618#5618 very specific features]. These features are incompatible with leveraging the computation for other purposes.&lt;br /&gt;
&lt;br /&gt;
===How can we stop miners from creating zero transaction blocks?===&lt;br /&gt;
The incentive for miners to include transactions is in the fees that come along with them. If we were to implement some minimum number of transactions per block it would be trivial for a miner to create and include transactions merely to surpass that threshold. As the network matures, the block reward drops, and miners become more dependent on transactions fees to pay their costs, the problem of zero transaction blocks should diminish over time.&lt;br /&gt;
&lt;br /&gt;
===How does the proof-of-work system help secure Bitcoin?===&lt;br /&gt;
To give a general idea of the mining process, imagine this setup:&lt;br /&gt;
&lt;br /&gt;
  payload = &amp;lt;some data related to things happening on the Bitcoin network&amp;gt;&lt;br /&gt;
  nonce = 1&lt;br /&gt;
  hash = [http://en.wikipedia.org/wiki/SHA2 SHA2]( [http://en.wikipedia.org/wiki/SHA2 SHA2]( payload + nonce ) )&lt;br /&gt;
&lt;br /&gt;
The work performed by a miner consists of repeatedly increasing &amp;quot;nonce&amp;quot; until&lt;br /&gt;
the hash function yields a value, that has the rare property of being below a certain&lt;br /&gt;
target threshold. (In other words: The hash &amp;quot;starts with a certain number of zeroes&amp;quot;,&lt;br /&gt;
if you display it in the fixed-length representation, that is typically used.)&lt;br /&gt;
&lt;br /&gt;
As can be seen, the mining process doesn&#039;t compute anything special. It merely&lt;br /&gt;
tries to find a number (also referred to as nonce) which - in combination with the payload -&lt;br /&gt;
results in a hash with special properties.&lt;br /&gt;
&lt;br /&gt;
The advantage of using such a mechanism consists of the fact, that it is very easy to check a result: Given the payload and a specific nonce, only a single call of the hashing function is needed to verify that the hash has the required properties. Since there is no known way to find these hashes other than brute force, this can be used as a &amp;quot;proof of work&amp;quot; that someone invested a lot of computing power to find the correct nonce for this payload.&lt;br /&gt;
&lt;br /&gt;
This feature is then used in the Bitcoin network to secure various aspects. An attacker&lt;br /&gt;
that wants to introduce malicious payload data into the network, will need to do the&lt;br /&gt;
required proof of work before it will be accepted. And as long as honest miners have more&lt;br /&gt;
computing power, they can always outpace an attacker.&lt;br /&gt;
&lt;br /&gt;
Also see [http://en.wikipedia.org/wiki/Hashcash Hashcash] and [http://en.wikipedia.org/wiki/Proof-of-work_system Proof-of-work system] and [http://en.wikipedia.org/wiki/SHA2 SHA2] and on Wikipedia.&lt;br /&gt;
&lt;br /&gt;
===Why was the &amp;quot;Generate coin&amp;quot; option of the client software removed?===&lt;br /&gt;
&lt;br /&gt;
In the early days of Bitcoin, it was easy for anyone to find new blocks using standard CPUs. As more and more people started mining, the [[difficulty]] of finding new blocks has greatly increased to the point where the average time for a CPU to find a single block can be many years. The only cost-effective method of [[Mining|mining]] is using a high-end graphics card with special software (see also [[Why a GPU mines faster than a CPU]]) and/or joining a [[Bitcoin Pool|mining pool]]. Since solo CPU mining is essentially useless, it was removed from the GUI of the Bitcoin software.&lt;br /&gt;
&lt;br /&gt;
==Security==&lt;br /&gt;
&lt;br /&gt;
===Could miners collude to give themselves money or to fundamentally change the nature of Bitcoin?===&lt;br /&gt;
&lt;br /&gt;
There are two questions in here.  Let&#039;s look at them separately.&lt;br /&gt;
&lt;br /&gt;
;Could miners gang up and give themselves money?&lt;br /&gt;
&lt;br /&gt;
Mining itself is the process of creating new blocks in the block chain.  Each block contains a list of all the transactions that have taken place across the entire Bitcoin network since the last block was created, as well as a hash of the previous block.  New blocks are &#039;mined&#039;, or rather, generated, by  Bitcoin clients correctly guessing sequences of characters in codes called &#039;hashes,&#039; which are created using information from previous blocks.  Bitcoin users may download specialized &#039;mining&#039; software, which  allows them to dedicate some amount of their processing power – however large or small – to guessing at strings within the hash of the previous block.  Whoever makes the right guess first, thus creating a new block, receives a reward in Bitcoins.&lt;br /&gt;
	&lt;br /&gt;
The block chain is one of the two structures that makes Bitcoin secure, the other being the public-key encryption system on which Bitcoin trade is based.  The block chain assures that not only is every single transaction that ever takes place recorded, but that every single transaction is recorded on the computer of anyone who chooses to store the relevant information.  Many, many users have complete records of every transaction in Bitcoins history readily available to them at any point, and anyone who wants in the information can obtain it with ease.  These things make Bitcoin very hard to fool.&lt;br /&gt;
&lt;br /&gt;
The Bitcoin network takes considerable processing power to run, and since those with the most processing power can make the most guesses, those who put the most power toward to sustaining the network earn the most currency.  Each correct guess yields, at present, twenty-five Bitcoins, and as Bitcoins are presently worth something (although the value still fluctuates) every miner who earns any number of Bitcoins makes money.  Some miners pull in Bitcoins on their own; and some also join or form pools wherein all who contribute earn a share of the profits.  &lt;br /&gt;
	&lt;br /&gt;
Therefore, first answer is a vehement “yes”  – no only can miners collude to get more money, Bitcoin is designed to encourage them to do so.  Bitcoin pools are communal affairs, and there is nothing dishonest or underhanded about them.&lt;br /&gt;
&lt;br /&gt;
Of course, the real question is:&lt;br /&gt;
&lt;br /&gt;
;Can they do so in ways not sanction by Bitcoin developers?  Is there any way to rip off the network and make loads of money dishonestly?&lt;br /&gt;
&lt;br /&gt;
Bitcoin isn&#039;t infallible.  It can be cheated, but doing so is extremely difficult.  Bitcoin was designed to evade some of the central problems with modern currencies – namely, that their trustworthiness hinges upon that of people who might not have users&#039; best interests in mind.  Every currency in the world (other than Bitcoin) is controlled by large institutions who keep track of what&#039;s done with it, and who can manipulate its value.  And every other currency has value because people trust the institutions that control them.&lt;br /&gt;
&lt;br /&gt;
Bitcoin doesn&#039;t ask that its users trust any institution.  Its security is based on the cryptography that is an integral part of its structure, and that is readily available for any and all to see.  Instead of one entity keeping track of transactions, the entire network does, so Bitcoins are astoundingly difficult to steal, or double-spend. Bitcoins are created in a regular and predictable fashion, and by many different users, so no one can decide to make a whole lot more and lessen their value.  In short, Bitcoin is designed to be inflation-proof, double-spend-proof and completely distributed.&lt;br /&gt;
&lt;br /&gt;
Nonetheless, there are a few ways that one can acquire Bitcoins dishonestly.  Firstly, one can steal private keys.  Key theft isn&#039;t something that Bitcoin security has been designed to prevent: it&#039;s up to users to keep theirs safe.  But the cryptography is designed so that it is completely impossible to deduce someone&#039;s private key from their public one. As long as you keep your private key to yourself, you don&#039;t have much to worry about.  Furthermore, one could theoretically create a new block chain, but due to the way in which the block chain is constructed, this would be extremely difficult and require massive amounts of processing power.  A full explanation of the difficulties involved can be found in the [[block chain]] article.&lt;br /&gt;
&lt;br /&gt;
Bitcoin can be ripped off – but doing so would be extremely hard and require considerable expertise and a staggering amount of processing power.  And it&#039;s only going to get harder with time.  Bitcoin isn&#039;t impenetrable, but it&#039;s close enough to put any real worries in the peripherals.&lt;br /&gt;
	&lt;br /&gt;
;Could miners fundamentally change the nature of Bitcoin?&lt;br /&gt;
&lt;br /&gt;
Once again, almost certainly not.&lt;br /&gt;
&lt;br /&gt;
Bitcoin is a distributed network, so any changes implemented to the system must be accepted by all users.  Someone trying to change the way Bitcoins are generated would have to convince every user to download and use their software – so the only changes that would go through are those that would be equally benefit all users. &lt;br /&gt;
&lt;br /&gt;
And thus, it is more or less impossible for anyone to change the function of Bitcoin to their advantage.  If users don&#039;t like the changes, they won&#039;t adopt them, whereas if users do like them, then these will help everyone equally.  Of course, one can conceive of a situation where someone manages to get a change pushed through that provides them with an advantage that no one notices, but given that Bitcoin is structurally relatively simple, it is unlikely that any major changes will go through without someone noticing first.&lt;br /&gt;
&lt;br /&gt;
The fact that such changes are so difficult to make testifies to the fully distributed nature of Bitcoin.  Any centrally controlled currency can be modified by its central agency without the consent of its adherents.  Bitcoin has no central authority, so it changes only at the behest of the whole community.  Bitcoins development represents a kind of collective evolution; the first of its kind among currencies.&lt;br /&gt;
&lt;br /&gt;
==Help==&lt;br /&gt;
===I&#039;d like to learn more.  Where can I get help?===&lt;br /&gt;
&lt;br /&gt;
* Read the [[Introduction|introduction to bitcoin]] &lt;br /&gt;
* See the videos, podcasts, and blog posts from the [[Press]]&lt;br /&gt;
* Read and post on the [[Bitcoin:Community_portal#Bitcoin_Community_Forums|forums]]&lt;br /&gt;
* Chat on one of the [[Bitcoin:Community_portal#IRC_Chat|Bitcoin IRC]] channels&lt;br /&gt;
* Listen to [http://omegataupodcast.net/2011/03/59-bitcoin-a-digital-decentralized-currency/ this podcast], which goes into the details of how bitcoin works&lt;br /&gt;
* Ask questions on the [http://bitcoin.stackexchange.com Bitcoin Stack Exchange]&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Man page]]&lt;br /&gt;
* [[Introduction]]&lt;br /&gt;
&lt;br /&gt;
[[de:FAQ]]&lt;br /&gt;
[[zh-cn:FAQ]]&lt;br /&gt;
[[fr:FAQ]]&lt;br /&gt;
[[ru:FAQ]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Technical]]&lt;br /&gt;
[[Category:Vocabulary]]&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Securing_your_wallet&amp;diff=34889</id>
		<title>Securing your wallet</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Securing_your_wallet&amp;diff=34889"/>
		<updated>2013-01-10T21:51:50Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Restore */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
&lt;br /&gt;
Wallet security can be broken down into two independent goals:&lt;br /&gt;
# Protecting your wallet against loss.&lt;br /&gt;
# Protecting your wallet against theft.&lt;br /&gt;
&lt;br /&gt;
In the case that your current wallet hasn&#039;t been protected adequately (e.g. put online with a weaker password):&lt;br /&gt;
# Making a new secure wallet, using appropriate long-term protection.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For a brief overview see also: [[Wallet Security Dos and Don&#039;ts (Windows)|Wallet Security Dos and Don&#039;ts]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Paper Wallets==&lt;br /&gt;
[[Paper wallet]]s are a fairly simple way to store your bitcoins independent of a computer. When generated securely and stored on paper, or other offline storage media, a paper wallet decreases the chances of your bitcoins being stolen by hackers, or computer viruses.&lt;br /&gt;
&lt;br /&gt;
With each entry on a paper wallet, you are securing a sequence of secret numbers that is used to prove your right to spend the bitcoins assigned to one of your addresses. This secret number, called a [[private key]], is most commonly written as a sequence of fifty-one alphanumeric characters, beginning with a &#039;5&#039;.&lt;br /&gt;
&lt;br /&gt;
One way you can create a paper wallet is by going to the website [[BitAddress|bitaddress.org]]. This website features a free client-side paper wallet generator written in JavaScript. The webpage can be saved as a file and used on an offline computer. Using it online is relatively safe, for storing smaller amounts, but not airtight unless you take extra precautions to ensure your keys are not stolen by spyware. Alternatively Blockchain.info offers a [https://blockchain.info/wallet/paper-tutorial tutorial on how to generate a paper wallet] with an online component so you can still check your balance easily.&lt;br /&gt;
&lt;br /&gt;
To generate a safer paper wallet, it is best to &amp;quot;clean-boot&amp;quot; your computer with a bootable CD (such as a Linux Live CD), with your computer not connected to the Internet, to ensure that you do not have any active spyware that might steal any private keys you generate. Disconnecting from the Internet allows you to confirm that the paper wallet generator is truly self-contained and isn&#039;t depending on communication with a remote server. Run the saved paper wallet generator in a web browser, then print your paper wallets or store them on external media (do not save them on the computer), and then shut down the computer. You may need to load an appropriate printer driver in order to print while booted from the live CD.&lt;br /&gt;
&lt;br /&gt;
A paper wallet lists multiple Bitcoin addresses and their corresponding private keys. You can send Bitcoins to any address on the page and they will be inaccessible until the private key is imported into a wallet. Since version 0.6.0, the bitcoin software has a command called &amp;quot;importprivkey&amp;quot; that can load private keys, but you can also use the &amp;quot;Add Funds&amp;quot; - &amp;quot;Private key&amp;quot; screen at [[MtGox]] or Blockchain.info&#039;s &amp;quot;My Wallet&amp;quot; service to recover bitcoins from a private key. In the case of MtGox, bitcoins are deposited in your account, and can be sent out of MtGox after the standard number of deposit confirmations.&lt;br /&gt;
&lt;br /&gt;
Remember, spyware and viruses often attempt to monitor your computer activities so that their authors can steal from you. They are interested in passwords to online accounts, and anything of value. Bitcoin wallets and private keys are something of value that have already been targeted by malware. Paper wallets isolate you from much of this risk.&lt;br /&gt;
&lt;br /&gt;
If your computer is infected with spyware or viruses - even if there are no symptoms, or your antivirus isn&#039;t reporting anything - then anything you type, view, or save on your computer, could potentially be stolen by someone remotely controlling your computer. Your private key can then be intercepted while you enter it, so only enter a Bitcoin private key into your computer when your intent is to redeem its value &#039;&#039;immediately&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Hardware wallets ==&lt;br /&gt;
They are not operational yet, but [[Hardware wallet]]s are a major effort to provide a good combination of enhanced security and usability.&lt;br /&gt;
&lt;br /&gt;
==Importance of security updates==&lt;br /&gt;
&lt;br /&gt;
No software is perfect, and from time to time there may be security vulnerabilities found in your Bitcoin client as well.&lt;br /&gt;
Be sure you keep your client updated with the latest bug fixes, especially when a new vulnerability is discovered.&lt;br /&gt;
We maintain a [[CVEs|list a known vulnerabilities]] on this wiki - you can watch that page to get updates.&lt;br /&gt;
Note that you &#039;&#039;don&#039;t&#039;&#039; need to be running the latest major client version: some clients, including the popular Bitcoin-Qt, have older versions available with bugfix-only updates.&lt;br /&gt;
&lt;br /&gt;
==Securing the Bitcoin-QT or bitcoind wallet==&lt;br /&gt;
&lt;br /&gt;
Bitcoin transactions send Bitcoins to a specific public key. A Bitcoin address is an encoded hash of a public key. In order to use received Bitcoins, you need to have the private key matching the public key you received with. This is sort of like a super long password associated with an account (the account is the public key). Your Bitcoin wallet contains all of the private keys necessary for spending your received transactions. If you delete your wallet without a backup, then you no longer have the authorization information necessary to claim your coins, and the coins associated with those keys are lost forever.&lt;br /&gt;
&lt;br /&gt;
The wallet contains a pool of queued keys. By default there are 100 keys in the [[key pool]].  The size of the pool is configurable using the &amp;quot;-keypool&amp;quot; command line argument.  When you need an address for whatever reason (send, “new address”, generation, etc.), the key is not actually generated freshly, but taken from this pool. A brand new address is generated to fill the pool back to 100. So when a backup is first created, it has all of your old keys plus 100 unused keys. After sending a transaction, it has 99 unused keys. After a total of 100 new-key actions, you will start using keys that are not in your backup. Since the backup does not have the private keys necessary for authorizing spends of these coins, restoring from the old backup will cause you to lose Bitcoins.&lt;br /&gt;
&lt;br /&gt;
Creating a new address generates a new pair of public and private keys, which are added to your wallet. Each keypair is mostly random numbers, so they cannot be known prior to generation. If you backup your wallet and then create more than 100 new addresses, the keypair associated with the newest addresses will not be in the old wallet because the new keypairs are only known after creating them. Any coins received at these addresses will be lost if you restore from the backup.&lt;br /&gt;
&lt;br /&gt;
The situation is made somewhat more confusing because the receiving addresses shown in the UI are not the only keys in your wallet. Each Bitcoin generation is given a new public key, and, more importantly, each sent transaction also sends some number of Bitcoins back to yourself at a new key. When sending Bitcoins to anyone, you generate a new keypair for yourself and simultaneously send Bitcoins to your new public key and the actual recipient&#039;s public key. This is an anonymity feature – it makes tracking Bitcoin transactions much more difficult.&lt;br /&gt;
&lt;br /&gt;
So if you create a backup, do more than 100 things that cause a new key to be used, and then restore from the backup, some Bitcoins will be lost. Bitcoin has not deleted any keys (keys are never deleted) – it has created a new key that is not in your old backup and then sent Bitcoins to it.&lt;br /&gt;
&lt;br /&gt;
== Making a new wallet ==&lt;br /&gt;
&lt;br /&gt;
If a wallet or an encrypted wallet&#039;s password has been compromised, it is wise to create a new wallet and transfer the full balance of bitcoins to addresses contained only in the newly created wallet. Examples of ways a wallet may be compromised are through password re-use, minimal strength passwords, computer hack or virus attack.&lt;br /&gt;
&lt;br /&gt;
There are a number of ways to create a new wallet with Bitcoin-QT or bitcoind but this is a process that has been tested with bitcoind 0.6.3. We use the copy command to minimize the chance of any data loss but you are warned to make backups of any wallet.dat that holds a balance for you.&lt;br /&gt;
&lt;br /&gt;
:1. Shut down the Bitcoin program.&lt;br /&gt;
:2. Find and make a backup of the &amp;quot;compromised&amp;quot; wallet.dat file and rename it, perhaps adding a short description:&lt;br /&gt;
:::wallet.dat -&amp;gt;  wallet-compromised.dat&lt;br /&gt;
:Depending on your OS, the wallet file will be located at:&lt;br /&gt;
:::Windows: %APPDATA%\Bitcoin\&lt;br /&gt;
:::Linux: ~/.bitcoin/&lt;br /&gt;
:::Mac: ~/Library/Application Support/Bitcoin/&lt;br /&gt;
:3. Start the Bitcoin program and it will create a new wallet.dat. You may then encrypt the wallet as desired and make a new backup.&lt;br /&gt;
:4. Once you&#039;ve made a new wallet, you can obtain one or more addresses and copy them into a text editor. After obtaining the new address(es), shut down the Bitcoin program, make a backup of the new wallet.dat file and copy it to a new file named wallet-new.dat.&lt;br /&gt;
:5. Copy the wallet-compromised.dat file back to wallet.dat, start the Bitcoin program and transfer your balance to the new address(es) you put in your text editor. Once the balance is back to 0 for your compromised wallet, you may want to wait a couple minutes or for a confirmation or check block explorer to be sure the transactions have been broadcasted. Then you may shut down the Bitcoin program.&lt;br /&gt;
:6. Rename wallet.dat to wallet-compromised.dat. &lt;br /&gt;
:7. Rename wallet-new.dat to wallet.dat.&lt;br /&gt;
&lt;br /&gt;
You should now have a new wallet with all the bitcoins from the old wallet.&lt;br /&gt;
&lt;br /&gt;
==Making a secure workspace==&lt;br /&gt;
&lt;br /&gt;
If you are using your computer to handle bitcoins, a wallet, Bitcoin-related passwords, or Bitcoin private keys, you must take care that the system is free of malware, viruses, keyloggers, remote access tools, and other tools that may be used to make remote copies of any of the above. In the case that your computer is compromised, the precautions taken below may provide additional protection.&lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
&lt;br /&gt;
The first step is to make a [http://www.howtogeek.com/howto/ubuntu/add-a-user-on-ubuntu-server/ new user,] so as root, run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;adduser new_user_name&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you get to the prompt &#039;Enter the new value, or press ENTER for the default&#039;, just keep hitting ENTER.&lt;br /&gt;
&lt;br /&gt;
Then switch user to the new user.  To get to the new user you can use the switch user icon for your system, which on Ubuntu is in the &#039;System/Quit&#039; screen, or if there is no switch icon on your system you can log out and log back in as the new user.  Then click on a folder in the new user to display the file browser, then keep going up folders until you see the new user home directory, then right click to bring up the Properties dialog, then click on the Permissions tab, then in the Others section, set the folder access to None.&lt;br /&gt;
&lt;br /&gt;
For secure browsing, open Firefox, and then go into the Edit menu and click Preferences.  Starting from the left, click on the General tab, and in the &#039;Startup/When Firefox starts&#039; pop up menu, choose &#039;Show a Blank Page&#039;.  Then click on the Content tab, and deselect &#039;Load images automatically&#039; and deselect &#039;Enable JavaScript&#039;.  Then click on the Privacy tab, and in the &#039;History/Firefox will&#039; pop up menu, choose &#039;Never remember history&#039;.  Then click on the Security tab, and in the Passwords section, deselect &#039;Remember passwords for sites&#039; and deselect &#039;Use a master password&#039;.  Then click on the Advanced tab, then click on the Update tab, and then in the &#039;Automatically check for updates to&#039; section, deselect &#039;Add-ons&#039; and &#039;Search Engines&#039;.&lt;br /&gt;
&lt;br /&gt;
When JavaScript is disabled, the [http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.23/bitcoin-0.3.23-linux.tar.gz/download Linux download page] will not download automatically, so you&#039;ll have to click on the &#039;direct link&#039; part of the &amp;quot;Problems with the download? Please use this &#039;direct link&#039; or try another mirror.&amp;quot; line.&lt;br /&gt;
&lt;br /&gt;
After you&#039;ve made your secure new user, to maintain security you should only use it for Bitcoin.&lt;br /&gt;
&lt;br /&gt;
It&#039;s also a good idea to encrypt the Home directory of whatever user you run Bitcoin under using ecryptfs-utils. To do this:&lt;br /&gt;
# If the Home directory is not empty you should back it up first, by just copying the data to an external drive or something.&lt;br /&gt;
# install ecryptfs-utils (on Ubuntu: sudo apt-get install ecryptfs-utils)&lt;br /&gt;
# log out of X (graphical system) and press Ctrl+Alt+F1 to login to the command shell (you must be logged out or some files will be open and the tool won&#039;t be able to encrypt your data)&lt;br /&gt;
# change directory to something that&#039;s not in your home folder (ex: cd / )&lt;br /&gt;
# run the migration tool (on Ubuntu: sudo ecryptfs-migrate-home -u username)&lt;br /&gt;
# if it&#039;s successful, you can now press ALT+F8 to go back to the GUI and login&lt;br /&gt;
# run &#039;ecryptfs-unwrap-passphrase&#039; and &#039;&#039;&#039;WRITE DOWN OR SAVE THE CODE IT RETURNS&#039;&#039;&#039; because you will need it if you ever have to pull your data off while the OS is not working. (You can run it again later if you need to, but run it now so that you can get your data if your Linux install gets botched.)&lt;br /&gt;
# run &#039;ecryptfs-setup-swap&#039; to encrypt your swap partition (the encrypted folder data is not encrypted while it&#039;s in memory, and so if it&#039;s ever sent to the swap partition it can be stolen from there unless that too is encrypted - be aware that this will mean you cannot use Hibernate anymore, as the bootloader won&#039;t be able to restore the hibernation data)&lt;br /&gt;
(instructions from [http://bodhizazen.net/Tutorials/Ecryptfs/#Migrate])&lt;br /&gt;
&lt;br /&gt;
===Mac===&lt;br /&gt;
This solution &#039;&#039;&#039;does not scale&#039;&#039;&#039;; the amount of needed space can grow beyond the image size.&lt;br /&gt;
&lt;br /&gt;
=====Backup all data=====&lt;br /&gt;
Follow these instructions to backup all the bitcoin data (wallet and block chains) to an encrypted disk image.&lt;br /&gt;
# Open Disk Utility&lt;br /&gt;
# Click New Image and choose a big enough size, 128-bit or 256-bit (faster or more secure) encryption and single partition.&lt;br /&gt;
# Save it somewhere you won&#039;t lose it (like your Wuala, Dropbox, Strongspace or whatever)&lt;br /&gt;
# Choose a safe and strong password&lt;br /&gt;
# Move everything from ~/Library/Application Support/Bitcoin/ to the image&lt;br /&gt;
# Symlink it back so the app would be able to use it&lt;br /&gt;
:::ln -s /Volumes/Bitcoin ~/Library/Application Support/Bitcoin&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget to mount your image before using Bitcoin and unmount it after quitting.&lt;br /&gt;
&lt;br /&gt;
=====Backup just wallet.dat=====&lt;br /&gt;
Follow these instructions to backup just the wallet.dat file. This results in a smaller disk image, but it&#039;s more complicated to do.&lt;br /&gt;
# Open Disk Utility&lt;br /&gt;
# Click New Image and choose a big enough size, 128-bit or 256-bit (faster or more secure) encryption and single partition.&lt;br /&gt;
# Save it somewhere you won&#039;t lose it (like your Wuala, Dropbox, Strongspace or whatever)&lt;br /&gt;
# Choose a safe and strong password&lt;br /&gt;
# Move your wallet.dat file to the image&lt;br /&gt;
# Symlink it back so the app would be able to use it&lt;br /&gt;
:::ln -s /Volumes/Bitcoin/wallet.dat ~/Library/Application Support/Bitcoin/wallet.dat&lt;br /&gt;
&lt;br /&gt;
[[File:MountWalletAndLauchnBitcoin_OSX_Automator.png|thumbnail|150px|Mount Wallet and launch Bitcoin]]&lt;br /&gt;
Don&#039;t forget to mount your image before using Bitcoin and unmount after quitting it.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: If you start the Bitcoin application without having the image mounted, the application will overwrite your symlink with a new wallet. If that happens, don&#039;t panic. Just delete the new wallet.dat, mount the image, and recreate the symlink like above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Automation&#039;&#039;&#039;: You can create a small application using [http://en.wikipedia.org/wiki/Automator_%28software%29 Automator] (included in OS X) to automatically mount the wallet and then launch Bitcoin App. See the Screenshot on how to do this.&lt;br /&gt;
&lt;br /&gt;
If one &#039;&#039;doesn&#039;t&#039;&#039; want to use encrypted Disk images, then a &#039;&#039;&#039;small shell script&#039;&#039;&#039; can be used instead that takes care of decrypting the wallet, launching bitcoin client, and encrypting it after the client exits. This script works on both OSX and Linux: [http://lorelei.kaverit.org/bitcoin.sh bitcoin-launch-script]&lt;br /&gt;
&lt;br /&gt;
===Windows===&lt;br /&gt;
&lt;br /&gt;
Due to the frequency with which Windows computers are compromised, it is advised to encrypt your wallet or to keep your wallet on an encrypted disk image created by third-party software, such as [http://www.truecrypt.org/ TrueCrypt] (open source) or [http://www.jetico.com/encryption-bestcrypt/ Jetico BestCrypt] (commercial). This also applies to the storage of passwords, private keys and other data that can be used to access any of your Bitcoin balances.&lt;br /&gt;
&lt;br /&gt;
Assuming that you have installed the Windows Bitcoin client and run it at least once, the process is described below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;To mount the Bitcoin data directory on an encrypted drive&amp;lt;/b&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;ol start=1 type=1&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Use the third-party disk image encryption program of your choice to create and mount an encrypted disk image of at least 5GB in size. This procedure stores the entire block chain database with the wallet.dat file so the required size of the encrypted disk image required may grow in the future.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Locate the Bitcoin data directory, and copy the directory with all contents to the encrypted drive.&lt;br /&gt;
&amp;lt;p&amp;gt;For help finding this directory, see &amp;lt;b&amp;gt;[[Securing_your_wallet#Locating_Bitcoin_s_data_directory|Locating Bitcoin&#039;s Data Directory]]&amp;lt;/b&amp;gt;.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a Windows shortcut that starts Bitcoin with the &amp;lt;code&amp;gt;-datadir&amp;lt;/code&amp;gt; parameter and specifies the encrypted drive and directory.&lt;br /&gt;
&amp;lt;p&amp;gt;For example, if you installed Bitcoin in the default directory, mounted your Bitcoin encrypted drive as &amp;lt;code&amp;gt;E:\&amp;lt;/code&amp;gt;, and stored your Bitcoin data directory on it as &amp;lt;code&amp;gt;Bitcoin&amp;lt;/code&amp;gt;, you would type the following command as the shortcut Target:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;code&amp;gt;C:\Program Files\Bitcoin\bitcoin.exe -datadir=E:\Bitcoin&amp;lt;/code&amp;gt;&amp;lt;/blockquote&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open Bitcoin&#039;s settings and configure it &amp;lt;b&amp;gt;NOT&amp;lt;/b&amp;gt; to start automatically when you start Windows.&lt;br /&gt;
&amp;lt;p&amp;gt;This is to allow you to mount the Bitcoin encrypted disk image before starting Bitcoin.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Shut down Bitcoin, and then restart it from the new shortcut.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After doing this, any time you want to use Bitcoin, you must first mount the Bitcoin encrypted disk image using the same drive designation, and then run Bitcoin from the shortcut that you created, so that it can find its data and your wallet.&lt;br /&gt;
&lt;br /&gt;
== Locating Bitcoin&#039;s data directory ==&lt;br /&gt;
&lt;br /&gt;
The [[data directory]] is the location where Bitcoin&#039;s data files are stored, including the wallet data file.&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
Go to Start -&amp;gt; Run (or press WinKey+R) and run this:&lt;br /&gt;
&lt;br /&gt;
 explorer %APPDATA%\Bitcoin&lt;br /&gt;
&lt;br /&gt;
Bitcoin&#039;s data folder will open. For most users, this is one of the following locations:&lt;br /&gt;
&lt;br /&gt;
 C:\Documents and Settings\YourUserName\Application data\Bitcoin (Windows XP)&lt;br /&gt;
 &lt;br /&gt;
 C:\Users\YourUserName\Appdata\Roaming\Bitcoin (Windows Vista and 7)&lt;br /&gt;
&lt;br /&gt;
If you have trouble browsing to these folders, note that &amp;quot;AppData&amp;quot; and &amp;quot;Application data&amp;quot; are hidden by default.&lt;br /&gt;
&lt;br /&gt;
=== Linux ===&lt;br /&gt;
&lt;br /&gt;
By default Bitcoin will put its data here:&lt;br /&gt;
&lt;br /&gt;
 ~/.bitcoin/&lt;br /&gt;
&lt;br /&gt;
You need to do a &amp;quot;ls -a&amp;quot; to see directories that start with a dot.&lt;br /&gt;
&lt;br /&gt;
If that&#039;s not it, you can do a search like this:&lt;br /&gt;
&lt;br /&gt;
 find / -name wallet.dat -print 2&amp;gt;/dev/null&lt;br /&gt;
&lt;br /&gt;
To change the directory Bitcoin stores its data in:&lt;br /&gt;
 Run in terminal or script: ./bitcoin(-qt) -datadir=./[Directory_Name]&lt;br /&gt;
&lt;br /&gt;
=== Mac ===&lt;br /&gt;
&lt;br /&gt;
By default Bitcoin will put its data here:&lt;br /&gt;
&lt;br /&gt;
 ~/Library/Application Support/Bitcoin/&lt;br /&gt;
&lt;br /&gt;
==Backup==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Using Dropbox to back up your Bitcoin data is not recommended as doing so introduces the following [https://en.wikipedia.org/wiki/Dropbox_(service)#Reception security concerns]:&lt;br /&gt;
# Dropbox stores your encryption key (meaning that a disgruntled Dropbox employee or an attacker who gained access to the system could decrypt your Dropbox data and steal your bitcoins)&lt;br /&gt;
# the Dropbox client only needs a password for the first login. After it authenticates once, the server assigns it a token which it uses to show that, at one time, its user knew the password rather than sending the actual password (meaning that if you ever use the Dropbox client on another PC, that PC&#039;s users can access your Dropbox - even if you change your password - and can steal your bitcoins or get a virus that will steal your bitcoins).&lt;br /&gt;
&lt;br /&gt;
For these reasons, an alternative that always uses password authentication such as [http://www.wuala.com/en/bitcoin Wuala] should be used. Wuala&#039;s servers do not store your encryption key and the program authenticates with the password each time it is started.&lt;br /&gt;
&lt;br /&gt;
Whether you use Dropbox as your backup or not, it is advised to use what Steve Gibson calls &amp;quot;pre-Internet encryption&amp;quot; which means to use some form of encryption on your files before you back them up, in case an attacker gains access to that backup. Make sure to pick a password that is memorable but secure.&lt;br /&gt;
&lt;br /&gt;
The only file you need to back up is &amp;quot;wallet.dat&amp;quot; which can be done one of two ways. To make a copy of the wallet.dat file, ensure that Bitcoin is closed and copy this file somewhere else. The other way is to use the [[api|backupwallet]] JSON-RPC command to back up without shutting down Bitcoin. &lt;br /&gt;
&lt;br /&gt;
Once a copy has been made, encrypt it, and put it in two or more safe locations. Consider the risk due to theft, fire, or natural disaster in proportion to the value of bitcoins stored in the wallet.&lt;br /&gt;
&lt;br /&gt;
=== General Solutions ===&lt;br /&gt;
&lt;br /&gt;
Your wallet.dat file is not encrypted by the Bitcoin program by default but the most current release of the Bitcoin client provides a method to encrypt with a passphrase the private keys stored in the wallet. Anyone who can access an unencrypted wallet can easily steal all of your coins.  Use one of these encryption programs if there is any chance someone might gain access to your wallet.&lt;br /&gt;
* [http://www.7-zip.org/ 7-zip] - Supports strongly-encrypted archives.&lt;br /&gt;
* [http://www.axantum.com/axcrypt/ AxCrypt by Axantum]&lt;br /&gt;
* [http://lrzip.kolivas.org lrzip] - Compression software for Linux and OSX that supports very high grade password protected encryption&lt;br /&gt;
* [http://www.truecrypt.org/ TrueCrypt] - Volume-based on-the-fly encryption (for advanced users)&lt;br /&gt;
&lt;br /&gt;
There is also a list of [[OpenSourceEncryptionSoftware|open source encryption software.]]&lt;br /&gt;
&lt;br /&gt;
Decrypting and encrypting the wallet.dat every time you start or quit the Bitcoin client can be &#039;&#039;tedious&#039;&#039; (and outright error-prone). If you want to keep your wallet encrypted (except while you&#039;re actually running the Bitcoin client), it&#039;s better to relegate the automation to a [http://lorelei.kaverit.org/bitcoin.sh small shell script] that handles the en/decryption and starting up Bitcoin client for you (Linux and OSX). &lt;br /&gt;
&lt;br /&gt;
There is also a method to print out and encrypt your wallet.dat as a special, scannable code. See details here: [[WalletPaperbackup]]&lt;br /&gt;
&lt;br /&gt;
==== Password Strength ====&lt;br /&gt;
Brute-force password cracking has come a long way. A password including capitals, numbers, and special characters with a length of 8 characters can be trivially solved now (using appropriate hardware). The recommended length is &#039;&#039;&#039;at least&#039;&#039;&#039; 12 characters long.  You can also use a multi-word password and there are techniques to increase the strength of your passwords without sacrificing usability. [http://www.baekdal.com/tips/password-security-usability The Usability of Passwords] &lt;br /&gt;
&lt;br /&gt;
However, simply using dictionary words is also insecure as it opens you up to a dictionary attack. If you use dictionary words, be sure to include random symbols and numbers in the mix as well.&lt;br /&gt;
&lt;br /&gt;
If you use keyfiles in addition to a password, it is unlikely that your encrypted file can ever be cracked using brute-force methods, even when even a 12 character password might be too short.&lt;br /&gt;
&lt;br /&gt;
Assume that any encrypted files you store online (eg. Gmail, Dropbox) will be stored somewhere forever and can never be erased.&lt;br /&gt;
&lt;br /&gt;
===== Choosing A Strong Password =====&lt;br /&gt;
Make sure you pick at least one character in each group:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  Lowercase: abcdefghijklmnopqrstuvwxyz&lt;br /&gt;
  Uppercase: ABCDEFGHIJKLMNOPQRSTUVWXYZ&lt;br /&gt;
  Number: 1234567890&lt;br /&gt;
  Symbol: `~!@#$%^&amp;amp;*()-_=+\|[{]};:&#039;&amp;quot;,&amp;lt;.&amp;gt;/? (space)&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;9 char = unsuitable for use&lt;br /&gt;
  09 char = insecure&lt;br /&gt;
  10 char = low security&lt;br /&gt;
  11 char = medium security&lt;br /&gt;
  12 char = good security (good enough for your wallet)&lt;br /&gt;
  13 char = very good, enough for anything.&lt;br /&gt;
&lt;br /&gt;
You might want to read [http://security.stackexchange.com/questions/662/what-is-your-way-to-create-good-passwords-that-can-actually-be-remembered What is your way to create good passwords that can actually be remembered?] and [http://security.stackexchange.com/questions/6095/xkcd-936-short-complex-password-or-long-dictionary-passphrase XKCD #936: Short complex password, or long dictionary passphrase?]&lt;br /&gt;
&lt;br /&gt;
==== Email-based Archival and Remote Backup ====&lt;br /&gt;
One of the simplest methods for storing an appropriately &#039;&#039;&#039;encrypted&#039;&#039;&#039; archive of your wallet.dat file is to send the archive as an email attachment to your own e-mail address.  Services like Gmail use very comprehensive distributed networks that make the loss of data very unlikely.  One can even obfuscate the name of the files within the archive, and name the archive something less inviting, such as: &#039;personal notes&#039; or &#039;car insurance&#039;.&lt;br /&gt;
&lt;br /&gt;
Another solution is to use a file storage service like [http://www.wuala.com/bitcoin Wuala] ( encrypted, [http://www.bitcoin.org/smf/index.php?topic=5817.0 instructions]), [http://www.dropbox.com Dropbox] (after encrypting the wallet first) and [http://en.wikipedia.org/wiki/Comparison_of_online_backup_services others], including the more secure [http://www.spideroak.com SpiderOak].&lt;br /&gt;
&lt;br /&gt;
=== Autmated Backups using Cron, Bash and GNU/Linux ===&lt;br /&gt;
&lt;br /&gt;
Linux users can setup backups using cron by telling it to run a backup script at set intervals of time. Run &#039;crontab -e&#039; and add this line near the bottom:&lt;br /&gt;
&lt;br /&gt;
 01 * * * * /usr/local/bin/backupwallet.sh&lt;br /&gt;
&lt;br /&gt;
This cron line will run the /usr/local/bin/backupwallet.sh script at the 01 minute of every hour. Remember to add a newline after the last line of the crontab file, or else the last line won&#039;t run. You may also wish to ignore the script&#039;s output by appending &amp;quot; &amp;gt; /dev/null 2&amp;gt;&amp;amp;1&amp;quot; to the line (this will also prevent emails from being sent).&lt;br /&gt;
&lt;br /&gt;
Create /usr/local/bin/backupwallet.sh:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 # /usr/local/bin/backupwallet.sh&lt;br /&gt;
 #&lt;br /&gt;
 # Performs backup of bitcoin wallet.&lt;br /&gt;
 #&lt;br /&gt;
 # Written by: https://en.bitcoin.it/wiki/Securing_your_wallet&lt;br /&gt;
 &lt;br /&gt;
 #&lt;br /&gt;
 # Standard Options&lt;br /&gt;
 #&lt;br /&gt;
 TS=$(date &amp;quot;+%Y%m%d-%H%M&amp;quot;)&lt;br /&gt;
 WALLET=/tmp/wallet-${TS}&lt;br /&gt;
 WALLET_E=/tmp/wallet-${TS}.crypt&lt;br /&gt;
 BITCOIN=bitcoind  # /path/to/bitcoind&lt;br /&gt;
 GPG=gpg  # /path/to/gpg&lt;br /&gt;
 GPG_USER=username  # Username of gpg recipient. User should have gpg setup.&lt;br /&gt;
 RM=rm&lt;br /&gt;
 RM_OPTS=&#039;--force&#039;&lt;br /&gt;
 USE_SHRED=0  # Flip to 1 to use `shred` instead of `rm`.&lt;br /&gt;
 SHRED=shred&lt;br /&gt;
 SHRED_OPTS=&#039;--force --iterations=9 --zero --remove&#039;&lt;br /&gt;
 &lt;br /&gt;
 #&lt;br /&gt;
 # Storage Options&lt;br /&gt;
 # Only 1 set of options should be un-commented (the last one will be used).&lt;br /&gt;
 # Update CP_DEST paths as neccessary.&lt;br /&gt;
 #&lt;br /&gt;
 # CP - Storage on a local machine. Could be Dropbox/Wuala folder.&lt;br /&gt;
 #CP=cp&lt;br /&gt;
 #CP_DEST=&#039;/var/data/backups/&#039;  # &#039;~/Dropbox/&#039;, etc.&lt;br /&gt;
 #&lt;br /&gt;
 # SSH - Storage on a remote machine.&lt;br /&gt;
 CP=scp&lt;br /&gt;
 CP_DEST=&#039;remoteuser@example.com:~/wallets/&#039;&lt;br /&gt;
 #&lt;br /&gt;
 # S3 - Storage on Amazon&#039;s S3. Be sure s3cmd is installed and properly setup.&lt;br /&gt;
 # You may need &amp;quot;s3cmd put --force&amp;quot; if you use a sub-directory in CP_DEST.&lt;br /&gt;
 #CP=s3cmd put&lt;br /&gt;
 #CP_DEST=&#039;s3://bucket&#039;&lt;br /&gt;
 &lt;br /&gt;
 do_clean() {&lt;br /&gt;
   # Remove temporary wallets.&lt;br /&gt;
   if [ 1 -eq $USE_SHRED ]; then&lt;br /&gt;
     $SHRED $SHRED_OPTS $WALLET $WALLET_E&lt;br /&gt;
   else&lt;br /&gt;
     $RM $RM_OPTS $WALLET $WALLET_E&lt;br /&gt;
   fi&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 do_fail() {&lt;br /&gt;
   do_clean&lt;br /&gt;
   echo failed!&lt;br /&gt;
   exit 1&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 # Perform the backup.&lt;br /&gt;
 echo -n Making backup...&lt;br /&gt;
 $BITCOIN backupwallet $WALLET&lt;br /&gt;
 [ ! -s &amp;quot;$WALLET&amp;quot; ] &amp;amp;&amp;amp; do_fail  # If the backup does not exist or is empty, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 echo -n Encrypting backup...&lt;br /&gt;
 $GPG -r $GPG_USER --output $WALLET_E --encrypt $WALLET&lt;br /&gt;
 [ 0 -ne $? ] &amp;amp;&amp;amp; do_fail  # If gpg returns a non-zero result, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 echo -n Copying to backup location...&lt;br /&gt;
 $CP $WALLET_E &amp;quot;$CP_DEST&amp;quot;&lt;br /&gt;
 [ 0 -ne $? ] &amp;amp;&amp;amp; do_fail  # If the $CP command returns a non-zero result, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 do_clean&lt;br /&gt;
 &lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
The shell script:&lt;br /&gt;
&lt;br /&gt;
* Calls bitcoind backupwallet to create a time/date-stamped wallet.&lt;br /&gt;
* GPG encrypts the wallet with your public key.&lt;br /&gt;
* Copies the result using one of several storage options (cp, scp, and s3cmd).&lt;br /&gt;
* Uses the rm or shred command to remove the temporary wallet files.&lt;br /&gt;
&lt;br /&gt;
Be sure to modify the script options to fit your setup. After you save, make sure the file can be executed properly by the cron user. Common permissions for files in /usr/local/bin/ can be applied using (verify with your distribution!):&lt;br /&gt;
&lt;br /&gt;
 cd /usr/local/bin/ &amp;amp;&amp;amp; chown root:root backupwallet.sh &amp;amp;&amp;amp; chmod 755 backupwallet.sh&lt;br /&gt;
&lt;br /&gt;
[[Category:Technical]]&lt;br /&gt;
&lt;br /&gt;
==Restore==&lt;br /&gt;
&lt;br /&gt;
Assuming your backup is recent enough that you haven&#039;t used up all of your key pool... restoring a wallet to a new (or old) location and rescanning the block chain should leave you with all your coins. Just follow these steps:&lt;br /&gt;
* Shut down the Bitcoin program.&lt;br /&gt;
* Copy your backed-up wallet.dat into your bitcoin data directory.&lt;br /&gt;
* If you are copying in a backed-up wallet.dat that was last used on a Bitcoin version prior to 0.3.21 into an existing profile, delete files &#039;&#039;blk*.dat&#039;&#039; to make the client re-download the block chain. You may also need to do this if your transactions don&#039;t all show up after you restart Bitcoin.&lt;br /&gt;
&lt;br /&gt;
==Erasing Plain-text Wallets==&lt;br /&gt;
&lt;br /&gt;
In most operating systems, including Windows, Linux, and Mac OS X, simply deleting a wallet.dat file will &#039;&#039;not&#039;&#039; generally destroy it. It is likely that advanced tools can still be used to recover the wallet.dat file, even after it has been deleted.&lt;br /&gt;
&lt;br /&gt;
The Linux &#039;&#039;&#039;shred&#039;&#039;&#039; command can be used to overwrite the wallet file with random data prior to deleting; this particular copy of the file will then be practically impossible to recover.  Using shred (and similar tools on Windows) however does not guarantee that still other copies don&#039;t exist somewhere hidden on your HD. That will depend on your system configuration and what packages you have installed. Some system restore and backup tools, for instance, create periodic snapshots of your  filesystem, duplicating your wallet.dat.&lt;br /&gt;
&lt;br /&gt;
In Mac OS, the equivalent of &#039;&#039;&#039;shred&#039;&#039;&#039; is &#039;&#039;&#039;srm&#039;&#039;&#039; (introduced in Leopard). Using the Finder to remove files, clicking &amp;quot;Secure Empty Trash&amp;quot; in the Finder menu will shred the contents of the trash can. As with any OS this doesn&#039;t guarantee that there are not other copies elsewhere on your system.&lt;br /&gt;
&lt;br /&gt;
For Windows, the built-in command &#039;&#039;cipher /W&#039;&#039; will shred all previously-deleted files. [http://www.cylog.org/utilities/cybershredder.jsp CyberShredder] can securely deleted individual files.&lt;br /&gt;
&lt;br /&gt;
==Online and Mobile Wallets==&lt;br /&gt;
&lt;br /&gt;
Thus far, this article has been discussing the security of a wallet file for Bitcoin-QT or bitcoind that is under your sole control. Additional wallets applications and services have become available that offer other features and more convenience but not without introducing additional risk. When storing bitcoins with an [[eWallet]] such as Instawallet or Easywallet, you are essentially storing your private keys or wallet with that provider. &lt;br /&gt;
&lt;br /&gt;
Online wallets have a number of pros and cons to consider. For example, you can access your wallet on any computer in the world, but depending on the service, your bitcoins may be lost if the service is compromised. &lt;br /&gt;
&lt;br /&gt;
Mobile wallet applications are available for Android devices that allow you to send bitcoins by QR code or NFC, but this opens up the possibility of loss if mobile device is compromised. It may be possible to encrypt and backup the wallet or private keys on a mobile device but it is not advisable to store a large amount of bitcoins there without doing your own research and testing.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Data directory]]&lt;br /&gt;
* [[How to import private keys]]&lt;br /&gt;
* [http://startbitcoin.com/how-to-create-a-secure-bitcoin-wallet/ Secure Bitcoin Wallet Tutorial]&lt;br /&gt;
* [[How to set up a secure offline savings wallet]]&lt;br /&gt;
* [http://arimaa.com/bitcoin/ Bitcoin Gateway - A Peer-to-peer Bitcoin Vault and Payment Network]&lt;br /&gt;
* [http://blog.cyplo.net/2012/04/01/bitcoin-wallet-recovery-photorec/ Find lost wallet eg. after disk format, using Photorec]&lt;br /&gt;
&lt;br /&gt;
[[Category:Security]]&lt;br /&gt;
&lt;br /&gt;
[[de:Sichere deine Geldbörse]]&lt;br /&gt;
[[es:Cómo asegurar su monedero]]&lt;br /&gt;
[[zh-cn:保护你的钱包]]&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Securing_your_wallet&amp;diff=34888</id>
		<title>Securing your wallet</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Securing_your_wallet&amp;diff=34888"/>
		<updated>2013-01-10T21:50:16Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Restore */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
&lt;br /&gt;
Wallet security can be broken down into two independent goals:&lt;br /&gt;
# Protecting your wallet against loss.&lt;br /&gt;
# Protecting your wallet against theft.&lt;br /&gt;
&lt;br /&gt;
In the case that your current wallet hasn&#039;t been protected adequately (e.g. put online with a weaker password):&lt;br /&gt;
# Making a new secure wallet, using appropriate long-term protection.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For a brief overview see also: [[Wallet Security Dos and Don&#039;ts (Windows)|Wallet Security Dos and Don&#039;ts]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Paper Wallets==&lt;br /&gt;
[[Paper wallet]]s are a fairly simple way to store your bitcoins independent of a computer. When generated securely and stored on paper, or other offline storage media, a paper wallet decreases the chances of your bitcoins being stolen by hackers, or computer viruses.&lt;br /&gt;
&lt;br /&gt;
With each entry on a paper wallet, you are securing a sequence of secret numbers that is used to prove your right to spend the bitcoins assigned to one of your addresses. This secret number, called a [[private key]], is most commonly written as a sequence of fifty-one alphanumeric characters, beginning with a &#039;5&#039;.&lt;br /&gt;
&lt;br /&gt;
One way you can create a paper wallet is by going to the website [[BitAddress|bitaddress.org]]. This website features a free client-side paper wallet generator written in JavaScript. The webpage can be saved as a file and used on an offline computer. Using it online is relatively safe, for storing smaller amounts, but not airtight unless you take extra precautions to ensure your keys are not stolen by spyware. Alternatively Blockchain.info offers a [https://blockchain.info/wallet/paper-tutorial tutorial on how to generate a paper wallet] with an online component so you can still check your balance easily.&lt;br /&gt;
&lt;br /&gt;
To generate a safer paper wallet, it is best to &amp;quot;clean-boot&amp;quot; your computer with a bootable CD (such as a Linux Live CD), with your computer not connected to the Internet, to ensure that you do not have any active spyware that might steal any private keys you generate. Disconnecting from the Internet allows you to confirm that the paper wallet generator is truly self-contained and isn&#039;t depending on communication with a remote server. Run the saved paper wallet generator in a web browser, then print your paper wallets or store them on external media (do not save them on the computer), and then shut down the computer. You may need to load an appropriate printer driver in order to print while booted from the live CD.&lt;br /&gt;
&lt;br /&gt;
A paper wallet lists multiple Bitcoin addresses and their corresponding private keys. You can send Bitcoins to any address on the page and they will be inaccessible until the private key is imported into a wallet. Since version 0.6.0, the bitcoin software has a command called &amp;quot;importprivkey&amp;quot; that can load private keys, but you can also use the &amp;quot;Add Funds&amp;quot; - &amp;quot;Private key&amp;quot; screen at [[MtGox]] or Blockchain.info&#039;s &amp;quot;My Wallet&amp;quot; service to recover bitcoins from a private key. In the case of MtGox, bitcoins are deposited in your account, and can be sent out of MtGox after the standard number of deposit confirmations.&lt;br /&gt;
&lt;br /&gt;
Remember, spyware and viruses often attempt to monitor your computer activities so that their authors can steal from you. They are interested in passwords to online accounts, and anything of value. Bitcoin wallets and private keys are something of value that have already been targeted by malware. Paper wallets isolate you from much of this risk.&lt;br /&gt;
&lt;br /&gt;
If your computer is infected with spyware or viruses - even if there are no symptoms, or your antivirus isn&#039;t reporting anything - then anything you type, view, or save on your computer, could potentially be stolen by someone remotely controlling your computer. Your private key can then be intercepted while you enter it, so only enter a Bitcoin private key into your computer when your intent is to redeem its value &#039;&#039;immediately&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Hardware wallets ==&lt;br /&gt;
They are not operational yet, but [[Hardware wallet]]s are a major effort to provide a good combination of enhanced security and usability.&lt;br /&gt;
&lt;br /&gt;
==Importance of security updates==&lt;br /&gt;
&lt;br /&gt;
No software is perfect, and from time to time there may be security vulnerabilities found in your Bitcoin client as well.&lt;br /&gt;
Be sure you keep your client updated with the latest bug fixes, especially when a new vulnerability is discovered.&lt;br /&gt;
We maintain a [[CVEs|list a known vulnerabilities]] on this wiki - you can watch that page to get updates.&lt;br /&gt;
Note that you &#039;&#039;don&#039;t&#039;&#039; need to be running the latest major client version: some clients, including the popular Bitcoin-Qt, have older versions available with bugfix-only updates.&lt;br /&gt;
&lt;br /&gt;
==Securing the Bitcoin-QT or bitcoind wallet==&lt;br /&gt;
&lt;br /&gt;
Bitcoin transactions send Bitcoins to a specific public key. A Bitcoin address is an encoded hash of a public key. In order to use received Bitcoins, you need to have the private key matching the public key you received with. This is sort of like a super long password associated with an account (the account is the public key). Your Bitcoin wallet contains all of the private keys necessary for spending your received transactions. If you delete your wallet without a backup, then you no longer have the authorization information necessary to claim your coins, and the coins associated with those keys are lost forever.&lt;br /&gt;
&lt;br /&gt;
The wallet contains a pool of queued keys. By default there are 100 keys in the [[key pool]].  The size of the pool is configurable using the &amp;quot;-keypool&amp;quot; command line argument.  When you need an address for whatever reason (send, “new address”, generation, etc.), the key is not actually generated freshly, but taken from this pool. A brand new address is generated to fill the pool back to 100. So when a backup is first created, it has all of your old keys plus 100 unused keys. After sending a transaction, it has 99 unused keys. After a total of 100 new-key actions, you will start using keys that are not in your backup. Since the backup does not have the private keys necessary for authorizing spends of these coins, restoring from the old backup will cause you to lose Bitcoins.&lt;br /&gt;
&lt;br /&gt;
Creating a new address generates a new pair of public and private keys, which are added to your wallet. Each keypair is mostly random numbers, so they cannot be known prior to generation. If you backup your wallet and then create more than 100 new addresses, the keypair associated with the newest addresses will not be in the old wallet because the new keypairs are only known after creating them. Any coins received at these addresses will be lost if you restore from the backup.&lt;br /&gt;
&lt;br /&gt;
The situation is made somewhat more confusing because the receiving addresses shown in the UI are not the only keys in your wallet. Each Bitcoin generation is given a new public key, and, more importantly, each sent transaction also sends some number of Bitcoins back to yourself at a new key. When sending Bitcoins to anyone, you generate a new keypair for yourself and simultaneously send Bitcoins to your new public key and the actual recipient&#039;s public key. This is an anonymity feature – it makes tracking Bitcoin transactions much more difficult.&lt;br /&gt;
&lt;br /&gt;
So if you create a backup, do more than 100 things that cause a new key to be used, and then restore from the backup, some Bitcoins will be lost. Bitcoin has not deleted any keys (keys are never deleted) – it has created a new key that is not in your old backup and then sent Bitcoins to it.&lt;br /&gt;
&lt;br /&gt;
== Making a new wallet ==&lt;br /&gt;
&lt;br /&gt;
If a wallet or an encrypted wallet&#039;s password has been compromised, it is wise to create a new wallet and transfer the full balance of bitcoins to addresses contained only in the newly created wallet. Examples of ways a wallet may be compromised are through password re-use, minimal strength passwords, computer hack or virus attack.&lt;br /&gt;
&lt;br /&gt;
There are a number of ways to create a new wallet with Bitcoin-QT or bitcoind but this is a process that has been tested with bitcoind 0.6.3. We use the copy command to minimize the chance of any data loss but you are warned to make backups of any wallet.dat that holds a balance for you.&lt;br /&gt;
&lt;br /&gt;
:1. Shut down the Bitcoin program.&lt;br /&gt;
:2. Find and make a backup of the &amp;quot;compromised&amp;quot; wallet.dat file and rename it, perhaps adding a short description:&lt;br /&gt;
:::wallet.dat -&amp;gt;  wallet-compromised.dat&lt;br /&gt;
:Depending on your OS, the wallet file will be located at:&lt;br /&gt;
:::Windows: %APPDATA%\Bitcoin\&lt;br /&gt;
:::Linux: ~/.bitcoin/&lt;br /&gt;
:::Mac: ~/Library/Application Support/Bitcoin/&lt;br /&gt;
:3. Start the Bitcoin program and it will create a new wallet.dat. You may then encrypt the wallet as desired and make a new backup.&lt;br /&gt;
:4. Once you&#039;ve made a new wallet, you can obtain one or more addresses and copy them into a text editor. After obtaining the new address(es), shut down the Bitcoin program, make a backup of the new wallet.dat file and copy it to a new file named wallet-new.dat.&lt;br /&gt;
:5. Copy the wallet-compromised.dat file back to wallet.dat, start the Bitcoin program and transfer your balance to the new address(es) you put in your text editor. Once the balance is back to 0 for your compromised wallet, you may want to wait a couple minutes or for a confirmation or check block explorer to be sure the transactions have been broadcasted. Then you may shut down the Bitcoin program.&lt;br /&gt;
:6. Rename wallet.dat to wallet-compromised.dat. &lt;br /&gt;
:7. Rename wallet-new.dat to wallet.dat.&lt;br /&gt;
&lt;br /&gt;
You should now have a new wallet with all the bitcoins from the old wallet.&lt;br /&gt;
&lt;br /&gt;
==Making a secure workspace==&lt;br /&gt;
&lt;br /&gt;
If you are using your computer to handle bitcoins, a wallet, Bitcoin-related passwords, or Bitcoin private keys, you must take care that the system is free of malware, viruses, keyloggers, remote access tools, and other tools that may be used to make remote copies of any of the above. In the case that your computer is compromised, the precautions taken below may provide additional protection.&lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
&lt;br /&gt;
The first step is to make a [http://www.howtogeek.com/howto/ubuntu/add-a-user-on-ubuntu-server/ new user,] so as root, run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;adduser new_user_name&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you get to the prompt &#039;Enter the new value, or press ENTER for the default&#039;, just keep hitting ENTER.&lt;br /&gt;
&lt;br /&gt;
Then switch user to the new user.  To get to the new user you can use the switch user icon for your system, which on Ubuntu is in the &#039;System/Quit&#039; screen, or if there is no switch icon on your system you can log out and log back in as the new user.  Then click on a folder in the new user to display the file browser, then keep going up folders until you see the new user home directory, then right click to bring up the Properties dialog, then click on the Permissions tab, then in the Others section, set the folder access to None.&lt;br /&gt;
&lt;br /&gt;
For secure browsing, open Firefox, and then go into the Edit menu and click Preferences.  Starting from the left, click on the General tab, and in the &#039;Startup/When Firefox starts&#039; pop up menu, choose &#039;Show a Blank Page&#039;.  Then click on the Content tab, and deselect &#039;Load images automatically&#039; and deselect &#039;Enable JavaScript&#039;.  Then click on the Privacy tab, and in the &#039;History/Firefox will&#039; pop up menu, choose &#039;Never remember history&#039;.  Then click on the Security tab, and in the Passwords section, deselect &#039;Remember passwords for sites&#039; and deselect &#039;Use a master password&#039;.  Then click on the Advanced tab, then click on the Update tab, and then in the &#039;Automatically check for updates to&#039; section, deselect &#039;Add-ons&#039; and &#039;Search Engines&#039;.&lt;br /&gt;
&lt;br /&gt;
When JavaScript is disabled, the [http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.23/bitcoin-0.3.23-linux.tar.gz/download Linux download page] will not download automatically, so you&#039;ll have to click on the &#039;direct link&#039; part of the &amp;quot;Problems with the download? Please use this &#039;direct link&#039; or try another mirror.&amp;quot; line.&lt;br /&gt;
&lt;br /&gt;
After you&#039;ve made your secure new user, to maintain security you should only use it for Bitcoin.&lt;br /&gt;
&lt;br /&gt;
It&#039;s also a good idea to encrypt the Home directory of whatever user you run Bitcoin under using ecryptfs-utils. To do this:&lt;br /&gt;
# If the Home directory is not empty you should back it up first, by just copying the data to an external drive or something.&lt;br /&gt;
# install ecryptfs-utils (on Ubuntu: sudo apt-get install ecryptfs-utils)&lt;br /&gt;
# log out of X (graphical system) and press Ctrl+Alt+F1 to login to the command shell (you must be logged out or some files will be open and the tool won&#039;t be able to encrypt your data)&lt;br /&gt;
# change directory to something that&#039;s not in your home folder (ex: cd / )&lt;br /&gt;
# run the migration tool (on Ubuntu: sudo ecryptfs-migrate-home -u username)&lt;br /&gt;
# if it&#039;s successful, you can now press ALT+F8 to go back to the GUI and login&lt;br /&gt;
# run &#039;ecryptfs-unwrap-passphrase&#039; and &#039;&#039;&#039;WRITE DOWN OR SAVE THE CODE IT RETURNS&#039;&#039;&#039; because you will need it if you ever have to pull your data off while the OS is not working. (You can run it again later if you need to, but run it now so that you can get your data if your Linux install gets botched.)&lt;br /&gt;
# run &#039;ecryptfs-setup-swap&#039; to encrypt your swap partition (the encrypted folder data is not encrypted while it&#039;s in memory, and so if it&#039;s ever sent to the swap partition it can be stolen from there unless that too is encrypted - be aware that this will mean you cannot use Hibernate anymore, as the bootloader won&#039;t be able to restore the hibernation data)&lt;br /&gt;
(instructions from [http://bodhizazen.net/Tutorials/Ecryptfs/#Migrate])&lt;br /&gt;
&lt;br /&gt;
===Mac===&lt;br /&gt;
This solution &#039;&#039;&#039;does not scale&#039;&#039;&#039;; the amount of needed space can grow beyond the image size.&lt;br /&gt;
&lt;br /&gt;
=====Backup all data=====&lt;br /&gt;
Follow these instructions to backup all the bitcoin data (wallet and block chains) to an encrypted disk image.&lt;br /&gt;
# Open Disk Utility&lt;br /&gt;
# Click New Image and choose a big enough size, 128-bit or 256-bit (faster or more secure) encryption and single partition.&lt;br /&gt;
# Save it somewhere you won&#039;t lose it (like your Wuala, Dropbox, Strongspace or whatever)&lt;br /&gt;
# Choose a safe and strong password&lt;br /&gt;
# Move everything from ~/Library/Application Support/Bitcoin/ to the image&lt;br /&gt;
# Symlink it back so the app would be able to use it&lt;br /&gt;
:::ln -s /Volumes/Bitcoin ~/Library/Application Support/Bitcoin&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget to mount your image before using Bitcoin and unmount it after quitting.&lt;br /&gt;
&lt;br /&gt;
=====Backup just wallet.dat=====&lt;br /&gt;
Follow these instructions to backup just the wallet.dat file. This results in a smaller disk image, but it&#039;s more complicated to do.&lt;br /&gt;
# Open Disk Utility&lt;br /&gt;
# Click New Image and choose a big enough size, 128-bit or 256-bit (faster or more secure) encryption and single partition.&lt;br /&gt;
# Save it somewhere you won&#039;t lose it (like your Wuala, Dropbox, Strongspace or whatever)&lt;br /&gt;
# Choose a safe and strong password&lt;br /&gt;
# Move your wallet.dat file to the image&lt;br /&gt;
# Symlink it back so the app would be able to use it&lt;br /&gt;
:::ln -s /Volumes/Bitcoin/wallet.dat ~/Library/Application Support/Bitcoin/wallet.dat&lt;br /&gt;
&lt;br /&gt;
[[File:MountWalletAndLauchnBitcoin_OSX_Automator.png|thumbnail|150px|Mount Wallet and launch Bitcoin]]&lt;br /&gt;
Don&#039;t forget to mount your image before using Bitcoin and unmount after quitting it.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: If you start the Bitcoin application without having the image mounted, the application will overwrite your symlink with a new wallet. If that happens, don&#039;t panic. Just delete the new wallet.dat, mount the image, and recreate the symlink like above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Automation&#039;&#039;&#039;: You can create a small application using [http://en.wikipedia.org/wiki/Automator_%28software%29 Automator] (included in OS X) to automatically mount the wallet and then launch Bitcoin App. See the Screenshot on how to do this.&lt;br /&gt;
&lt;br /&gt;
If one &#039;&#039;doesn&#039;t&#039;&#039; want to use encrypted Disk images, then a &#039;&#039;&#039;small shell script&#039;&#039;&#039; can be used instead that takes care of decrypting the wallet, launching bitcoin client, and encrypting it after the client exits. This script works on both OSX and Linux: [http://lorelei.kaverit.org/bitcoin.sh bitcoin-launch-script]&lt;br /&gt;
&lt;br /&gt;
===Windows===&lt;br /&gt;
&lt;br /&gt;
Due to the frequency with which Windows computers are compromised, it is advised to encrypt your wallet or to keep your wallet on an encrypted disk image created by third-party software, such as [http://www.truecrypt.org/ TrueCrypt] (open source) or [http://www.jetico.com/encryption-bestcrypt/ Jetico BestCrypt] (commercial). This also applies to the storage of passwords, private keys and other data that can be used to access any of your Bitcoin balances.&lt;br /&gt;
&lt;br /&gt;
Assuming that you have installed the Windows Bitcoin client and run it at least once, the process is described below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;To mount the Bitcoin data directory on an encrypted drive&amp;lt;/b&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;ol start=1 type=1&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Use the third-party disk image encryption program of your choice to create and mount an encrypted disk image of at least 5GB in size. This procedure stores the entire block chain database with the wallet.dat file so the required size of the encrypted disk image required may grow in the future.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Locate the Bitcoin data directory, and copy the directory with all contents to the encrypted drive.&lt;br /&gt;
&amp;lt;p&amp;gt;For help finding this directory, see &amp;lt;b&amp;gt;[[Securing_your_wallet#Locating_Bitcoin_s_data_directory|Locating Bitcoin&#039;s Data Directory]]&amp;lt;/b&amp;gt;.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a Windows shortcut that starts Bitcoin with the &amp;lt;code&amp;gt;-datadir&amp;lt;/code&amp;gt; parameter and specifies the encrypted drive and directory.&lt;br /&gt;
&amp;lt;p&amp;gt;For example, if you installed Bitcoin in the default directory, mounted your Bitcoin encrypted drive as &amp;lt;code&amp;gt;E:\&amp;lt;/code&amp;gt;, and stored your Bitcoin data directory on it as &amp;lt;code&amp;gt;Bitcoin&amp;lt;/code&amp;gt;, you would type the following command as the shortcut Target:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;code&amp;gt;C:\Program Files\Bitcoin\bitcoin.exe -datadir=E:\Bitcoin&amp;lt;/code&amp;gt;&amp;lt;/blockquote&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open Bitcoin&#039;s settings and configure it &amp;lt;b&amp;gt;NOT&amp;lt;/b&amp;gt; to start automatically when you start Windows.&lt;br /&gt;
&amp;lt;p&amp;gt;This is to allow you to mount the Bitcoin encrypted disk image before starting Bitcoin.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Shut down Bitcoin, and then restart it from the new shortcut.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After doing this, any time you want to use Bitcoin, you must first mount the Bitcoin encrypted disk image using the same drive designation, and then run Bitcoin from the shortcut that you created, so that it can find its data and your wallet.&lt;br /&gt;
&lt;br /&gt;
== Locating Bitcoin&#039;s data directory ==&lt;br /&gt;
&lt;br /&gt;
The [[data directory]] is the location where Bitcoin&#039;s data files are stored, including the wallet data file.&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
Go to Start -&amp;gt; Run (or press WinKey+R) and run this:&lt;br /&gt;
&lt;br /&gt;
 explorer %APPDATA%\Bitcoin&lt;br /&gt;
&lt;br /&gt;
Bitcoin&#039;s data folder will open. For most users, this is one of the following locations:&lt;br /&gt;
&lt;br /&gt;
 C:\Documents and Settings\YourUserName\Application data\Bitcoin (Windows XP)&lt;br /&gt;
 &lt;br /&gt;
 C:\Users\YourUserName\Appdata\Roaming\Bitcoin (Windows Vista and 7)&lt;br /&gt;
&lt;br /&gt;
If you have trouble browsing to these folders, note that &amp;quot;AppData&amp;quot; and &amp;quot;Application data&amp;quot; are hidden by default.&lt;br /&gt;
&lt;br /&gt;
=== Linux ===&lt;br /&gt;
&lt;br /&gt;
By default Bitcoin will put its data here:&lt;br /&gt;
&lt;br /&gt;
 ~/.bitcoin/&lt;br /&gt;
&lt;br /&gt;
You need to do a &amp;quot;ls -a&amp;quot; to see directories that start with a dot.&lt;br /&gt;
&lt;br /&gt;
If that&#039;s not it, you can do a search like this:&lt;br /&gt;
&lt;br /&gt;
 find / -name wallet.dat -print 2&amp;gt;/dev/null&lt;br /&gt;
&lt;br /&gt;
To change the directory Bitcoin stores its data in:&lt;br /&gt;
 Run in terminal or script: ./bitcoin(-qt) -datadir=./[Directory_Name]&lt;br /&gt;
&lt;br /&gt;
=== Mac ===&lt;br /&gt;
&lt;br /&gt;
By default Bitcoin will put its data here:&lt;br /&gt;
&lt;br /&gt;
 ~/Library/Application Support/Bitcoin/&lt;br /&gt;
&lt;br /&gt;
==Backup==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Using Dropbox to back up your Bitcoin data is not recommended as doing so introduces the following [https://en.wikipedia.org/wiki/Dropbox_(service)#Reception security concerns]:&lt;br /&gt;
# Dropbox stores your encryption key (meaning that a disgruntled Dropbox employee or an attacker who gained access to the system could decrypt your Dropbox data and steal your bitcoins)&lt;br /&gt;
# the Dropbox client only needs a password for the first login. After it authenticates once, the server assigns it a token which it uses to show that, at one time, its user knew the password rather than sending the actual password (meaning that if you ever use the Dropbox client on another PC, that PC&#039;s users can access your Dropbox - even if you change your password - and can steal your bitcoins or get a virus that will steal your bitcoins).&lt;br /&gt;
&lt;br /&gt;
For these reasons, an alternative that always uses password authentication such as [http://www.wuala.com/en/bitcoin Wuala] should be used. Wuala&#039;s servers do not store your encryption key and the program authenticates with the password each time it is started.&lt;br /&gt;
&lt;br /&gt;
Whether you use Dropbox as your backup or not, it is advised to use what Steve Gibson calls &amp;quot;pre-Internet encryption&amp;quot; which means to use some form of encryption on your files before you back them up, in case an attacker gains access to that backup. Make sure to pick a password that is memorable but secure.&lt;br /&gt;
&lt;br /&gt;
The only file you need to back up is &amp;quot;wallet.dat&amp;quot; which can be done one of two ways. To make a copy of the wallet.dat file, ensure that Bitcoin is closed and copy this file somewhere else. The other way is to use the [[api|backupwallet]] JSON-RPC command to back up without shutting down Bitcoin. &lt;br /&gt;
&lt;br /&gt;
Once a copy has been made, encrypt it, and put it in two or more safe locations. Consider the risk due to theft, fire, or natural disaster in proportion to the value of bitcoins stored in the wallet.&lt;br /&gt;
&lt;br /&gt;
=== General Solutions ===&lt;br /&gt;
&lt;br /&gt;
Your wallet.dat file is not encrypted by the Bitcoin program by default but the most current release of the Bitcoin client provides a method to encrypt with a passphrase the private keys stored in the wallet. Anyone who can access an unencrypted wallet can easily steal all of your coins.  Use one of these encryption programs if there is any chance someone might gain access to your wallet.&lt;br /&gt;
* [http://www.7-zip.org/ 7-zip] - Supports strongly-encrypted archives.&lt;br /&gt;
* [http://www.axantum.com/axcrypt/ AxCrypt by Axantum]&lt;br /&gt;
* [http://lrzip.kolivas.org lrzip] - Compression software for Linux and OSX that supports very high grade password protected encryption&lt;br /&gt;
* [http://www.truecrypt.org/ TrueCrypt] - Volume-based on-the-fly encryption (for advanced users)&lt;br /&gt;
&lt;br /&gt;
There is also a list of [[OpenSourceEncryptionSoftware|open source encryption software.]]&lt;br /&gt;
&lt;br /&gt;
Decrypting and encrypting the wallet.dat every time you start or quit the Bitcoin client can be &#039;&#039;tedious&#039;&#039; (and outright error-prone). If you want to keep your wallet encrypted (except while you&#039;re actually running the Bitcoin client), it&#039;s better to relegate the automation to a [http://lorelei.kaverit.org/bitcoin.sh small shell script] that handles the en/decryption and starting up Bitcoin client for you (Linux and OSX). &lt;br /&gt;
&lt;br /&gt;
There is also a method to print out and encrypt your wallet.dat as a special, scannable code. See details here: [[WalletPaperbackup]]&lt;br /&gt;
&lt;br /&gt;
==== Password Strength ====&lt;br /&gt;
Brute-force password cracking has come a long way. A password including capitals, numbers, and special characters with a length of 8 characters can be trivially solved now (using appropriate hardware). The recommended length is &#039;&#039;&#039;at least&#039;&#039;&#039; 12 characters long.  You can also use a multi-word password and there are techniques to increase the strength of your passwords without sacrificing usability. [http://www.baekdal.com/tips/password-security-usability The Usability of Passwords] &lt;br /&gt;
&lt;br /&gt;
However, simply using dictionary words is also insecure as it opens you up to a dictionary attack. If you use dictionary words, be sure to include random symbols and numbers in the mix as well.&lt;br /&gt;
&lt;br /&gt;
If you use keyfiles in addition to a password, it is unlikely that your encrypted file can ever be cracked using brute-force methods, even when even a 12 character password might be too short.&lt;br /&gt;
&lt;br /&gt;
Assume that any encrypted files you store online (eg. Gmail, Dropbox) will be stored somewhere forever and can never be erased.&lt;br /&gt;
&lt;br /&gt;
===== Choosing A Strong Password =====&lt;br /&gt;
Make sure you pick at least one character in each group:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  Lowercase: abcdefghijklmnopqrstuvwxyz&lt;br /&gt;
  Uppercase: ABCDEFGHIJKLMNOPQRSTUVWXYZ&lt;br /&gt;
  Number: 1234567890&lt;br /&gt;
  Symbol: `~!@#$%^&amp;amp;*()-_=+\|[{]};:&#039;&amp;quot;,&amp;lt;.&amp;gt;/? (space)&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;9 char = unsuitable for use&lt;br /&gt;
  09 char = insecure&lt;br /&gt;
  10 char = low security&lt;br /&gt;
  11 char = medium security&lt;br /&gt;
  12 char = good security (good enough for your wallet)&lt;br /&gt;
  13 char = very good, enough for anything.&lt;br /&gt;
&lt;br /&gt;
You might want to read [http://security.stackexchange.com/questions/662/what-is-your-way-to-create-good-passwords-that-can-actually-be-remembered What is your way to create good passwords that can actually be remembered?] and [http://security.stackexchange.com/questions/6095/xkcd-936-short-complex-password-or-long-dictionary-passphrase XKCD #936: Short complex password, or long dictionary passphrase?]&lt;br /&gt;
&lt;br /&gt;
==== Email-based Archival and Remote Backup ====&lt;br /&gt;
One of the simplest methods for storing an appropriately &#039;&#039;&#039;encrypted&#039;&#039;&#039; archive of your wallet.dat file is to send the archive as an email attachment to your own e-mail address.  Services like Gmail use very comprehensive distributed networks that make the loss of data very unlikely.  One can even obfuscate the name of the files within the archive, and name the archive something less inviting, such as: &#039;personal notes&#039; or &#039;car insurance&#039;.&lt;br /&gt;
&lt;br /&gt;
Another solution is to use a file storage service like [http://www.wuala.com/bitcoin Wuala] ( encrypted, [http://www.bitcoin.org/smf/index.php?topic=5817.0 instructions]), [http://www.dropbox.com Dropbox] (after encrypting the wallet first) and [http://en.wikipedia.org/wiki/Comparison_of_online_backup_services others], including the more secure [http://www.spideroak.com SpiderOak].&lt;br /&gt;
&lt;br /&gt;
=== Autmated Backups using Cron, Bash and GNU/Linux ===&lt;br /&gt;
&lt;br /&gt;
Linux users can setup backups using cron by telling it to run a backup script at set intervals of time. Run &#039;crontab -e&#039; and add this line near the bottom:&lt;br /&gt;
&lt;br /&gt;
 01 * * * * /usr/local/bin/backupwallet.sh&lt;br /&gt;
&lt;br /&gt;
This cron line will run the /usr/local/bin/backupwallet.sh script at the 01 minute of every hour. Remember to add a newline after the last line of the crontab file, or else the last line won&#039;t run. You may also wish to ignore the script&#039;s output by appending &amp;quot; &amp;gt; /dev/null 2&amp;gt;&amp;amp;1&amp;quot; to the line (this will also prevent emails from being sent).&lt;br /&gt;
&lt;br /&gt;
Create /usr/local/bin/backupwallet.sh:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 # /usr/local/bin/backupwallet.sh&lt;br /&gt;
 #&lt;br /&gt;
 # Performs backup of bitcoin wallet.&lt;br /&gt;
 #&lt;br /&gt;
 # Written by: https://en.bitcoin.it/wiki/Securing_your_wallet&lt;br /&gt;
 &lt;br /&gt;
 #&lt;br /&gt;
 # Standard Options&lt;br /&gt;
 #&lt;br /&gt;
 TS=$(date &amp;quot;+%Y%m%d-%H%M&amp;quot;)&lt;br /&gt;
 WALLET=/tmp/wallet-${TS}&lt;br /&gt;
 WALLET_E=/tmp/wallet-${TS}.crypt&lt;br /&gt;
 BITCOIN=bitcoind  # /path/to/bitcoind&lt;br /&gt;
 GPG=gpg  # /path/to/gpg&lt;br /&gt;
 GPG_USER=username  # Username of gpg recipient. User should have gpg setup.&lt;br /&gt;
 RM=rm&lt;br /&gt;
 RM_OPTS=&#039;--force&#039;&lt;br /&gt;
 USE_SHRED=0  # Flip to 1 to use `shred` instead of `rm`.&lt;br /&gt;
 SHRED=shred&lt;br /&gt;
 SHRED_OPTS=&#039;--force --iterations=9 --zero --remove&#039;&lt;br /&gt;
 &lt;br /&gt;
 #&lt;br /&gt;
 # Storage Options&lt;br /&gt;
 # Only 1 set of options should be un-commented (the last one will be used).&lt;br /&gt;
 # Update CP_DEST paths as neccessary.&lt;br /&gt;
 #&lt;br /&gt;
 # CP - Storage on a local machine. Could be Dropbox/Wuala folder.&lt;br /&gt;
 #CP=cp&lt;br /&gt;
 #CP_DEST=&#039;/var/data/backups/&#039;  # &#039;~/Dropbox/&#039;, etc.&lt;br /&gt;
 #&lt;br /&gt;
 # SSH - Storage on a remote machine.&lt;br /&gt;
 CP=scp&lt;br /&gt;
 CP_DEST=&#039;remoteuser@example.com:~/wallets/&#039;&lt;br /&gt;
 #&lt;br /&gt;
 # S3 - Storage on Amazon&#039;s S3. Be sure s3cmd is installed and properly setup.&lt;br /&gt;
 # You may need &amp;quot;s3cmd put --force&amp;quot; if you use a sub-directory in CP_DEST.&lt;br /&gt;
 #CP=s3cmd put&lt;br /&gt;
 #CP_DEST=&#039;s3://bucket&#039;&lt;br /&gt;
 &lt;br /&gt;
 do_clean() {&lt;br /&gt;
   # Remove temporary wallets.&lt;br /&gt;
   if [ 1 -eq $USE_SHRED ]; then&lt;br /&gt;
     $SHRED $SHRED_OPTS $WALLET $WALLET_E&lt;br /&gt;
   else&lt;br /&gt;
     $RM $RM_OPTS $WALLET $WALLET_E&lt;br /&gt;
   fi&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 do_fail() {&lt;br /&gt;
   do_clean&lt;br /&gt;
   echo failed!&lt;br /&gt;
   exit 1&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 # Perform the backup.&lt;br /&gt;
 echo -n Making backup...&lt;br /&gt;
 $BITCOIN backupwallet $WALLET&lt;br /&gt;
 [ ! -s &amp;quot;$WALLET&amp;quot; ] &amp;amp;&amp;amp; do_fail  # If the backup does not exist or is empty, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 echo -n Encrypting backup...&lt;br /&gt;
 $GPG -r $GPG_USER --output $WALLET_E --encrypt $WALLET&lt;br /&gt;
 [ 0 -ne $? ] &amp;amp;&amp;amp; do_fail  # If gpg returns a non-zero result, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 echo -n Copying to backup location...&lt;br /&gt;
 $CP $WALLET_E &amp;quot;$CP_DEST&amp;quot;&lt;br /&gt;
 [ 0 -ne $? ] &amp;amp;&amp;amp; do_fail  # If the $CP command returns a non-zero result, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 do_clean&lt;br /&gt;
 &lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
The shell script:&lt;br /&gt;
&lt;br /&gt;
* Calls bitcoind backupwallet to create a time/date-stamped wallet.&lt;br /&gt;
* GPG encrypts the wallet with your public key.&lt;br /&gt;
* Copies the result using one of several storage options (cp, scp, and s3cmd).&lt;br /&gt;
* Uses the rm or shred command to remove the temporary wallet files.&lt;br /&gt;
&lt;br /&gt;
Be sure to modify the script options to fit your setup. After you save, make sure the file can be executed properly by the cron user. Common permissions for files in /usr/local/bin/ can be applied using (verify with your distribution!):&lt;br /&gt;
&lt;br /&gt;
 cd /usr/local/bin/ &amp;amp;&amp;amp; chown root:root backupwallet.sh &amp;amp;&amp;amp; chmod 755 backupwallet.sh&lt;br /&gt;
&lt;br /&gt;
[[Category:Technical]]&lt;br /&gt;
&lt;br /&gt;
==Restore==&lt;br /&gt;
&lt;br /&gt;
Assuming your backup is recent enough that you haven&#039;t used up all of your key pool... restoring a wallet to a new (or old) location and rescanning the block chain should leave you with all your coins. Just follow these steps:&lt;br /&gt;
* Shut down the Bitcoin program.&lt;br /&gt;
* Copy your backed-up wallet.dat into your bitcoin data directory.&lt;br /&gt;
* If you are copying in a backed-up wallet.dat that was last used on a Bitcoin version prior to 0.3.21 into existing profile, delete files &#039;&#039;blk*.dat&#039;&#039; to make the client re-download the block chain. You may also need to do this if your transactions don&#039;t all show up after you restart Bitcoin.&lt;br /&gt;
&lt;br /&gt;
==Erasing Plain-text Wallets==&lt;br /&gt;
&lt;br /&gt;
In most operating systems, including Windows, Linux, and Mac OS X, simply deleting a wallet.dat file will &#039;&#039;not&#039;&#039; generally destroy it. It is likely that advanced tools can still be used to recover the wallet.dat file, even after it has been deleted.&lt;br /&gt;
&lt;br /&gt;
The Linux &#039;&#039;&#039;shred&#039;&#039;&#039; command can be used to overwrite the wallet file with random data prior to deleting; this particular copy of the file will then be practically impossible to recover.  Using shred (and similar tools on Windows) however does not guarantee that still other copies don&#039;t exist somewhere hidden on your HD. That will depend on your system configuration and what packages you have installed. Some system restore and backup tools, for instance, create periodic snapshots of your  filesystem, duplicating your wallet.dat.&lt;br /&gt;
&lt;br /&gt;
In Mac OS, the equivalent of &#039;&#039;&#039;shred&#039;&#039;&#039; is &#039;&#039;&#039;srm&#039;&#039;&#039; (introduced in Leopard). Using the Finder to remove files, clicking &amp;quot;Secure Empty Trash&amp;quot; in the Finder menu will shred the contents of the trash can. As with any OS this doesn&#039;t guarantee that there are not other copies elsewhere on your system.&lt;br /&gt;
&lt;br /&gt;
For Windows, the built-in command &#039;&#039;cipher /W&#039;&#039; will shred all previously-deleted files. [http://www.cylog.org/utilities/cybershredder.jsp CyberShredder] can securely deleted individual files.&lt;br /&gt;
&lt;br /&gt;
==Online and Mobile Wallets==&lt;br /&gt;
&lt;br /&gt;
Thus far, this article has been discussing the security of a wallet file for Bitcoin-QT or bitcoind that is under your sole control. Additional wallets applications and services have become available that offer other features and more convenience but not without introducing additional risk. When storing bitcoins with an [[eWallet]] such as Instawallet or Easywallet, you are essentially storing your private keys or wallet with that provider. &lt;br /&gt;
&lt;br /&gt;
Online wallets have a number of pros and cons to consider. For example, you can access your wallet on any computer in the world, but depending on the service, your bitcoins may be lost if the service is compromised. &lt;br /&gt;
&lt;br /&gt;
Mobile wallet applications are available for Android devices that allow you to send bitcoins by QR code or NFC, but this opens up the possibility of loss if mobile device is compromised. It may be possible to encrypt and backup the wallet or private keys on a mobile device but it is not advisable to store a large amount of bitcoins there without doing your own research and testing.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Data directory]]&lt;br /&gt;
* [[How to import private keys]]&lt;br /&gt;
* [http://startbitcoin.com/how-to-create-a-secure-bitcoin-wallet/ Secure Bitcoin Wallet Tutorial]&lt;br /&gt;
* [[How to set up a secure offline savings wallet]]&lt;br /&gt;
* [http://arimaa.com/bitcoin/ Bitcoin Gateway - A Peer-to-peer Bitcoin Vault and Payment Network]&lt;br /&gt;
* [http://blog.cyplo.net/2012/04/01/bitcoin-wallet-recovery-photorec/ Find lost wallet eg. after disk format, using Photorec]&lt;br /&gt;
&lt;br /&gt;
[[Category:Security]]&lt;br /&gt;
&lt;br /&gt;
[[de:Sichere deine Geldbörse]]&lt;br /&gt;
[[es:Cómo asegurar su monedero]]&lt;br /&gt;
[[zh-cn:保护你的钱包]]&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Securing_your_wallet&amp;diff=34887</id>
		<title>Securing your wallet</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Securing_your_wallet&amp;diff=34887"/>
		<updated>2013-01-10T21:48:30Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Restore */ Versions on or after 0.3.21 keep track of the last block a wallet has seen within the wallet.dat file.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
&lt;br /&gt;
Wallet security can be broken down into two independent goals:&lt;br /&gt;
# Protecting your wallet against loss.&lt;br /&gt;
# Protecting your wallet against theft.&lt;br /&gt;
&lt;br /&gt;
In the case that your current wallet hasn&#039;t been protected adequately (e.g. put online with a weaker password):&lt;br /&gt;
# Making a new secure wallet, using appropriate long-term protection.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For a brief overview see also: [[Wallet Security Dos and Don&#039;ts (Windows)|Wallet Security Dos and Don&#039;ts]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Paper Wallets==&lt;br /&gt;
[[Paper wallet]]s are a fairly simple way to store your bitcoins independent of a computer. When generated securely and stored on paper, or other offline storage media, a paper wallet decreases the chances of your bitcoins being stolen by hackers, or computer viruses.&lt;br /&gt;
&lt;br /&gt;
With each entry on a paper wallet, you are securing a sequence of secret numbers that is used to prove your right to spend the bitcoins assigned to one of your addresses. This secret number, called a [[private key]], is most commonly written as a sequence of fifty-one alphanumeric characters, beginning with a &#039;5&#039;.&lt;br /&gt;
&lt;br /&gt;
One way you can create a paper wallet is by going to the website [[BitAddress|bitaddress.org]]. This website features a free client-side paper wallet generator written in JavaScript. The webpage can be saved as a file and used on an offline computer. Using it online is relatively safe, for storing smaller amounts, but not airtight unless you take extra precautions to ensure your keys are not stolen by spyware. Alternatively Blockchain.info offers a [https://blockchain.info/wallet/paper-tutorial tutorial on how to generate a paper wallet] with an online component so you can still check your balance easily.&lt;br /&gt;
&lt;br /&gt;
To generate a safer paper wallet, it is best to &amp;quot;clean-boot&amp;quot; your computer with a bootable CD (such as a Linux Live CD), with your computer not connected to the Internet, to ensure that you do not have any active spyware that might steal any private keys you generate. Disconnecting from the Internet allows you to confirm that the paper wallet generator is truly self-contained and isn&#039;t depending on communication with a remote server. Run the saved paper wallet generator in a web browser, then print your paper wallets or store them on external media (do not save them on the computer), and then shut down the computer. You may need to load an appropriate printer driver in order to print while booted from the live CD.&lt;br /&gt;
&lt;br /&gt;
A paper wallet lists multiple Bitcoin addresses and their corresponding private keys. You can send Bitcoins to any address on the page and they will be inaccessible until the private key is imported into a wallet. Since version 0.6.0, the bitcoin software has a command called &amp;quot;importprivkey&amp;quot; that can load private keys, but you can also use the &amp;quot;Add Funds&amp;quot; - &amp;quot;Private key&amp;quot; screen at [[MtGox]] or Blockchain.info&#039;s &amp;quot;My Wallet&amp;quot; service to recover bitcoins from a private key. In the case of MtGox, bitcoins are deposited in your account, and can be sent out of MtGox after the standard number of deposit confirmations.&lt;br /&gt;
&lt;br /&gt;
Remember, spyware and viruses often attempt to monitor your computer activities so that their authors can steal from you. They are interested in passwords to online accounts, and anything of value. Bitcoin wallets and private keys are something of value that have already been targeted by malware. Paper wallets isolate you from much of this risk.&lt;br /&gt;
&lt;br /&gt;
If your computer is infected with spyware or viruses - even if there are no symptoms, or your antivirus isn&#039;t reporting anything - then anything you type, view, or save on your computer, could potentially be stolen by someone remotely controlling your computer. Your private key can then be intercepted while you enter it, so only enter a Bitcoin private key into your computer when your intent is to redeem its value &#039;&#039;immediately&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Hardware wallets ==&lt;br /&gt;
They are not operational yet, but [[Hardware wallet]]s are a major effort to provide a good combination of enhanced security and usability.&lt;br /&gt;
&lt;br /&gt;
==Importance of security updates==&lt;br /&gt;
&lt;br /&gt;
No software is perfect, and from time to time there may be security vulnerabilities found in your Bitcoin client as well.&lt;br /&gt;
Be sure you keep your client updated with the latest bug fixes, especially when a new vulnerability is discovered.&lt;br /&gt;
We maintain a [[CVEs|list a known vulnerabilities]] on this wiki - you can watch that page to get updates.&lt;br /&gt;
Note that you &#039;&#039;don&#039;t&#039;&#039; need to be running the latest major client version: some clients, including the popular Bitcoin-Qt, have older versions available with bugfix-only updates.&lt;br /&gt;
&lt;br /&gt;
==Securing the Bitcoin-QT or bitcoind wallet==&lt;br /&gt;
&lt;br /&gt;
Bitcoin transactions send Bitcoins to a specific public key. A Bitcoin address is an encoded hash of a public key. In order to use received Bitcoins, you need to have the private key matching the public key you received with. This is sort of like a super long password associated with an account (the account is the public key). Your Bitcoin wallet contains all of the private keys necessary for spending your received transactions. If you delete your wallet without a backup, then you no longer have the authorization information necessary to claim your coins, and the coins associated with those keys are lost forever.&lt;br /&gt;
&lt;br /&gt;
The wallet contains a pool of queued keys. By default there are 100 keys in the [[key pool]].  The size of the pool is configurable using the &amp;quot;-keypool&amp;quot; command line argument.  When you need an address for whatever reason (send, “new address”, generation, etc.), the key is not actually generated freshly, but taken from this pool. A brand new address is generated to fill the pool back to 100. So when a backup is first created, it has all of your old keys plus 100 unused keys. After sending a transaction, it has 99 unused keys. After a total of 100 new-key actions, you will start using keys that are not in your backup. Since the backup does not have the private keys necessary for authorizing spends of these coins, restoring from the old backup will cause you to lose Bitcoins.&lt;br /&gt;
&lt;br /&gt;
Creating a new address generates a new pair of public and private keys, which are added to your wallet. Each keypair is mostly random numbers, so they cannot be known prior to generation. If you backup your wallet and then create more than 100 new addresses, the keypair associated with the newest addresses will not be in the old wallet because the new keypairs are only known after creating them. Any coins received at these addresses will be lost if you restore from the backup.&lt;br /&gt;
&lt;br /&gt;
The situation is made somewhat more confusing because the receiving addresses shown in the UI are not the only keys in your wallet. Each Bitcoin generation is given a new public key, and, more importantly, each sent transaction also sends some number of Bitcoins back to yourself at a new key. When sending Bitcoins to anyone, you generate a new keypair for yourself and simultaneously send Bitcoins to your new public key and the actual recipient&#039;s public key. This is an anonymity feature – it makes tracking Bitcoin transactions much more difficult.&lt;br /&gt;
&lt;br /&gt;
So if you create a backup, do more than 100 things that cause a new key to be used, and then restore from the backup, some Bitcoins will be lost. Bitcoin has not deleted any keys (keys are never deleted) – it has created a new key that is not in your old backup and then sent Bitcoins to it.&lt;br /&gt;
&lt;br /&gt;
== Making a new wallet ==&lt;br /&gt;
&lt;br /&gt;
If a wallet or an encrypted wallet&#039;s password has been compromised, it is wise to create a new wallet and transfer the full balance of bitcoins to addresses contained only in the newly created wallet. Examples of ways a wallet may be compromised are through password re-use, minimal strength passwords, computer hack or virus attack.&lt;br /&gt;
&lt;br /&gt;
There are a number of ways to create a new wallet with Bitcoin-QT or bitcoind but this is a process that has been tested with bitcoind 0.6.3. We use the copy command to minimize the chance of any data loss but you are warned to make backups of any wallet.dat that holds a balance for you.&lt;br /&gt;
&lt;br /&gt;
:1. Shut down the Bitcoin program.&lt;br /&gt;
:2. Find and make a backup of the &amp;quot;compromised&amp;quot; wallet.dat file and rename it, perhaps adding a short description:&lt;br /&gt;
:::wallet.dat -&amp;gt;  wallet-compromised.dat&lt;br /&gt;
:Depending on your OS, the wallet file will be located at:&lt;br /&gt;
:::Windows: %APPDATA%\Bitcoin\&lt;br /&gt;
:::Linux: ~/.bitcoin/&lt;br /&gt;
:::Mac: ~/Library/Application Support/Bitcoin/&lt;br /&gt;
:3. Start the Bitcoin program and it will create a new wallet.dat. You may then encrypt the wallet as desired and make a new backup.&lt;br /&gt;
:4. Once you&#039;ve made a new wallet, you can obtain one or more addresses and copy them into a text editor. After obtaining the new address(es), shut down the Bitcoin program, make a backup of the new wallet.dat file and copy it to a new file named wallet-new.dat.&lt;br /&gt;
:5. Copy the wallet-compromised.dat file back to wallet.dat, start the Bitcoin program and transfer your balance to the new address(es) you put in your text editor. Once the balance is back to 0 for your compromised wallet, you may want to wait a couple minutes or for a confirmation or check block explorer to be sure the transactions have been broadcasted. Then you may shut down the Bitcoin program.&lt;br /&gt;
:6. Rename wallet.dat to wallet-compromised.dat. &lt;br /&gt;
:7. Rename wallet-new.dat to wallet.dat.&lt;br /&gt;
&lt;br /&gt;
You should now have a new wallet with all the bitcoins from the old wallet.&lt;br /&gt;
&lt;br /&gt;
==Making a secure workspace==&lt;br /&gt;
&lt;br /&gt;
If you are using your computer to handle bitcoins, a wallet, Bitcoin-related passwords, or Bitcoin private keys, you must take care that the system is free of malware, viruses, keyloggers, remote access tools, and other tools that may be used to make remote copies of any of the above. In the case that your computer is compromised, the precautions taken below may provide additional protection.&lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
&lt;br /&gt;
The first step is to make a [http://www.howtogeek.com/howto/ubuntu/add-a-user-on-ubuntu-server/ new user,] so as root, run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;adduser new_user_name&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you get to the prompt &#039;Enter the new value, or press ENTER for the default&#039;, just keep hitting ENTER.&lt;br /&gt;
&lt;br /&gt;
Then switch user to the new user.  To get to the new user you can use the switch user icon for your system, which on Ubuntu is in the &#039;System/Quit&#039; screen, or if there is no switch icon on your system you can log out and log back in as the new user.  Then click on a folder in the new user to display the file browser, then keep going up folders until you see the new user home directory, then right click to bring up the Properties dialog, then click on the Permissions tab, then in the Others section, set the folder access to None.&lt;br /&gt;
&lt;br /&gt;
For secure browsing, open Firefox, and then go into the Edit menu and click Preferences.  Starting from the left, click on the General tab, and in the &#039;Startup/When Firefox starts&#039; pop up menu, choose &#039;Show a Blank Page&#039;.  Then click on the Content tab, and deselect &#039;Load images automatically&#039; and deselect &#039;Enable JavaScript&#039;.  Then click on the Privacy tab, and in the &#039;History/Firefox will&#039; pop up menu, choose &#039;Never remember history&#039;.  Then click on the Security tab, and in the Passwords section, deselect &#039;Remember passwords for sites&#039; and deselect &#039;Use a master password&#039;.  Then click on the Advanced tab, then click on the Update tab, and then in the &#039;Automatically check for updates to&#039; section, deselect &#039;Add-ons&#039; and &#039;Search Engines&#039;.&lt;br /&gt;
&lt;br /&gt;
When JavaScript is disabled, the [http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.23/bitcoin-0.3.23-linux.tar.gz/download Linux download page] will not download automatically, so you&#039;ll have to click on the &#039;direct link&#039; part of the &amp;quot;Problems with the download? Please use this &#039;direct link&#039; or try another mirror.&amp;quot; line.&lt;br /&gt;
&lt;br /&gt;
After you&#039;ve made your secure new user, to maintain security you should only use it for Bitcoin.&lt;br /&gt;
&lt;br /&gt;
It&#039;s also a good idea to encrypt the Home directory of whatever user you run Bitcoin under using ecryptfs-utils. To do this:&lt;br /&gt;
# If the Home directory is not empty you should back it up first, by just copying the data to an external drive or something.&lt;br /&gt;
# install ecryptfs-utils (on Ubuntu: sudo apt-get install ecryptfs-utils)&lt;br /&gt;
# log out of X (graphical system) and press Ctrl+Alt+F1 to login to the command shell (you must be logged out or some files will be open and the tool won&#039;t be able to encrypt your data)&lt;br /&gt;
# change directory to something that&#039;s not in your home folder (ex: cd / )&lt;br /&gt;
# run the migration tool (on Ubuntu: sudo ecryptfs-migrate-home -u username)&lt;br /&gt;
# if it&#039;s successful, you can now press ALT+F8 to go back to the GUI and login&lt;br /&gt;
# run &#039;ecryptfs-unwrap-passphrase&#039; and &#039;&#039;&#039;WRITE DOWN OR SAVE THE CODE IT RETURNS&#039;&#039;&#039; because you will need it if you ever have to pull your data off while the OS is not working. (You can run it again later if you need to, but run it now so that you can get your data if your Linux install gets botched.)&lt;br /&gt;
# run &#039;ecryptfs-setup-swap&#039; to encrypt your swap partition (the encrypted folder data is not encrypted while it&#039;s in memory, and so if it&#039;s ever sent to the swap partition it can be stolen from there unless that too is encrypted - be aware that this will mean you cannot use Hibernate anymore, as the bootloader won&#039;t be able to restore the hibernation data)&lt;br /&gt;
(instructions from [http://bodhizazen.net/Tutorials/Ecryptfs/#Migrate])&lt;br /&gt;
&lt;br /&gt;
===Mac===&lt;br /&gt;
This solution &#039;&#039;&#039;does not scale&#039;&#039;&#039;; the amount of needed space can grow beyond the image size.&lt;br /&gt;
&lt;br /&gt;
=====Backup all data=====&lt;br /&gt;
Follow these instructions to backup all the bitcoin data (wallet and block chains) to an encrypted disk image.&lt;br /&gt;
# Open Disk Utility&lt;br /&gt;
# Click New Image and choose a big enough size, 128-bit or 256-bit (faster or more secure) encryption and single partition.&lt;br /&gt;
# Save it somewhere you won&#039;t lose it (like your Wuala, Dropbox, Strongspace or whatever)&lt;br /&gt;
# Choose a safe and strong password&lt;br /&gt;
# Move everything from ~/Library/Application Support/Bitcoin/ to the image&lt;br /&gt;
# Symlink it back so the app would be able to use it&lt;br /&gt;
:::ln -s /Volumes/Bitcoin ~/Library/Application Support/Bitcoin&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget to mount your image before using Bitcoin and unmount it after quitting.&lt;br /&gt;
&lt;br /&gt;
=====Backup just wallet.dat=====&lt;br /&gt;
Follow these instructions to backup just the wallet.dat file. This results in a smaller disk image, but it&#039;s more complicated to do.&lt;br /&gt;
# Open Disk Utility&lt;br /&gt;
# Click New Image and choose a big enough size, 128-bit or 256-bit (faster or more secure) encryption and single partition.&lt;br /&gt;
# Save it somewhere you won&#039;t lose it (like your Wuala, Dropbox, Strongspace or whatever)&lt;br /&gt;
# Choose a safe and strong password&lt;br /&gt;
# Move your wallet.dat file to the image&lt;br /&gt;
# Symlink it back so the app would be able to use it&lt;br /&gt;
:::ln -s /Volumes/Bitcoin/wallet.dat ~/Library/Application Support/Bitcoin/wallet.dat&lt;br /&gt;
&lt;br /&gt;
[[File:MountWalletAndLauchnBitcoin_OSX_Automator.png|thumbnail|150px|Mount Wallet and launch Bitcoin]]&lt;br /&gt;
Don&#039;t forget to mount your image before using Bitcoin and unmount after quitting it.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: If you start the Bitcoin application without having the image mounted, the application will overwrite your symlink with a new wallet. If that happens, don&#039;t panic. Just delete the new wallet.dat, mount the image, and recreate the symlink like above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Automation&#039;&#039;&#039;: You can create a small application using [http://en.wikipedia.org/wiki/Automator_%28software%29 Automator] (included in OS X) to automatically mount the wallet and then launch Bitcoin App. See the Screenshot on how to do this.&lt;br /&gt;
&lt;br /&gt;
If one &#039;&#039;doesn&#039;t&#039;&#039; want to use encrypted Disk images, then a &#039;&#039;&#039;small shell script&#039;&#039;&#039; can be used instead that takes care of decrypting the wallet, launching bitcoin client, and encrypting it after the client exits. This script works on both OSX and Linux: [http://lorelei.kaverit.org/bitcoin.sh bitcoin-launch-script]&lt;br /&gt;
&lt;br /&gt;
===Windows===&lt;br /&gt;
&lt;br /&gt;
Due to the frequency with which Windows computers are compromised, it is advised to encrypt your wallet or to keep your wallet on an encrypted disk image created by third-party software, such as [http://www.truecrypt.org/ TrueCrypt] (open source) or [http://www.jetico.com/encryption-bestcrypt/ Jetico BestCrypt] (commercial). This also applies to the storage of passwords, private keys and other data that can be used to access any of your Bitcoin balances.&lt;br /&gt;
&lt;br /&gt;
Assuming that you have installed the Windows Bitcoin client and run it at least once, the process is described below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;To mount the Bitcoin data directory on an encrypted drive&amp;lt;/b&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;ol start=1 type=1&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Use the third-party disk image encryption program of your choice to create and mount an encrypted disk image of at least 5GB in size. This procedure stores the entire block chain database with the wallet.dat file so the required size of the encrypted disk image required may grow in the future.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Locate the Bitcoin data directory, and copy the directory with all contents to the encrypted drive.&lt;br /&gt;
&amp;lt;p&amp;gt;For help finding this directory, see &amp;lt;b&amp;gt;[[Securing_your_wallet#Locating_Bitcoin_s_data_directory|Locating Bitcoin&#039;s Data Directory]]&amp;lt;/b&amp;gt;.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a Windows shortcut that starts Bitcoin with the &amp;lt;code&amp;gt;-datadir&amp;lt;/code&amp;gt; parameter and specifies the encrypted drive and directory.&lt;br /&gt;
&amp;lt;p&amp;gt;For example, if you installed Bitcoin in the default directory, mounted your Bitcoin encrypted drive as &amp;lt;code&amp;gt;E:\&amp;lt;/code&amp;gt;, and stored your Bitcoin data directory on it as &amp;lt;code&amp;gt;Bitcoin&amp;lt;/code&amp;gt;, you would type the following command as the shortcut Target:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;code&amp;gt;C:\Program Files\Bitcoin\bitcoin.exe -datadir=E:\Bitcoin&amp;lt;/code&amp;gt;&amp;lt;/blockquote&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open Bitcoin&#039;s settings and configure it &amp;lt;b&amp;gt;NOT&amp;lt;/b&amp;gt; to start automatically when you start Windows.&lt;br /&gt;
&amp;lt;p&amp;gt;This is to allow you to mount the Bitcoin encrypted disk image before starting Bitcoin.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Shut down Bitcoin, and then restart it from the new shortcut.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After doing this, any time you want to use Bitcoin, you must first mount the Bitcoin encrypted disk image using the same drive designation, and then run Bitcoin from the shortcut that you created, so that it can find its data and your wallet.&lt;br /&gt;
&lt;br /&gt;
== Locating Bitcoin&#039;s data directory ==&lt;br /&gt;
&lt;br /&gt;
The [[data directory]] is the location where Bitcoin&#039;s data files are stored, including the wallet data file.&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
Go to Start -&amp;gt; Run (or press WinKey+R) and run this:&lt;br /&gt;
&lt;br /&gt;
 explorer %APPDATA%\Bitcoin&lt;br /&gt;
&lt;br /&gt;
Bitcoin&#039;s data folder will open. For most users, this is one of the following locations:&lt;br /&gt;
&lt;br /&gt;
 C:\Documents and Settings\YourUserName\Application data\Bitcoin (Windows XP)&lt;br /&gt;
 &lt;br /&gt;
 C:\Users\YourUserName\Appdata\Roaming\Bitcoin (Windows Vista and 7)&lt;br /&gt;
&lt;br /&gt;
If you have trouble browsing to these folders, note that &amp;quot;AppData&amp;quot; and &amp;quot;Application data&amp;quot; are hidden by default.&lt;br /&gt;
&lt;br /&gt;
=== Linux ===&lt;br /&gt;
&lt;br /&gt;
By default Bitcoin will put its data here:&lt;br /&gt;
&lt;br /&gt;
 ~/.bitcoin/&lt;br /&gt;
&lt;br /&gt;
You need to do a &amp;quot;ls -a&amp;quot; to see directories that start with a dot.&lt;br /&gt;
&lt;br /&gt;
If that&#039;s not it, you can do a search like this:&lt;br /&gt;
&lt;br /&gt;
 find / -name wallet.dat -print 2&amp;gt;/dev/null&lt;br /&gt;
&lt;br /&gt;
To change the directory Bitcoin stores its data in:&lt;br /&gt;
 Run in terminal or script: ./bitcoin(-qt) -datadir=./[Directory_Name]&lt;br /&gt;
&lt;br /&gt;
=== Mac ===&lt;br /&gt;
&lt;br /&gt;
By default Bitcoin will put its data here:&lt;br /&gt;
&lt;br /&gt;
 ~/Library/Application Support/Bitcoin/&lt;br /&gt;
&lt;br /&gt;
==Backup==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Using Dropbox to back up your Bitcoin data is not recommended as doing so introduces the following [https://en.wikipedia.org/wiki/Dropbox_(service)#Reception security concerns]:&lt;br /&gt;
# Dropbox stores your encryption key (meaning that a disgruntled Dropbox employee or an attacker who gained access to the system could decrypt your Dropbox data and steal your bitcoins)&lt;br /&gt;
# the Dropbox client only needs a password for the first login. After it authenticates once, the server assigns it a token which it uses to show that, at one time, its user knew the password rather than sending the actual password (meaning that if you ever use the Dropbox client on another PC, that PC&#039;s users can access your Dropbox - even if you change your password - and can steal your bitcoins or get a virus that will steal your bitcoins).&lt;br /&gt;
&lt;br /&gt;
For these reasons, an alternative that always uses password authentication such as [http://www.wuala.com/en/bitcoin Wuala] should be used. Wuala&#039;s servers do not store your encryption key and the program authenticates with the password each time it is started.&lt;br /&gt;
&lt;br /&gt;
Whether you use Dropbox as your backup or not, it is advised to use what Steve Gibson calls &amp;quot;pre-Internet encryption&amp;quot; which means to use some form of encryption on your files before you back them up, in case an attacker gains access to that backup. Make sure to pick a password that is memorable but secure.&lt;br /&gt;
&lt;br /&gt;
The only file you need to back up is &amp;quot;wallet.dat&amp;quot; which can be done one of two ways. To make a copy of the wallet.dat file, ensure that Bitcoin is closed and copy this file somewhere else. The other way is to use the [[api|backupwallet]] JSON-RPC command to back up without shutting down Bitcoin. &lt;br /&gt;
&lt;br /&gt;
Once a copy has been made, encrypt it, and put it in two or more safe locations. Consider the risk due to theft, fire, or natural disaster in proportion to the value of bitcoins stored in the wallet.&lt;br /&gt;
&lt;br /&gt;
=== General Solutions ===&lt;br /&gt;
&lt;br /&gt;
Your wallet.dat file is not encrypted by the Bitcoin program by default but the most current release of the Bitcoin client provides a method to encrypt with a passphrase the private keys stored in the wallet. Anyone who can access an unencrypted wallet can easily steal all of your coins.  Use one of these encryption programs if there is any chance someone might gain access to your wallet.&lt;br /&gt;
* [http://www.7-zip.org/ 7-zip] - Supports strongly-encrypted archives.&lt;br /&gt;
* [http://www.axantum.com/axcrypt/ AxCrypt by Axantum]&lt;br /&gt;
* [http://lrzip.kolivas.org lrzip] - Compression software for Linux and OSX that supports very high grade password protected encryption&lt;br /&gt;
* [http://www.truecrypt.org/ TrueCrypt] - Volume-based on-the-fly encryption (for advanced users)&lt;br /&gt;
&lt;br /&gt;
There is also a list of [[OpenSourceEncryptionSoftware|open source encryption software.]]&lt;br /&gt;
&lt;br /&gt;
Decrypting and encrypting the wallet.dat every time you start or quit the Bitcoin client can be &#039;&#039;tedious&#039;&#039; (and outright error-prone). If you want to keep your wallet encrypted (except while you&#039;re actually running the Bitcoin client), it&#039;s better to relegate the automation to a [http://lorelei.kaverit.org/bitcoin.sh small shell script] that handles the en/decryption and starting up Bitcoin client for you (Linux and OSX). &lt;br /&gt;
&lt;br /&gt;
There is also a method to print out and encrypt your wallet.dat as a special, scannable code. See details here: [[WalletPaperbackup]]&lt;br /&gt;
&lt;br /&gt;
==== Password Strength ====&lt;br /&gt;
Brute-force password cracking has come a long way. A password including capitals, numbers, and special characters with a length of 8 characters can be trivially solved now (using appropriate hardware). The recommended length is &#039;&#039;&#039;at least&#039;&#039;&#039; 12 characters long.  You can also use a multi-word password and there are techniques to increase the strength of your passwords without sacrificing usability. [http://www.baekdal.com/tips/password-security-usability The Usability of Passwords] &lt;br /&gt;
&lt;br /&gt;
However, simply using dictionary words is also insecure as it opens you up to a dictionary attack. If you use dictionary words, be sure to include random symbols and numbers in the mix as well.&lt;br /&gt;
&lt;br /&gt;
If you use keyfiles in addition to a password, it is unlikely that your encrypted file can ever be cracked using brute-force methods, even when even a 12 character password might be too short.&lt;br /&gt;
&lt;br /&gt;
Assume that any encrypted files you store online (eg. Gmail, Dropbox) will be stored somewhere forever and can never be erased.&lt;br /&gt;
&lt;br /&gt;
===== Choosing A Strong Password =====&lt;br /&gt;
Make sure you pick at least one character in each group:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  Lowercase: abcdefghijklmnopqrstuvwxyz&lt;br /&gt;
  Uppercase: ABCDEFGHIJKLMNOPQRSTUVWXYZ&lt;br /&gt;
  Number: 1234567890&lt;br /&gt;
  Symbol: `~!@#$%^&amp;amp;*()-_=+\|[{]};:&#039;&amp;quot;,&amp;lt;.&amp;gt;/? (space)&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;9 char = unsuitable for use&lt;br /&gt;
  09 char = insecure&lt;br /&gt;
  10 char = low security&lt;br /&gt;
  11 char = medium security&lt;br /&gt;
  12 char = good security (good enough for your wallet)&lt;br /&gt;
  13 char = very good, enough for anything.&lt;br /&gt;
&lt;br /&gt;
You might want to read [http://security.stackexchange.com/questions/662/what-is-your-way-to-create-good-passwords-that-can-actually-be-remembered What is your way to create good passwords that can actually be remembered?] and [http://security.stackexchange.com/questions/6095/xkcd-936-short-complex-password-or-long-dictionary-passphrase XKCD #936: Short complex password, or long dictionary passphrase?]&lt;br /&gt;
&lt;br /&gt;
==== Email-based Archival and Remote Backup ====&lt;br /&gt;
One of the simplest methods for storing an appropriately &#039;&#039;&#039;encrypted&#039;&#039;&#039; archive of your wallet.dat file is to send the archive as an email attachment to your own e-mail address.  Services like Gmail use very comprehensive distributed networks that make the loss of data very unlikely.  One can even obfuscate the name of the files within the archive, and name the archive something less inviting, such as: &#039;personal notes&#039; or &#039;car insurance&#039;.&lt;br /&gt;
&lt;br /&gt;
Another solution is to use a file storage service like [http://www.wuala.com/bitcoin Wuala] ( encrypted, [http://www.bitcoin.org/smf/index.php?topic=5817.0 instructions]), [http://www.dropbox.com Dropbox] (after encrypting the wallet first) and [http://en.wikipedia.org/wiki/Comparison_of_online_backup_services others], including the more secure [http://www.spideroak.com SpiderOak].&lt;br /&gt;
&lt;br /&gt;
=== Autmated Backups using Cron, Bash and GNU/Linux ===&lt;br /&gt;
&lt;br /&gt;
Linux users can setup backups using cron by telling it to run a backup script at set intervals of time. Run &#039;crontab -e&#039; and add this line near the bottom:&lt;br /&gt;
&lt;br /&gt;
 01 * * * * /usr/local/bin/backupwallet.sh&lt;br /&gt;
&lt;br /&gt;
This cron line will run the /usr/local/bin/backupwallet.sh script at the 01 minute of every hour. Remember to add a newline after the last line of the crontab file, or else the last line won&#039;t run. You may also wish to ignore the script&#039;s output by appending &amp;quot; &amp;gt; /dev/null 2&amp;gt;&amp;amp;1&amp;quot; to the line (this will also prevent emails from being sent).&lt;br /&gt;
&lt;br /&gt;
Create /usr/local/bin/backupwallet.sh:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 # /usr/local/bin/backupwallet.sh&lt;br /&gt;
 #&lt;br /&gt;
 # Performs backup of bitcoin wallet.&lt;br /&gt;
 #&lt;br /&gt;
 # Written by: https://en.bitcoin.it/wiki/Securing_your_wallet&lt;br /&gt;
 &lt;br /&gt;
 #&lt;br /&gt;
 # Standard Options&lt;br /&gt;
 #&lt;br /&gt;
 TS=$(date &amp;quot;+%Y%m%d-%H%M&amp;quot;)&lt;br /&gt;
 WALLET=/tmp/wallet-${TS}&lt;br /&gt;
 WALLET_E=/tmp/wallet-${TS}.crypt&lt;br /&gt;
 BITCOIN=bitcoind  # /path/to/bitcoind&lt;br /&gt;
 GPG=gpg  # /path/to/gpg&lt;br /&gt;
 GPG_USER=username  # Username of gpg recipient. User should have gpg setup.&lt;br /&gt;
 RM=rm&lt;br /&gt;
 RM_OPTS=&#039;--force&#039;&lt;br /&gt;
 USE_SHRED=0  # Flip to 1 to use `shred` instead of `rm`.&lt;br /&gt;
 SHRED=shred&lt;br /&gt;
 SHRED_OPTS=&#039;--force --iterations=9 --zero --remove&#039;&lt;br /&gt;
 &lt;br /&gt;
 #&lt;br /&gt;
 # Storage Options&lt;br /&gt;
 # Only 1 set of options should be un-commented (the last one will be used).&lt;br /&gt;
 # Update CP_DEST paths as neccessary.&lt;br /&gt;
 #&lt;br /&gt;
 # CP - Storage on a local machine. Could be Dropbox/Wuala folder.&lt;br /&gt;
 #CP=cp&lt;br /&gt;
 #CP_DEST=&#039;/var/data/backups/&#039;  # &#039;~/Dropbox/&#039;, etc.&lt;br /&gt;
 #&lt;br /&gt;
 # SSH - Storage on a remote machine.&lt;br /&gt;
 CP=scp&lt;br /&gt;
 CP_DEST=&#039;remoteuser@example.com:~/wallets/&#039;&lt;br /&gt;
 #&lt;br /&gt;
 # S3 - Storage on Amazon&#039;s S3. Be sure s3cmd is installed and properly setup.&lt;br /&gt;
 # You may need &amp;quot;s3cmd put --force&amp;quot; if you use a sub-directory in CP_DEST.&lt;br /&gt;
 #CP=s3cmd put&lt;br /&gt;
 #CP_DEST=&#039;s3://bucket&#039;&lt;br /&gt;
 &lt;br /&gt;
 do_clean() {&lt;br /&gt;
   # Remove temporary wallets.&lt;br /&gt;
   if [ 1 -eq $USE_SHRED ]; then&lt;br /&gt;
     $SHRED $SHRED_OPTS $WALLET $WALLET_E&lt;br /&gt;
   else&lt;br /&gt;
     $RM $RM_OPTS $WALLET $WALLET_E&lt;br /&gt;
   fi&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 do_fail() {&lt;br /&gt;
   do_clean&lt;br /&gt;
   echo failed!&lt;br /&gt;
   exit 1&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 # Perform the backup.&lt;br /&gt;
 echo -n Making backup...&lt;br /&gt;
 $BITCOIN backupwallet $WALLET&lt;br /&gt;
 [ ! -s &amp;quot;$WALLET&amp;quot; ] &amp;amp;&amp;amp; do_fail  # If the backup does not exist or is empty, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 echo -n Encrypting backup...&lt;br /&gt;
 $GPG -r $GPG_USER --output $WALLET_E --encrypt $WALLET&lt;br /&gt;
 [ 0 -ne $? ] &amp;amp;&amp;amp; do_fail  # If gpg returns a non-zero result, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 echo -n Copying to backup location...&lt;br /&gt;
 $CP $WALLET_E &amp;quot;$CP_DEST&amp;quot;&lt;br /&gt;
 [ 0 -ne $? ] &amp;amp;&amp;amp; do_fail  # If the $CP command returns a non-zero result, fail.&lt;br /&gt;
 echo done.&lt;br /&gt;
 do_clean&lt;br /&gt;
 &lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
The shell script:&lt;br /&gt;
&lt;br /&gt;
* Calls bitcoind backupwallet to create a time/date-stamped wallet.&lt;br /&gt;
* GPG encrypts the wallet with your public key.&lt;br /&gt;
* Copies the result using one of several storage options (cp, scp, and s3cmd).&lt;br /&gt;
* Uses the rm or shred command to remove the temporary wallet files.&lt;br /&gt;
&lt;br /&gt;
Be sure to modify the script options to fit your setup. After you save, make sure the file can be executed properly by the cron user. Common permissions for files in /usr/local/bin/ can be applied using (verify with your distribution!):&lt;br /&gt;
&lt;br /&gt;
 cd /usr/local/bin/ &amp;amp;&amp;amp; chown root:root backupwallet.sh &amp;amp;&amp;amp; chmod 755 backupwallet.sh&lt;br /&gt;
&lt;br /&gt;
[[Category:Technical]]&lt;br /&gt;
&lt;br /&gt;
==Restore==&lt;br /&gt;
&lt;br /&gt;
Assuming your backup is recent enough that you haven&#039;t used up all of your key pool... restoring a wallet to a new (or old) location and rescanning the block chain should leave you with all your coins. Just follow these steps:&lt;br /&gt;
* Shut down the Bitcoin program.&lt;br /&gt;
* Copy your backed-up wallet.dat into your bitcoin data directory.&lt;br /&gt;
* If you are copying a backed-up wallet.dat that was last used on a Bitcoin version prior to 0.3.21 into existing profile, delete files &#039;&#039;blk*.dat&#039;&#039; to make the client re-download the block chain. You may also need to do this if your transactions don&#039;t all show up after you restart Bitcoin.&lt;br /&gt;
&lt;br /&gt;
==Erasing Plain-text Wallets==&lt;br /&gt;
&lt;br /&gt;
In most operating systems, including Windows, Linux, and Mac OS X, simply deleting a wallet.dat file will &#039;&#039;not&#039;&#039; generally destroy it. It is likely that advanced tools can still be used to recover the wallet.dat file, even after it has been deleted.&lt;br /&gt;
&lt;br /&gt;
The Linux &#039;&#039;&#039;shred&#039;&#039;&#039; command can be used to overwrite the wallet file with random data prior to deleting; this particular copy of the file will then be practically impossible to recover.  Using shred (and similar tools on Windows) however does not guarantee that still other copies don&#039;t exist somewhere hidden on your HD. That will depend on your system configuration and what packages you have installed. Some system restore and backup tools, for instance, create periodic snapshots of your  filesystem, duplicating your wallet.dat.&lt;br /&gt;
&lt;br /&gt;
In Mac OS, the equivalent of &#039;&#039;&#039;shred&#039;&#039;&#039; is &#039;&#039;&#039;srm&#039;&#039;&#039; (introduced in Leopard). Using the Finder to remove files, clicking &amp;quot;Secure Empty Trash&amp;quot; in the Finder menu will shred the contents of the trash can. As with any OS this doesn&#039;t guarantee that there are not other copies elsewhere on your system.&lt;br /&gt;
&lt;br /&gt;
For Windows, the built-in command &#039;&#039;cipher /W&#039;&#039; will shred all previously-deleted files. [http://www.cylog.org/utilities/cybershredder.jsp CyberShredder] can securely deleted individual files.&lt;br /&gt;
&lt;br /&gt;
==Online and Mobile Wallets==&lt;br /&gt;
&lt;br /&gt;
Thus far, this article has been discussing the security of a wallet file for Bitcoin-QT or bitcoind that is under your sole control. Additional wallets applications and services have become available that offer other features and more convenience but not without introducing additional risk. When storing bitcoins with an [[eWallet]] such as Instawallet or Easywallet, you are essentially storing your private keys or wallet with that provider. &lt;br /&gt;
&lt;br /&gt;
Online wallets have a number of pros and cons to consider. For example, you can access your wallet on any computer in the world, but depending on the service, your bitcoins may be lost if the service is compromised. &lt;br /&gt;
&lt;br /&gt;
Mobile wallet applications are available for Android devices that allow you to send bitcoins by QR code or NFC, but this opens up the possibility of loss if mobile device is compromised. It may be possible to encrypt and backup the wallet or private keys on a mobile device but it is not advisable to store a large amount of bitcoins there without doing your own research and testing.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Data directory]]&lt;br /&gt;
* [[How to import private keys]]&lt;br /&gt;
* [http://startbitcoin.com/how-to-create-a-secure-bitcoin-wallet/ Secure Bitcoin Wallet Tutorial]&lt;br /&gt;
* [[How to set up a secure offline savings wallet]]&lt;br /&gt;
* [http://arimaa.com/bitcoin/ Bitcoin Gateway - A Peer-to-peer Bitcoin Vault and Payment Network]&lt;br /&gt;
* [http://blog.cyplo.net/2012/04/01/bitcoin-wallet-recovery-photorec/ Find lost wallet eg. after disk format, using Photorec]&lt;br /&gt;
&lt;br /&gt;
[[Category:Security]]&lt;br /&gt;
&lt;br /&gt;
[[de:Sichere deine Geldbörse]]&lt;br /&gt;
[[es:Cómo asegurar su monedero]]&lt;br /&gt;
[[zh-cn:保护你的钱包]]&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Open-source_useful_tools&amp;diff=15094</id>
		<title>Open-source useful tools</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Open-source_useful_tools&amp;diff=15094"/>
		<updated>2011-08-16T22:26:13Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Scripts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Never&#039;&#039;&#039; use closed-source tools, for obvious reasons&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Client forks ==&lt;br /&gt;
[https://github.com/piotrnar/bitcoin/commits/importexporttx piotrnar&#039;s fork]&lt;br /&gt;
&lt;br /&gt;
:Import/export transactions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scripts ==&lt;br /&gt;
[https://bitcointalk.org/index.php?topic=34028.0 Pywallet]&lt;br /&gt;
:Wallet managing: import/export/delete addresses and transactions, recover *coins sent to Bitcoin addresses&lt;br /&gt;
:Sign/verify messages and files with Bitcoin addresses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/gavinandresen/bitcointools Bitcointools]&lt;br /&gt;
&lt;br /&gt;
[https://bitcointalk.org/index.php?topic=25091.0 bitcoin-wallet-recover]&lt;br /&gt;
:Recover wallets from reformatted drives&lt;br /&gt;
&lt;br /&gt;
== Online ==&lt;br /&gt;
&lt;br /&gt;
[http://blockexplorer.com/ Blockexplorer.com]&lt;br /&gt;
:List of blocks and transactions&lt;br /&gt;
[http://bitcoincharts.com/bitcoin/ Bitcoin Charts]&lt;br /&gt;
:List of unconfirmed transaction&lt;br /&gt;
[http://www.bitcoinmonitor.com/ Bitcoin Monitor]&lt;br /&gt;
:Visualize the activities on the Bitcoin network&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Open-source_useful_tools&amp;diff=15093</id>
		<title>Open-source useful tools</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Open-source_useful_tools&amp;diff=15093"/>
		<updated>2011-08-16T22:25:00Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Scripts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Never&#039;&#039;&#039; use closed-source tools, for obvious reasons&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Client forks ==&lt;br /&gt;
[https://github.com/piotrnar/bitcoin/commits/importexporttx piotrnar&#039;s fork]&lt;br /&gt;
&lt;br /&gt;
:Import/export transactions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scripts ==&lt;br /&gt;
[https://bitcointalk.org/index.php?topic=34028.0 Pywallet]&lt;br /&gt;
:Wallet managing: import/export/delete addresses and transactions, recover *coins sent to Bitcoin addresses&lt;br /&gt;
:Sign/verify messages and files with Bitcoin addresses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/gavinandresen/bitcointools Bitcointools]&lt;br /&gt;
&lt;br /&gt;
[http://bitcointalk.org/index.php?topic=25091.0 bitcoin-wallet-recover]&lt;br /&gt;
:Recover wallets from reformatted drives&lt;br /&gt;
&lt;br /&gt;
== Online ==&lt;br /&gt;
&lt;br /&gt;
[http://blockexplorer.com/ Blockexplorer.com]&lt;br /&gt;
:List of blocks and transactions&lt;br /&gt;
[http://bitcoincharts.com/bitcoin/ Bitcoin Charts]&lt;br /&gt;
:List of unconfirmed transaction&lt;br /&gt;
[http://www.bitcoinmonitor.com/ Bitcoin Monitor]&lt;br /&gt;
:Visualize the activities on the Bitcoin network&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Open-source_useful_tools&amp;diff=15092</id>
		<title>Open-source useful tools</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Open-source_useful_tools&amp;diff=15092"/>
		<updated>2011-08-16T22:23:31Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Scripts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Never&#039;&#039;&#039; use closed-source tools, for obvious reasons&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Client forks ==&lt;br /&gt;
[https://github.com/piotrnar/bitcoin/commits/importexporttx piotrnar&#039;s fork]&lt;br /&gt;
&lt;br /&gt;
:Import/export transactions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scripts ==&lt;br /&gt;
[https://bitcointalk.org/index.php?topic=34028.0 Pywallet]&lt;br /&gt;
:Wallet managing: import/export/delete addresses and transactions, recover *coins sent to Bitcoin addresses&lt;br /&gt;
:Sign/verify messages and files with Bitcoin addresses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/gavinandresen/bitcointools Bitcointools]&lt;br /&gt;
&lt;br /&gt;
[http://bitcointalk.org/index.php?topic=25091.0 bitcoin-wallet-recover]&lt;br /&gt;
:Recover wallets from formatted drives&lt;br /&gt;
&lt;br /&gt;
== Online ==&lt;br /&gt;
&lt;br /&gt;
[http://blockexplorer.com/ Blockexplorer.com]&lt;br /&gt;
:List of blocks and transactions&lt;br /&gt;
[http://bitcoincharts.com/bitcoin/ Bitcoin Charts]&lt;br /&gt;
:List of unconfirmed transaction&lt;br /&gt;
[http://www.bitcoinmonitor.com/ Bitcoin Monitor]&lt;br /&gt;
:Visualize the activities on the Bitcoin network&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Open-source_useful_tools&amp;diff=15091</id>
		<title>Open-source useful tools</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Open-source_useful_tools&amp;diff=15091"/>
		<updated>2011-08-16T22:20:48Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Online */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Never&#039;&#039;&#039; use closed-source tools, for obvious reasons&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Client forks ==&lt;br /&gt;
[https://github.com/piotrnar/bitcoin/commits/importexporttx piotrnar&#039;s fork]&lt;br /&gt;
&lt;br /&gt;
:Import/export transactions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scripts ==&lt;br /&gt;
[https://bitcointalk.org/index.php?topic=34028.0 Pywallet]&lt;br /&gt;
:Wallet managing: import/export/delete addresses and transactions, recover *coins sent to Bitcoin addresses&lt;br /&gt;
:Sign/verify messages and files with Bitcoin addresses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://github.com/gavinandresen/bitcointools Bitcointools]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Online ==&lt;br /&gt;
&lt;br /&gt;
[http://blockexplorer.com/ Blockexplorer.com]&lt;br /&gt;
:List of blocks and transactions&lt;br /&gt;
[http://bitcoincharts.com/bitcoin/ Bitcoin Charts]&lt;br /&gt;
:List of unconfirmed transaction&lt;br /&gt;
[http://www.bitcoinmonitor.com/ Bitcoin Monitor]&lt;br /&gt;
:Visualize the activities on the Bitcoin network&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Changelog&amp;diff=12712</id>
		<title>Changelog</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Changelog&amp;diff=12712"/>
		<updated>2011-07-09T01:44:01Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* 0.3.240.3.24 release announcement */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
This page aggregates the changelogs that have been posted on the forum for the Bitcoin releases. &lt;br /&gt;
&lt;br /&gt;
=Changelogs=&lt;br /&gt;
&lt;br /&gt;
==0.3.24&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=27187.0 0.3.24 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Bitcoin v0.3.24 is now available for download at&lt;br /&gt;
https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.24/&lt;br /&gt;
&lt;br /&gt;
This is another bug fix release.  We had hoped to have wallet encryption ready for release, but more urgent fixes for existing clients were needed -- most notably block download problems were getting severe.  Wallet encryption is ready for testing at https://github.com/bitcoin/bitcoin/pull/352 for the git-savvy, and hopefully will follow shortly in the next release, v0.4.&lt;br /&gt;
&lt;br /&gt;
Notable fixes in v0.3.24, and the main reasons for this release:&lt;br /&gt;
&lt;br /&gt;
F1) Block downloads were failing or taking unreasonable amounts of time to complete, because the increased size of the block chain was bumping up against some earlier buffer-size DoS limits.&lt;br /&gt;
&lt;br /&gt;
F2) Fix crash caused by loss/lack of network connection.&lt;br /&gt;
&lt;br /&gt;
Notable changes in v0.3.24:&lt;br /&gt;
&lt;br /&gt;
C1) DNS seeding enabled by default.&lt;br /&gt;
&lt;br /&gt;
C2) UPNP enabled by default in the GUI client.  The percentage of bitcoin clients that accept incoming connections is quite small, and that is a problem.  This should help.  bitcoind, and unofficial builds, are unchanged (though we encourage use of &amp;quot;-upnp&amp;quot; to help the network!)&lt;br /&gt;
&lt;br /&gt;
C3) Initial unit testing framework.  Bitcoin sorely needs automated tests, and this is a beginning.  Contributions welcome.&lt;br /&gt;
&lt;br /&gt;
C4) Internal wallet code cleanup.  While invisible to an end user, this change provides the basis for v0.4&#039;s wallet encryption.&lt;br /&gt;
&lt;br /&gt;
==0.3.23&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=16553.0 0.3.23 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Win32, Linux, MacOSX and source releases for bitcoin v0.3.23 have been uploaded to&lt;br /&gt;
https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.23/&lt;br /&gt;
&lt;br /&gt;
This is another quick bugfix release, trying to deal with the influx of new bitcoin users.&lt;br /&gt;
&lt;br /&gt;
Main items of note:&lt;br /&gt;
&lt;br /&gt;
* P2P connect-to-node logic changed to reduce timeout a bit.  The network saw a huge influx of new users, who do not permit incoming connections.  This change is a short-term hack, to more quickly hunt for useful P2P connections.  Better &amp;quot;leaf node&amp;quot; logic is in the works, but this should let us limp along until then.  One may use -upnp to properly forward ports, and help the network.&lt;br /&gt;
* Transaction fee reduced to 0.0005 for new transactions&lt;br /&gt;
* Client will relay transactions with fees as low as 0.0001 BTC&lt;br /&gt;
&lt;br /&gt;
==0.3.22&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=12269.0 0.3.22 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Download URL: https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.22/&lt;br /&gt;
&lt;br /&gt;
This is largely a bugfix and TX fee schedule release.  We also hope to make 0.3.23 a quick release, to fix problems that the network has seen due to explosive growth in the past week.&lt;br /&gt;
&lt;br /&gt;
Notable changes:&lt;br /&gt;
* Client will accept and relay TX&#039;s with 0.0005 BTC fee schedule (users still pay 0.01 BTC per kb, until next version)&lt;br /&gt;
* Non-standard transactions accepted on testnet&lt;br /&gt;
* Source code tree reorganized (prep for autotools build)&lt;br /&gt;
* Remove &amp;quot;Generate Coins&amp;quot; option from GUI, and remove 4way SSE miner.  Internal reference CPU miner remains available, but users are directed to external miners for best hash production.&lt;br /&gt;
* IRC is overflowing.  Client now bootstraps to channels #bitcoin00 - #bitcoin99&lt;br /&gt;
* DNS names now may be used with -addnode, -connect (requires -dns to enable)&lt;br /&gt;
&lt;br /&gt;
RPC changes:&lt;br /&gt;
* &#039;listtransactions&#039; adds &#039;from&#039; param, for range queries&lt;br /&gt;
* &#039;move&#039; may take account balances negative&lt;br /&gt;
* &#039;settxfee&#039; added, to manually set TX fee&lt;br /&gt;
&lt;br /&gt;
==0.3.21&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/?topic=6642.0 0.3.21 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Binaries for Bitcoin version 0.3.21 are available at:&lt;br /&gt;
  https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.21/&lt;br /&gt;
&lt;br /&gt;
Changes and new features from the 0.3.20 release include:&lt;br /&gt;
&lt;br /&gt;
* Universal Plug and Play support.  Enable automatic opening of a port for incoming connections by running bitcoin or bitcoind with the - -upnp=1 command line switch or using the Options dialog box.&lt;br /&gt;
&lt;br /&gt;
* Support for full-precision bitcoin amounts.  You can now send, and bitcoin will display, bitcoin amounts smaller than 0.01.  However, sending fewer than 0.01 bitcoins still requires a 0.01 bitcoin fee (so you can send 1.0001 bitcoins without a fee, but you will be asked to pay a fee if you try to send 0.0001).&lt;br /&gt;
&lt;br /&gt;
* A new method of finding bitcoin nodes to connect with, via DNS A records. Use the -dnsseed option to enable.&lt;br /&gt;
&lt;br /&gt;
For developers, changes to bitcoin&#039;s remote-procedure-call API:&lt;br /&gt;
&lt;br /&gt;
* New rpc command &amp;quot;sendmany&amp;quot; to send bitcoins to more than one address in a single transaction.&lt;br /&gt;
&lt;br /&gt;
* Several bug fixes, including a serious intermittent bug that would sometimes cause bitcoind to stop accepting rpc requests. &lt;br /&gt;
&lt;br /&gt;
* -logtimestamps option, to add a timestamp to each line in debug.log.&lt;br /&gt;
&lt;br /&gt;
* Immature blocks (newly generated, under 120 confirmations) are now shown in listtransactions.&lt;br /&gt;
&lt;br /&gt;
==0.3.20.2&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=4167.0 0.3.20.2 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
The maxsendbuffer bug (0.3.20.1 clients not being able to download the block chain from other 0.3.20.1 clients) was only going to get&lt;br /&gt;
worse as people upgraded, so I cherry-picked the bug fix and created a minor release yesterday.&lt;br /&gt;
&lt;br /&gt;
The Amazon Machine Images I used to do the builds are available:&lt;br /&gt;
&lt;br /&gt;
  ami-38a05251   Bitcoin-v0.3.20.2 Mingw    (Windows; Administrator password &#039;bitcoin development&#039;)&lt;br /&gt;
  ami-30a05259   Bitcoin_0.3.20.2 Linux32&lt;br /&gt;
  ami-8abc4ee3   Bitcoin_0.3.20.2 Linux64&lt;br /&gt;
&lt;br /&gt;
(mac build will be done soon)&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded version 0.3.20.1, please either add this to your bitcoin.conf file:&lt;br /&gt;
&lt;br /&gt;
  maxsendbuffer=10000&lt;br /&gt;
  maxreceivebuffer=10000&lt;br /&gt;
&lt;br /&gt;
... or download the new version.&lt;br /&gt;
&lt;br /&gt;
==0.3.20.1==&lt;br /&gt;
(No known forum post.)&lt;br /&gt;
&lt;br /&gt;
==0.3.20&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2953.0 0.3.20 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Please checkout the git integration branch from:&lt;br /&gt;
&lt;br /&gt;
https://github.com/bitcoin/bitcoin&lt;br /&gt;
&lt;br /&gt;
... and help test.  The new features that need testing are:&lt;br /&gt;
&lt;br /&gt;
* -nolisten : https://github.com/bitcoin/bitcoin/pull/11&lt;br /&gt;
* -rescan : scan block chain for missing wallet transactions&lt;br /&gt;
* -printtoconsole : https://github.com/bitcoin/bitcoin/pull/37&lt;br /&gt;
* RPC gettransaction details : https://github.com/bitcoin/bitcoin/pull/24&lt;br /&gt;
* listtransactions new features : https://github.com/bitcoin/bitcoin/pull/10&lt;br /&gt;
&lt;br /&gt;
Bug fixes that also need testing:&lt;br /&gt;
&lt;br /&gt;
* -maxconnections= : https://github.com/bitcoin/bitcoin/pull/42&lt;br /&gt;
* RPC listaccounts minconf : https://github.com/bitcoin/bitcoin/pull/27&lt;br /&gt;
* RPC move, add time to output : https://github.com/bitcoin/bitcoin/pull/21&lt;br /&gt;
* ...and several improvements to --help output.&lt;br /&gt;
&lt;br /&gt;
This needs more testing on Windows!  Please drop me a quick private message, email, or IRC message if you are able to do some testing.  If you find bugs, please open an issue at:&lt;br /&gt;
&lt;br /&gt;
https://github.com/bitcoin/bitcoin/issues&lt;br /&gt;
&lt;br /&gt;
==0.3.19&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2228.0 0.3.19 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
There&#039;s more work to do on DoS, but I&#039;m doing a quick build of what I have so far in case it&#039;s needed, before venturing into more complex ideas.  The build for this is version 0.3.19.&lt;br /&gt;
&lt;br /&gt;
- Added some DoS controls&lt;br /&gt;
As Gavin and I have said clearly before, the software is not at all resistant to DoS attack.  This is one improvement, but there are still more ways to attack than I can count.  &lt;br /&gt;
&lt;br /&gt;
I&#039;m leaving the -limitfreerelay part as a switch for now and it&#039;s there if you need it.&lt;br /&gt;
&lt;br /&gt;
- Removed &amp;quot;safe mode&amp;quot; alerts&lt;br /&gt;
&amp;quot;safe mode&amp;quot; alerts was a temporary measure after the 0.3.9 overflow bug.  We can say all we want that users can just run with &amp;quot;-disablesafemode&amp;quot;, but it&#039;s better just not to have it for the sake of appearances.  It was never intended as a long term feature.  Safe mode can still be triggered by seeing a longer (greater total PoW) invalid block chain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==0.3.18&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2162.0 0.3.18 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Fixed a wallet.dat compatibility problem if you downgraded from 0.3.17 and then upgraded again&lt;br /&gt;
* IsStandard() check to only include known transaction types in blocks&lt;br /&gt;
* Jgarzik&#039;s optimisation to speed up the initial block download a little&lt;br /&gt;
&lt;br /&gt;
The main addition in this release is the Accounts-Based JSON-RPC commands that Gavin&#039;s been working on (more details at http://www.bitcoin.org/smf/index.php?topic=1886.0).  &lt;br /&gt;
* getaccountaddress&lt;br /&gt;
* sendfrom&lt;br /&gt;
* move&lt;br /&gt;
* getbalance&lt;br /&gt;
* listtransactions&lt;br /&gt;
&lt;br /&gt;
==0.3.17&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1946.0 0.3.17 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.17 is now available.&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* new getwork, thanks m0mchil&lt;br /&gt;
* added transaction fee setting in UI options menu&lt;br /&gt;
* free transaction limits&lt;br /&gt;
* sendtoaddress returns transaction id instead of &amp;quot;sent&amp;quot;&lt;br /&gt;
* getaccountaddress &amp;lt;account&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The UI transaction fee setting was easy since it was still there from 0.1.5 and all I had to do was re-enable it.&lt;br /&gt;
&lt;br /&gt;
The accounts-based commands: move, sendfrom and getbalance &amp;lt;account&amp;gt; will be in the next release.  We still have some more changes to make first.&lt;br /&gt;
&lt;br /&gt;
==0.3.16==&lt;br /&gt;
&lt;br /&gt;
Never released.&lt;br /&gt;
&lt;br /&gt;
==0.3.15&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1780.0 0.3.15 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
* paytxfee switch is now per KB, so it adds the correct fee for large transactions&lt;br /&gt;
* sending avoids using coins with less than 6 confirmations if it can&lt;br /&gt;
* BitcoinMiner processes transactions in priority order based on age of dependencies&lt;br /&gt;
* make sure generation doesn&#039;t start before block 74000 downloaded&lt;br /&gt;
* bugfixes by Dean Gores&lt;br /&gt;
* testnet, keypoololdest and paytxfee added to getinfo&lt;br /&gt;
&lt;br /&gt;
==0.3.14&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1528.0 0.3.14 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.14 is now available&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.14/&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Key pool feature for safer wallet backup&lt;br /&gt;
Gavin Andresen:&lt;br /&gt;
* TEST network mode with switch -testnet&lt;br /&gt;
* Option to use SSL for JSON-RPC connections on unix/osx&lt;br /&gt;
* validateaddress RPC command&lt;br /&gt;
eurekafag:&lt;br /&gt;
* Russian translation&lt;br /&gt;
&lt;br /&gt;
==0.3.13&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1327.0 0.3.13 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.13 is now available.  You should upgrade to prevent potential problems with 0/unconfirmed transactions.  Note: 0.3.13 prevents problems if you haven&#039;t already spent a 0/unconfirmed transaction, but if that already happened, you need 0.3.13.2.&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Don&#039;t count or spend payments until they have 1 confirmation.&lt;br /&gt;
* Internal version number from 312 to 31300.&lt;br /&gt;
* Only accept transactions sent by IP address if -allowreceivebyip is specified.&lt;br /&gt;
* Dropped DB_PRIVATE Berkeley DB flag.&lt;br /&gt;
* Fix problem sending the last cent with sub-cent fractional change.&lt;br /&gt;
* Auto-detect whether to use 128-bit 4-way SSE2 on Linux.&lt;br /&gt;
Gavin Andresen:&lt;br /&gt;
* Option -rpcallowip= to accept json-rpc connections from another machine.&lt;br /&gt;
* Clean shutdown on SIGTERM on Linux.&lt;br /&gt;
&lt;br /&gt;
Download:&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.13/&lt;br /&gt;
&lt;br /&gt;
(Thanks Laszlo for the Mac OSX build!)&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
The SSE2 auto-detect in the Linux 64-bit version doesn&#039;t work with AMD in 64-bit mode.  Please try this instead and let me know if it gets it right:&lt;br /&gt;
http://www.bitcoin.org/download/bitcoin-0.3.13.1-specialbuild-linux64.tar.gz&lt;br /&gt;
&lt;br /&gt;
You can still control the SSE2 use manually with -4way and -4way=0.&lt;br /&gt;
&lt;br /&gt;
Version 0.3.13.2 (SVN rev 161) has improvements for the case where you already had 0/unconfirmed transactions that you might have already spent.  Here&#039;s a Windows build of it:&lt;br /&gt;
http://www.bitcoin.org/download/bitcoin-0.3.13.2-win32-setup.exe&lt;br /&gt;
&lt;br /&gt;
==0.3.12&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=999.0 0.3.12 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.12 is now available.&lt;br /&gt;
&lt;br /&gt;
Features:&lt;br /&gt;
* json-rpc errors return a more standard error object. (thanks to Gavin Andresen)&lt;br /&gt;
* json-rpc command line returns exit codes.&lt;br /&gt;
* json-rpc &amp;quot;backupwallet&amp;quot; command.&lt;br /&gt;
* Recovers and continues if an exception is caused by a message you received.  Other nodes shouldn&#039;t be able to cause an exception, and it hasn&#039;t happened before, but if a way is found to cause an exception, this would keep it from being used to stop network nodes.&lt;br /&gt;
&lt;br /&gt;
If you have json-rpc code that checks the contents of the error string, you need to change it to expect error objects of the form {&amp;quot;code&amp;quot;:&amp;lt;number&amp;gt;,&amp;quot;message&amp;quot;:&amp;lt;string&amp;gt;}, which is the standard.  See this thread:&lt;br /&gt;
http://www.bitcoin.org/smf/index.php?topic=969.0&lt;br /&gt;
&lt;br /&gt;
Download:&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.12/&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Changelog&amp;diff=12711</id>
		<title>Changelog</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Changelog&amp;diff=12711"/>
		<updated>2011-07-09T01:43:09Z</updated>

		<summary type="html">&lt;p&gt;Maged: /* Changelogs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
This page aggregates the changelogs that have been posted on the forum for the Bitcoin releases. &lt;br /&gt;
&lt;br /&gt;
=Changelogs=&lt;br /&gt;
&lt;br /&gt;
==0.3.24&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=27187.0 0.3.24 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Bitcoin v0.3.24 is now available for download at&lt;br /&gt;
https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.24/&lt;br /&gt;
&lt;br /&gt;
This is another bug fix release.  We had hoped to have wallet encryption ready for release, but more urgent fixes for existing clients were needed -- most notably block download problems were getting severe.  Wallet encryption is ready for testing at https://github.com/bitcoin/bitcoin/pull/352 for the git-savvy, and hopefully will follow shortly in the next release, v0.4.&lt;br /&gt;
&lt;br /&gt;
Notable fixes in v0.3.24, and the main reasons for this release:&lt;br /&gt;
&lt;br /&gt;
F1) Block downloads were failing or taking unreasonable amounts of time to complete, because the increased size of the block chain was bumping up against some earlier buffer-size DoS limits.&lt;br /&gt;
F2) Fix crash caused by loss/lack of network connection.&lt;br /&gt;
&lt;br /&gt;
Notable changes in v0.3.24:&lt;br /&gt;
&lt;br /&gt;
C1) DNS seeding enabled by default.&lt;br /&gt;
C2) UPNP enabled by default in the GUI client.  The percentage of bitcoin clients that accept incoming connections is quite small, and that is a problem.  This should help.  bitcoind, and unofficial builds, are unchanged (though we encourage use of &amp;quot;-upnp&amp;quot; to help the network!)&lt;br /&gt;
C3) Initial unit testing framework.  Bitcoin sorely needs automated tests, and this is a beginning.  Contributions welcome.&lt;br /&gt;
C4) Internal wallet code cleanup.  While invisible to an end user, this change provides the basis for v0.4&#039;s wallet encryption.&lt;br /&gt;
&lt;br /&gt;
==0.3.23&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=16553.0 0.3.23 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Win32, Linux, MacOSX and source releases for bitcoin v0.3.23 have been uploaded to&lt;br /&gt;
https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.23/&lt;br /&gt;
&lt;br /&gt;
This is another quick bugfix release, trying to deal with the influx of new bitcoin users.&lt;br /&gt;
&lt;br /&gt;
Main items of note:&lt;br /&gt;
&lt;br /&gt;
* P2P connect-to-node logic changed to reduce timeout a bit.  The network saw a huge influx of new users, who do not permit incoming connections.  This change is a short-term hack, to more quickly hunt for useful P2P connections.  Better &amp;quot;leaf node&amp;quot; logic is in the works, but this should let us limp along until then.  One may use -upnp to properly forward ports, and help the network.&lt;br /&gt;
* Transaction fee reduced to 0.0005 for new transactions&lt;br /&gt;
* Client will relay transactions with fees as low as 0.0001 BTC&lt;br /&gt;
&lt;br /&gt;
==0.3.22&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=12269.0 0.3.22 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Download URL: https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.22/&lt;br /&gt;
&lt;br /&gt;
This is largely a bugfix and TX fee schedule release.  We also hope to make 0.3.23 a quick release, to fix problems that the network has seen due to explosive growth in the past week.&lt;br /&gt;
&lt;br /&gt;
Notable changes:&lt;br /&gt;
* Client will accept and relay TX&#039;s with 0.0005 BTC fee schedule (users still pay 0.01 BTC per kb, until next version)&lt;br /&gt;
* Non-standard transactions accepted on testnet&lt;br /&gt;
* Source code tree reorganized (prep for autotools build)&lt;br /&gt;
* Remove &amp;quot;Generate Coins&amp;quot; option from GUI, and remove 4way SSE miner.  Internal reference CPU miner remains available, but users are directed to external miners for best hash production.&lt;br /&gt;
* IRC is overflowing.  Client now bootstraps to channels #bitcoin00 - #bitcoin99&lt;br /&gt;
* DNS names now may be used with -addnode, -connect (requires -dns to enable)&lt;br /&gt;
&lt;br /&gt;
RPC changes:&lt;br /&gt;
* &#039;listtransactions&#039; adds &#039;from&#039; param, for range queries&lt;br /&gt;
* &#039;move&#039; may take account balances negative&lt;br /&gt;
* &#039;settxfee&#039; added, to manually set TX fee&lt;br /&gt;
&lt;br /&gt;
==0.3.21&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/?topic=6642.0 0.3.21 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Binaries for Bitcoin version 0.3.21 are available at:&lt;br /&gt;
  https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.21/&lt;br /&gt;
&lt;br /&gt;
Changes and new features from the 0.3.20 release include:&lt;br /&gt;
&lt;br /&gt;
* Universal Plug and Play support.  Enable automatic opening of a port for incoming connections by running bitcoin or bitcoind with the - -upnp=1 command line switch or using the Options dialog box.&lt;br /&gt;
&lt;br /&gt;
* Support for full-precision bitcoin amounts.  You can now send, and bitcoin will display, bitcoin amounts smaller than 0.01.  However, sending fewer than 0.01 bitcoins still requires a 0.01 bitcoin fee (so you can send 1.0001 bitcoins without a fee, but you will be asked to pay a fee if you try to send 0.0001).&lt;br /&gt;
&lt;br /&gt;
* A new method of finding bitcoin nodes to connect with, via DNS A records. Use the -dnsseed option to enable.&lt;br /&gt;
&lt;br /&gt;
For developers, changes to bitcoin&#039;s remote-procedure-call API:&lt;br /&gt;
&lt;br /&gt;
* New rpc command &amp;quot;sendmany&amp;quot; to send bitcoins to more than one address in a single transaction.&lt;br /&gt;
&lt;br /&gt;
* Several bug fixes, including a serious intermittent bug that would sometimes cause bitcoind to stop accepting rpc requests. &lt;br /&gt;
&lt;br /&gt;
* -logtimestamps option, to add a timestamp to each line in debug.log.&lt;br /&gt;
&lt;br /&gt;
* Immature blocks (newly generated, under 120 confirmations) are now shown in listtransactions.&lt;br /&gt;
&lt;br /&gt;
==0.3.20.2&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=4167.0 0.3.20.2 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
The maxsendbuffer bug (0.3.20.1 clients not being able to download the block chain from other 0.3.20.1 clients) was only going to get&lt;br /&gt;
worse as people upgraded, so I cherry-picked the bug fix and created a minor release yesterday.&lt;br /&gt;
&lt;br /&gt;
The Amazon Machine Images I used to do the builds are available:&lt;br /&gt;
&lt;br /&gt;
  ami-38a05251   Bitcoin-v0.3.20.2 Mingw    (Windows; Administrator password &#039;bitcoin development&#039;)&lt;br /&gt;
  ami-30a05259   Bitcoin_0.3.20.2 Linux32&lt;br /&gt;
  ami-8abc4ee3   Bitcoin_0.3.20.2 Linux64&lt;br /&gt;
&lt;br /&gt;
(mac build will be done soon)&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded version 0.3.20.1, please either add this to your bitcoin.conf file:&lt;br /&gt;
&lt;br /&gt;
  maxsendbuffer=10000&lt;br /&gt;
  maxreceivebuffer=10000&lt;br /&gt;
&lt;br /&gt;
... or download the new version.&lt;br /&gt;
&lt;br /&gt;
==0.3.20.1==&lt;br /&gt;
(No known forum post.)&lt;br /&gt;
&lt;br /&gt;
==0.3.20&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2953.0 0.3.20 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Please checkout the git integration branch from:&lt;br /&gt;
&lt;br /&gt;
https://github.com/bitcoin/bitcoin&lt;br /&gt;
&lt;br /&gt;
... and help test.  The new features that need testing are:&lt;br /&gt;
&lt;br /&gt;
* -nolisten : https://github.com/bitcoin/bitcoin/pull/11&lt;br /&gt;
* -rescan : scan block chain for missing wallet transactions&lt;br /&gt;
* -printtoconsole : https://github.com/bitcoin/bitcoin/pull/37&lt;br /&gt;
* RPC gettransaction details : https://github.com/bitcoin/bitcoin/pull/24&lt;br /&gt;
* listtransactions new features : https://github.com/bitcoin/bitcoin/pull/10&lt;br /&gt;
&lt;br /&gt;
Bug fixes that also need testing:&lt;br /&gt;
&lt;br /&gt;
* -maxconnections= : https://github.com/bitcoin/bitcoin/pull/42&lt;br /&gt;
* RPC listaccounts minconf : https://github.com/bitcoin/bitcoin/pull/27&lt;br /&gt;
* RPC move, add time to output : https://github.com/bitcoin/bitcoin/pull/21&lt;br /&gt;
* ...and several improvements to --help output.&lt;br /&gt;
&lt;br /&gt;
This needs more testing on Windows!  Please drop me a quick private message, email, or IRC message if you are able to do some testing.  If you find bugs, please open an issue at:&lt;br /&gt;
&lt;br /&gt;
https://github.com/bitcoin/bitcoin/issues&lt;br /&gt;
&lt;br /&gt;
==0.3.19&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2228.0 0.3.19 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
There&#039;s more work to do on DoS, but I&#039;m doing a quick build of what I have so far in case it&#039;s needed, before venturing into more complex ideas.  The build for this is version 0.3.19.&lt;br /&gt;
&lt;br /&gt;
- Added some DoS controls&lt;br /&gt;
As Gavin and I have said clearly before, the software is not at all resistant to DoS attack.  This is one improvement, but there are still more ways to attack than I can count.  &lt;br /&gt;
&lt;br /&gt;
I&#039;m leaving the -limitfreerelay part as a switch for now and it&#039;s there if you need it.&lt;br /&gt;
&lt;br /&gt;
- Removed &amp;quot;safe mode&amp;quot; alerts&lt;br /&gt;
&amp;quot;safe mode&amp;quot; alerts was a temporary measure after the 0.3.9 overflow bug.  We can say all we want that users can just run with &amp;quot;-disablesafemode&amp;quot;, but it&#039;s better just not to have it for the sake of appearances.  It was never intended as a long term feature.  Safe mode can still be triggered by seeing a longer (greater total PoW) invalid block chain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==0.3.18&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2162.0 0.3.18 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Fixed a wallet.dat compatibility problem if you downgraded from 0.3.17 and then upgraded again&lt;br /&gt;
* IsStandard() check to only include known transaction types in blocks&lt;br /&gt;
* Jgarzik&#039;s optimisation to speed up the initial block download a little&lt;br /&gt;
&lt;br /&gt;
The main addition in this release is the Accounts-Based JSON-RPC commands that Gavin&#039;s been working on (more details at http://www.bitcoin.org/smf/index.php?topic=1886.0).  &lt;br /&gt;
* getaccountaddress&lt;br /&gt;
* sendfrom&lt;br /&gt;
* move&lt;br /&gt;
* getbalance&lt;br /&gt;
* listtransactions&lt;br /&gt;
&lt;br /&gt;
==0.3.17&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1946.0 0.3.17 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.17 is now available.&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* new getwork, thanks m0mchil&lt;br /&gt;
* added transaction fee setting in UI options menu&lt;br /&gt;
* free transaction limits&lt;br /&gt;
* sendtoaddress returns transaction id instead of &amp;quot;sent&amp;quot;&lt;br /&gt;
* getaccountaddress &amp;lt;account&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The UI transaction fee setting was easy since it was still there from 0.1.5 and all I had to do was re-enable it.&lt;br /&gt;
&lt;br /&gt;
The accounts-based commands: move, sendfrom and getbalance &amp;lt;account&amp;gt; will be in the next release.  We still have some more changes to make first.&lt;br /&gt;
&lt;br /&gt;
==0.3.16==&lt;br /&gt;
&lt;br /&gt;
Never released.&lt;br /&gt;
&lt;br /&gt;
==0.3.15&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1780.0 0.3.15 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
* paytxfee switch is now per KB, so it adds the correct fee for large transactions&lt;br /&gt;
* sending avoids using coins with less than 6 confirmations if it can&lt;br /&gt;
* BitcoinMiner processes transactions in priority order based on age of dependencies&lt;br /&gt;
* make sure generation doesn&#039;t start before block 74000 downloaded&lt;br /&gt;
* bugfixes by Dean Gores&lt;br /&gt;
* testnet, keypoololdest and paytxfee added to getinfo&lt;br /&gt;
&lt;br /&gt;
==0.3.14&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1528.0 0.3.14 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.14 is now available&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.14/&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Key pool feature for safer wallet backup&lt;br /&gt;
Gavin Andresen:&lt;br /&gt;
* TEST network mode with switch -testnet&lt;br /&gt;
* Option to use SSL for JSON-RPC connections on unix/osx&lt;br /&gt;
* validateaddress RPC command&lt;br /&gt;
eurekafag:&lt;br /&gt;
* Russian translation&lt;br /&gt;
&lt;br /&gt;
==0.3.13&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1327.0 0.3.13 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.13 is now available.  You should upgrade to prevent potential problems with 0/unconfirmed transactions.  Note: 0.3.13 prevents problems if you haven&#039;t already spent a 0/unconfirmed transaction, but if that already happened, you need 0.3.13.2.&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Don&#039;t count or spend payments until they have 1 confirmation.&lt;br /&gt;
* Internal version number from 312 to 31300.&lt;br /&gt;
* Only accept transactions sent by IP address if -allowreceivebyip is specified.&lt;br /&gt;
* Dropped DB_PRIVATE Berkeley DB flag.&lt;br /&gt;
* Fix problem sending the last cent with sub-cent fractional change.&lt;br /&gt;
* Auto-detect whether to use 128-bit 4-way SSE2 on Linux.&lt;br /&gt;
Gavin Andresen:&lt;br /&gt;
* Option -rpcallowip= to accept json-rpc connections from another machine.&lt;br /&gt;
* Clean shutdown on SIGTERM on Linux.&lt;br /&gt;
&lt;br /&gt;
Download:&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.13/&lt;br /&gt;
&lt;br /&gt;
(Thanks Laszlo for the Mac OSX build!)&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
The SSE2 auto-detect in the Linux 64-bit version doesn&#039;t work with AMD in 64-bit mode.  Please try this instead and let me know if it gets it right:&lt;br /&gt;
http://www.bitcoin.org/download/bitcoin-0.3.13.1-specialbuild-linux64.tar.gz&lt;br /&gt;
&lt;br /&gt;
You can still control the SSE2 use manually with -4way and -4way=0.&lt;br /&gt;
&lt;br /&gt;
Version 0.3.13.2 (SVN rev 161) has improvements for the case where you already had 0/unconfirmed transactions that you might have already spent.  Here&#039;s a Windows build of it:&lt;br /&gt;
http://www.bitcoin.org/download/bitcoin-0.3.13.2-win32-setup.exe&lt;br /&gt;
&lt;br /&gt;
==0.3.12&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=999.0 0.3.12 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.12 is now available.&lt;br /&gt;
&lt;br /&gt;
Features:&lt;br /&gt;
* json-rpc errors return a more standard error object. (thanks to Gavin Andresen)&lt;br /&gt;
* json-rpc command line returns exit codes.&lt;br /&gt;
* json-rpc &amp;quot;backupwallet&amp;quot; command.&lt;br /&gt;
* Recovers and continues if an exception is caused by a message you received.  Other nodes shouldn&#039;t be able to cause an exception, and it hasn&#039;t happened before, but if a way is found to cause an exception, this would keep it from being used to stop network nodes.&lt;br /&gt;
&lt;br /&gt;
If you have json-rpc code that checks the contents of the error string, you need to change it to expect error objects of the form {&amp;quot;code&amp;quot;:&amp;lt;number&amp;gt;,&amp;quot;message&amp;quot;:&amp;lt;string&amp;gt;}, which is the standard.  See this thread:&lt;br /&gt;
http://www.bitcoin.org/smf/index.php?topic=969.0&lt;br /&gt;
&lt;br /&gt;
Download:&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.12/&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Changelog&amp;diff=10904</id>
		<title>Changelog</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Changelog&amp;diff=10904"/>
		<updated>2011-06-15T19:46:22Z</updated>

		<summary type="html">&lt;p&gt;Maged: 0.3.23&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
This page aggregates the changelogs that have been posted on the forum for the Bitcoin releases. &lt;br /&gt;
&lt;br /&gt;
=Changelogs=&lt;br /&gt;
&lt;br /&gt;
==0.3.23&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=16553.0 0.3.23 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Win32, Linux, MacOSX and source releases for bitcoin v0.3.23 have been uploaded to&lt;br /&gt;
https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.23/&lt;br /&gt;
&lt;br /&gt;
This is another quick bugfix release, trying to deal with the influx of new bitcoin users.&lt;br /&gt;
&lt;br /&gt;
Main items of note:&lt;br /&gt;
&lt;br /&gt;
* P2P connect-to-node logic changed to reduce timeout a bit.  The network saw a huge influx of new users, who do not permit incoming connections.  This change is a short-term hack, to more quickly hunt for useful P2P connections.  Better &amp;quot;leaf node&amp;quot; logic is in the works, but this should let us limp along until then.  One may use -upnp to properly forward ports, and help the network.&lt;br /&gt;
* Transaction fee reduced to 0.0005 for new transactions&lt;br /&gt;
* Client will relay transactions with fees as low as 0.0001 BTC&lt;br /&gt;
&lt;br /&gt;
==0.3.22&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=12269.0 0.3.22 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Download URL: https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.22/&lt;br /&gt;
&lt;br /&gt;
This is largely a bugfix and TX fee schedule release.  We also hope to make 0.3.23 a quick release, to fix problems that the network has seen due to explosive growth in the past week.&lt;br /&gt;
&lt;br /&gt;
Notable changes:&lt;br /&gt;
* Client will accept and relay TX&#039;s with 0.0005 BTC fee schedule (users still pay 0.01 BTC per kb, until next version)&lt;br /&gt;
* Non-standard transactions accepted on testnet&lt;br /&gt;
* Source code tree reorganized (prep for autotools build)&lt;br /&gt;
* Remove &amp;quot;Generate Coins&amp;quot; option from GUI, and remove 4way SSE miner.  Internal reference CPU miner remains available, but users are directed to external miners for best hash production.&lt;br /&gt;
* IRC is overflowing.  Client now bootstraps to channels #bitcoin00 - #bitcoin99&lt;br /&gt;
* DNS names now may be used with -addnode, -connect (requires -dns to enable)&lt;br /&gt;
&lt;br /&gt;
RPC changes:&lt;br /&gt;
* &#039;listtransactions&#039; adds &#039;from&#039; param, for range queries&lt;br /&gt;
* &#039;move&#039; may take account balances negative&lt;br /&gt;
* &#039;settxfee&#039; added, to manually set TX fee&lt;br /&gt;
&lt;br /&gt;
==0.3.21&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/?topic=6642.0 0.3.21 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Binaries for Bitcoin version 0.3.21 are available at:&lt;br /&gt;
  https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.21/&lt;br /&gt;
&lt;br /&gt;
Changes and new features from the 0.3.20 release include:&lt;br /&gt;
&lt;br /&gt;
* Universal Plug and Play support.  Enable automatic opening of a port for incoming connections by running bitcoin or bitcoind with the - -upnp=1 command line switch or using the Options dialog box.&lt;br /&gt;
&lt;br /&gt;
* Support for full-precision bitcoin amounts.  You can now send, and bitcoin will display, bitcoin amounts smaller than 0.01.  However, sending fewer than 0.01 bitcoins still requires a 0.01 bitcoin fee (so you can send 1.0001 bitcoins without a fee, but you will be asked to pay a fee if you try to send 0.0001).&lt;br /&gt;
&lt;br /&gt;
* A new method of finding bitcoin nodes to connect with, via DNS A records. Use the -dnsseed option to enable.&lt;br /&gt;
&lt;br /&gt;
For developers, changes to bitcoin&#039;s remote-procedure-call API:&lt;br /&gt;
&lt;br /&gt;
* New rpc command &amp;quot;sendmany&amp;quot; to send bitcoins to more than one address in a single transaction.&lt;br /&gt;
&lt;br /&gt;
* Several bug fixes, including a serious intermittent bug that would sometimes cause bitcoind to stop accepting rpc requests. &lt;br /&gt;
&lt;br /&gt;
* -logtimestamps option, to add a timestamp to each line in debug.log.&lt;br /&gt;
&lt;br /&gt;
* Immature blocks (newly generated, under 120 confirmations) are now shown in listtransactions.&lt;br /&gt;
&lt;br /&gt;
==0.3.20.2&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=4167.0 0.3.20.2 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
The maxsendbuffer bug (0.3.20.1 clients not being able to download the block chain from other 0.3.20.1 clients) was only going to get&lt;br /&gt;
worse as people upgraded, so I cherry-picked the bug fix and created a minor release yesterday.&lt;br /&gt;
&lt;br /&gt;
The Amazon Machine Images I used to do the builds are available:&lt;br /&gt;
&lt;br /&gt;
  ami-38a05251   Bitcoin-v0.3.20.2 Mingw    (Windows; Administrator password &#039;bitcoin development&#039;)&lt;br /&gt;
  ami-30a05259   Bitcoin_0.3.20.2 Linux32&lt;br /&gt;
  ami-8abc4ee3   Bitcoin_0.3.20.2 Linux64&lt;br /&gt;
&lt;br /&gt;
(mac build will be done soon)&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded version 0.3.20.1, please either add this to your bitcoin.conf file:&lt;br /&gt;
&lt;br /&gt;
  maxsendbuffer=10000&lt;br /&gt;
  maxreceivebuffer=10000&lt;br /&gt;
&lt;br /&gt;
... or download the new version.&lt;br /&gt;
&lt;br /&gt;
==0.3.20.1==&lt;br /&gt;
(No known forum post.)&lt;br /&gt;
&lt;br /&gt;
==0.3.20&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2953.0 0.3.20 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Please checkout the git integration branch from:&lt;br /&gt;
&lt;br /&gt;
https://github.com/bitcoin/bitcoin&lt;br /&gt;
&lt;br /&gt;
... and help test.  The new features that need testing are:&lt;br /&gt;
&lt;br /&gt;
* -nolisten : https://github.com/bitcoin/bitcoin/pull/11&lt;br /&gt;
* -rescan : scan block chain for missing wallet transactions&lt;br /&gt;
* -printtoconsole : https://github.com/bitcoin/bitcoin/pull/37&lt;br /&gt;
* RPC gettransaction details : https://github.com/bitcoin/bitcoin/pull/24&lt;br /&gt;
* listtransactions new features : https://github.com/bitcoin/bitcoin/pull/10&lt;br /&gt;
&lt;br /&gt;
Bug fixes that also need testing:&lt;br /&gt;
&lt;br /&gt;
* -maxconnections= : https://github.com/bitcoin/bitcoin/pull/42&lt;br /&gt;
* RPC listaccounts minconf : https://github.com/bitcoin/bitcoin/pull/27&lt;br /&gt;
* RPC move, add time to output : https://github.com/bitcoin/bitcoin/pull/21&lt;br /&gt;
* ...and several improvements to --help output.&lt;br /&gt;
&lt;br /&gt;
This needs more testing on Windows!  Please drop me a quick private message, email, or IRC message if you are able to do some testing.  If you find bugs, please open an issue at:&lt;br /&gt;
&lt;br /&gt;
https://github.com/bitcoin/bitcoin/issues&lt;br /&gt;
&lt;br /&gt;
==0.3.19&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2228.0 0.3.19 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
There&#039;s more work to do on DoS, but I&#039;m doing a quick build of what I have so far in case it&#039;s needed, before venturing into more complex ideas.  The build for this is version 0.3.19.&lt;br /&gt;
&lt;br /&gt;
- Added some DoS controls&lt;br /&gt;
As Gavin and I have said clearly before, the software is not at all resistant to DoS attack.  This is one improvement, but there are still more ways to attack than I can count.  &lt;br /&gt;
&lt;br /&gt;
I&#039;m leaving the -limitfreerelay part as a switch for now and it&#039;s there if you need it.&lt;br /&gt;
&lt;br /&gt;
- Removed &amp;quot;safe mode&amp;quot; alerts&lt;br /&gt;
&amp;quot;safe mode&amp;quot; alerts was a temporary measure after the 0.3.9 overflow bug.  We can say all we want that users can just run with &amp;quot;-disablesafemode&amp;quot;, but it&#039;s better just not to have it for the sake of appearances.  It was never intended as a long term feature.  Safe mode can still be triggered by seeing a longer (greater total PoW) invalid block chain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==0.3.18&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2162.0 0.3.18 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Fixed a wallet.dat compatibility problem if you downgraded from 0.3.17 and then upgraded again&lt;br /&gt;
* IsStandard() check to only include known transaction types in blocks&lt;br /&gt;
* Jgarzik&#039;s optimisation to speed up the initial block download a little&lt;br /&gt;
&lt;br /&gt;
The main addition in this release is the Accounts-Based JSON-RPC commands that Gavin&#039;s been working on (more details at http://www.bitcoin.org/smf/index.php?topic=1886.0).  &lt;br /&gt;
* getaccountaddress&lt;br /&gt;
* sendfrom&lt;br /&gt;
* move&lt;br /&gt;
* getbalance&lt;br /&gt;
* listtransactions&lt;br /&gt;
&lt;br /&gt;
==0.3.17&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1946.0 0.3.17 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.17 is now available.&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* new getwork, thanks m0mchil&lt;br /&gt;
* added transaction fee setting in UI options menu&lt;br /&gt;
* free transaction limits&lt;br /&gt;
* sendtoaddress returns transaction id instead of &amp;quot;sent&amp;quot;&lt;br /&gt;
* getaccountaddress &amp;lt;account&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The UI transaction fee setting was easy since it was still there from 0.1.5 and all I had to do was re-enable it.&lt;br /&gt;
&lt;br /&gt;
The accounts-based commands: move, sendfrom and getbalance &amp;lt;account&amp;gt; will be in the next release.  We still have some more changes to make first.&lt;br /&gt;
&lt;br /&gt;
==0.3.16==&lt;br /&gt;
&lt;br /&gt;
Never released.&lt;br /&gt;
&lt;br /&gt;
==0.3.15&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1780.0 0.3.15 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
* paytxfee switch is now per KB, so it adds the correct fee for large transactions&lt;br /&gt;
* sending avoids using coins with less than 6 confirmations if it can&lt;br /&gt;
* BitcoinMiner processes transactions in priority order based on age of dependencies&lt;br /&gt;
* make sure generation doesn&#039;t start before block 74000 downloaded&lt;br /&gt;
* bugfixes by Dean Gores&lt;br /&gt;
* testnet, keypoololdest and paytxfee added to getinfo&lt;br /&gt;
&lt;br /&gt;
==0.3.14&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1528.0 0.3.14 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.14 is now available&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.14/&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Key pool feature for safer wallet backup&lt;br /&gt;
Gavin Andresen:&lt;br /&gt;
* TEST network mode with switch -testnet&lt;br /&gt;
* Option to use SSL for JSON-RPC connections on unix/osx&lt;br /&gt;
* validateaddress RPC command&lt;br /&gt;
eurekafag:&lt;br /&gt;
* Russian translation&lt;br /&gt;
&lt;br /&gt;
==0.3.13&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1327.0 0.3.13 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.13 is now available.  You should upgrade to prevent potential problems with 0/unconfirmed transactions.  Note: 0.3.13 prevents problems if you haven&#039;t already spent a 0/unconfirmed transaction, but if that already happened, you need 0.3.13.2.&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Don&#039;t count or spend payments until they have 1 confirmation.&lt;br /&gt;
* Internal version number from 312 to 31300.&lt;br /&gt;
* Only accept transactions sent by IP address if -allowreceivebyip is specified.&lt;br /&gt;
* Dropped DB_PRIVATE Berkeley DB flag.&lt;br /&gt;
* Fix problem sending the last cent with sub-cent fractional change.&lt;br /&gt;
* Auto-detect whether to use 128-bit 4-way SSE2 on Linux.&lt;br /&gt;
Gavin Andresen:&lt;br /&gt;
* Option -rpcallowip= to accept json-rpc connections from another machine.&lt;br /&gt;
* Clean shutdown on SIGTERM on Linux.&lt;br /&gt;
&lt;br /&gt;
Download:&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.13/&lt;br /&gt;
&lt;br /&gt;
(Thanks Laszlo for the Mac OSX build!)&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
The SSE2 auto-detect in the Linux 64-bit version doesn&#039;t work with AMD in 64-bit mode.  Please try this instead and let me know if it gets it right:&lt;br /&gt;
http://www.bitcoin.org/download/bitcoin-0.3.13.1-specialbuild-linux64.tar.gz&lt;br /&gt;
&lt;br /&gt;
You can still control the SSE2 use manually with -4way and -4way=0.&lt;br /&gt;
&lt;br /&gt;
Version 0.3.13.2 (SVN rev 161) has improvements for the case where you already had 0/unconfirmed transactions that you might have already spent.  Here&#039;s a Windows build of it:&lt;br /&gt;
http://www.bitcoin.org/download/bitcoin-0.3.13.2-win32-setup.exe&lt;br /&gt;
&lt;br /&gt;
==0.3.12&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=999.0 0.3.12 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.12 is now available.&lt;br /&gt;
&lt;br /&gt;
Features:&lt;br /&gt;
* json-rpc errors return a more standard error object. (thanks to Gavin Andresen)&lt;br /&gt;
* json-rpc command line returns exit codes.&lt;br /&gt;
* json-rpc &amp;quot;backupwallet&amp;quot; command.&lt;br /&gt;
* Recovers and continues if an exception is caused by a message you received.  Other nodes shouldn&#039;t be able to cause an exception, and it hasn&#039;t happened before, but if a way is found to cause an exception, this would keep it from being used to stop network nodes.&lt;br /&gt;
&lt;br /&gt;
If you have json-rpc code that checks the contents of the error string, you need to change it to expect error objects of the form {&amp;quot;code&amp;quot;:&amp;lt;number&amp;gt;,&amp;quot;message&amp;quot;:&amp;lt;string&amp;gt;}, which is the standard.  See this thread:&lt;br /&gt;
http://www.bitcoin.org/smf/index.php?topic=969.0&lt;br /&gt;
&lt;br /&gt;
Download:&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.12/&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Changelog&amp;diff=10217</id>
		<title>Changelog</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Changelog&amp;diff=10217"/>
		<updated>2011-06-09T21:02:21Z</updated>

		<summary type="html">&lt;p&gt;Maged: Added 0.3.22&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
This page aggregates the changelogs that have been posted on the forum for the Bitcoin releases. &lt;br /&gt;
&lt;br /&gt;
=Changelogs=&lt;br /&gt;
&lt;br /&gt;
==0.3.22&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=12269.0.0 0.3.22 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Download URL: https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.22/&lt;br /&gt;
&lt;br /&gt;
This is largely a bugfix and TX fee schedule release.  We also hope to make 0.3.23 a quick release, to fix problems that the network has seen due to explosive growth in the past week.&lt;br /&gt;
&lt;br /&gt;
Notable changes:&lt;br /&gt;
* Client will accept and relay TX&#039;s with 0.0005 BTC fee schedule (users still pay 0.01 BTC per kb, until next version)&lt;br /&gt;
* Non-standard transactions accepted on testnet&lt;br /&gt;
* Source code tree reorganized (prep for autotools build)&lt;br /&gt;
* Remove &amp;quot;Generate Coins&amp;quot; option from GUI, and remove 4way SSE miner.  Internal reference CPU miner remains available, but users are directed to external miners for best hash production.&lt;br /&gt;
* IRC is overflowing.  Client now bootstraps to channels #bitcoin00 - #bitcoin99&lt;br /&gt;
* DNS names now may be used with -addnode, -connect (requires -dns to enable)&lt;br /&gt;
&lt;br /&gt;
RPC changes:&lt;br /&gt;
* &#039;listtransactions&#039; adds &#039;from&#039; param, for range queries&lt;br /&gt;
* &#039;move&#039; may take account balances negative&lt;br /&gt;
* &#039;settxfee&#039; added, to manually set TX fee&lt;br /&gt;
&lt;br /&gt;
==0.3.21&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/?topic=6642.0 0.3.21 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Binaries for Bitcoin version 0.3.21 are available at:&lt;br /&gt;
  https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.21/&lt;br /&gt;
&lt;br /&gt;
Changes and new features from the 0.3.20 release include:&lt;br /&gt;
&lt;br /&gt;
* Universal Plug and Play support.  Enable automatic opening of a port for incoming connections by running bitcoin or bitcoind with the - -upnp=1 command line switch or using the Options dialog box.&lt;br /&gt;
&lt;br /&gt;
* Support for full-precision bitcoin amounts.  You can now send, and bitcoin will display, bitcoin amounts smaller than 0.01.  However, sending fewer than 0.01 bitcoins still requires a 0.01 bitcoin fee (so you can send 1.0001 bitcoins without a fee, but you will be asked to pay a fee if you try to send 0.0001).&lt;br /&gt;
&lt;br /&gt;
* A new method of finding bitcoin nodes to connect with, via DNS A records. Use the -dnsseed option to enable.&lt;br /&gt;
&lt;br /&gt;
For developers, changes to bitcoin&#039;s remote-procedure-call API:&lt;br /&gt;
&lt;br /&gt;
* New rpc command &amp;quot;sendmany&amp;quot; to send bitcoins to more than one address in a single transaction.&lt;br /&gt;
&lt;br /&gt;
* Several bug fixes, including a serious intermittent bug that would sometimes cause bitcoind to stop accepting rpc requests. &lt;br /&gt;
&lt;br /&gt;
* -logtimestamps option, to add a timestamp to each line in debug.log.&lt;br /&gt;
&lt;br /&gt;
* Immature blocks (newly generated, under 120 confirmations) are now shown in listtransactions.&lt;br /&gt;
&lt;br /&gt;
==0.3.20.2&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=4167.0 0.3.20.2 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
The maxsendbuffer bug (0.3.20.1 clients not being able to download the block chain from other 0.3.20.1 clients) was only going to get&lt;br /&gt;
worse as people upgraded, so I cherry-picked the bug fix and created a minor release yesterday.&lt;br /&gt;
&lt;br /&gt;
The Amazon Machine Images I used to do the builds are available:&lt;br /&gt;
&lt;br /&gt;
  ami-38a05251   Bitcoin-v0.3.20.2 Mingw    (Windows; Administrator password &#039;bitcoin development&#039;)&lt;br /&gt;
  ami-30a05259   Bitcoin_0.3.20.2 Linux32&lt;br /&gt;
  ami-8abc4ee3   Bitcoin_0.3.20.2 Linux64&lt;br /&gt;
&lt;br /&gt;
(mac build will be done soon)&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded version 0.3.20.1, please either add this to your bitcoin.conf file:&lt;br /&gt;
&lt;br /&gt;
  maxsendbuffer=10000&lt;br /&gt;
  maxreceivebuffer=10000&lt;br /&gt;
&lt;br /&gt;
... or download the new version.&lt;br /&gt;
&lt;br /&gt;
==0.3.20.1==&lt;br /&gt;
(No known forum post.)&lt;br /&gt;
&lt;br /&gt;
==0.3.20&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2953.0 0.3.20 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
Please checkout the git integration branch from:&lt;br /&gt;
&lt;br /&gt;
https://github.com/bitcoin/bitcoin&lt;br /&gt;
&lt;br /&gt;
... and help test.  The new features that need testing are:&lt;br /&gt;
&lt;br /&gt;
* -nolisten : https://github.com/bitcoin/bitcoin/pull/11&lt;br /&gt;
* -rescan : scan block chain for missing wallet transactions&lt;br /&gt;
* -printtoconsole : https://github.com/bitcoin/bitcoin/pull/37&lt;br /&gt;
* RPC gettransaction details : https://github.com/bitcoin/bitcoin/pull/24&lt;br /&gt;
* listtransactions new features : https://github.com/bitcoin/bitcoin/pull/10&lt;br /&gt;
&lt;br /&gt;
Bug fixes that also need testing:&lt;br /&gt;
&lt;br /&gt;
* -maxconnections= : https://github.com/bitcoin/bitcoin/pull/42&lt;br /&gt;
* RPC listaccounts minconf : https://github.com/bitcoin/bitcoin/pull/27&lt;br /&gt;
* RPC move, add time to output : https://github.com/bitcoin/bitcoin/pull/21&lt;br /&gt;
* ...and several improvements to --help output.&lt;br /&gt;
&lt;br /&gt;
This needs more testing on Windows!  Please drop me a quick private message, email, or IRC message if you are able to do some testing.  If you find bugs, please open an issue at:&lt;br /&gt;
&lt;br /&gt;
https://github.com/bitcoin/bitcoin/issues&lt;br /&gt;
&lt;br /&gt;
==0.3.19&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2228.0 0.3.19 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
There&#039;s more work to do on DoS, but I&#039;m doing a quick build of what I have so far in case it&#039;s needed, before venturing into more complex ideas.  The build for this is version 0.3.19.&lt;br /&gt;
&lt;br /&gt;
- Added some DoS controls&lt;br /&gt;
As Gavin and I have said clearly before, the software is not at all resistant to DoS attack.  This is one improvement, but there are still more ways to attack than I can count.  &lt;br /&gt;
&lt;br /&gt;
I&#039;m leaving the -limitfreerelay part as a switch for now and it&#039;s there if you need it.&lt;br /&gt;
&lt;br /&gt;
- Removed &amp;quot;safe mode&amp;quot; alerts&lt;br /&gt;
&amp;quot;safe mode&amp;quot; alerts was a temporary measure after the 0.3.9 overflow bug.  We can say all we want that users can just run with &amp;quot;-disablesafemode&amp;quot;, but it&#039;s better just not to have it for the sake of appearances.  It was never intended as a long term feature.  Safe mode can still be triggered by seeing a longer (greater total PoW) invalid block chain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==0.3.18&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=2162.0 0.3.18 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Fixed a wallet.dat compatibility problem if you downgraded from 0.3.17 and then upgraded again&lt;br /&gt;
* IsStandard() check to only include known transaction types in blocks&lt;br /&gt;
* Jgarzik&#039;s optimisation to speed up the initial block download a little&lt;br /&gt;
&lt;br /&gt;
The main addition in this release is the Accounts-Based JSON-RPC commands that Gavin&#039;s been working on (more details at http://www.bitcoin.org/smf/index.php?topic=1886.0).  &lt;br /&gt;
* getaccountaddress&lt;br /&gt;
* sendfrom&lt;br /&gt;
* move&lt;br /&gt;
* getbalance&lt;br /&gt;
* listtransactions&lt;br /&gt;
&lt;br /&gt;
==0.3.17&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1946.0 0.3.17 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.17 is now available.&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* new getwork, thanks m0mchil&lt;br /&gt;
* added transaction fee setting in UI options menu&lt;br /&gt;
* free transaction limits&lt;br /&gt;
* sendtoaddress returns transaction id instead of &amp;quot;sent&amp;quot;&lt;br /&gt;
* getaccountaddress &amp;lt;account&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The UI transaction fee setting was easy since it was still there from 0.1.5 and all I had to do was re-enable it.&lt;br /&gt;
&lt;br /&gt;
The accounts-based commands: move, sendfrom and getbalance &amp;lt;account&amp;gt; will be in the next release.  We still have some more changes to make first.&lt;br /&gt;
&lt;br /&gt;
==0.3.16==&lt;br /&gt;
&lt;br /&gt;
Never released.&lt;br /&gt;
&lt;br /&gt;
==0.3.15&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1780.0 0.3.15 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
* paytxfee switch is now per KB, so it adds the correct fee for large transactions&lt;br /&gt;
* sending avoids using coins with less than 6 confirmations if it can&lt;br /&gt;
* BitcoinMiner processes transactions in priority order based on age of dependencies&lt;br /&gt;
* make sure generation doesn&#039;t start before block 74000 downloaded&lt;br /&gt;
* bugfixes by Dean Gores&lt;br /&gt;
* testnet, keypoololdest and paytxfee added to getinfo&lt;br /&gt;
&lt;br /&gt;
==0.3.14&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1528.0 0.3.14 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.14 is now available&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.14/&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Key pool feature for safer wallet backup&lt;br /&gt;
Gavin Andresen:&lt;br /&gt;
* TEST network mode with switch -testnet&lt;br /&gt;
* Option to use SSL for JSON-RPC connections on unix/osx&lt;br /&gt;
* validateaddress RPC command&lt;br /&gt;
eurekafag:&lt;br /&gt;
* Russian translation&lt;br /&gt;
&lt;br /&gt;
==0.3.13&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=1327.0 0.3.13 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.13 is now available.  You should upgrade to prevent potential problems with 0/unconfirmed transactions.  Note: 0.3.13 prevents problems if you haven&#039;t already spent a 0/unconfirmed transaction, but if that already happened, you need 0.3.13.2.&lt;br /&gt;
&lt;br /&gt;
Changes:&lt;br /&gt;
* Don&#039;t count or spend payments until they have 1 confirmation.&lt;br /&gt;
* Internal version number from 312 to 31300.&lt;br /&gt;
* Only accept transactions sent by IP address if -allowreceivebyip is specified.&lt;br /&gt;
* Dropped DB_PRIVATE Berkeley DB flag.&lt;br /&gt;
* Fix problem sending the last cent with sub-cent fractional change.&lt;br /&gt;
* Auto-detect whether to use 128-bit 4-way SSE2 on Linux.&lt;br /&gt;
Gavin Andresen:&lt;br /&gt;
* Option -rpcallowip= to accept json-rpc connections from another machine.&lt;br /&gt;
* Clean shutdown on SIGTERM on Linux.&lt;br /&gt;
&lt;br /&gt;
Download:&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.13/&lt;br /&gt;
&lt;br /&gt;
(Thanks Laszlo for the Mac OSX build!)&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
The SSE2 auto-detect in the Linux 64-bit version doesn&#039;t work with AMD in 64-bit mode.  Please try this instead and let me know if it gets it right:&lt;br /&gt;
http://www.bitcoin.org/download/bitcoin-0.3.13.1-specialbuild-linux64.tar.gz&lt;br /&gt;
&lt;br /&gt;
You can still control the SSE2 use manually with -4way and -4way=0.&lt;br /&gt;
&lt;br /&gt;
Version 0.3.13.2 (SVN rev 161) has improvements for the case where you already had 0/unconfirmed transactions that you might have already spent.  Here&#039;s a Windows build of it:&lt;br /&gt;
http://www.bitcoin.org/download/bitcoin-0.3.13.2-win32-setup.exe&lt;br /&gt;
&lt;br /&gt;
==0.3.12&amp;lt;ref&amp;gt;[http://forum.bitcoin.org?topic=999.0 0.3.12 release announcement]&amp;lt;/ref&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Version 0.3.12 is now available.&lt;br /&gt;
&lt;br /&gt;
Features:&lt;br /&gt;
* json-rpc errors return a more standard error object. (thanks to Gavin Andresen)&lt;br /&gt;
* json-rpc command line returns exit codes.&lt;br /&gt;
* json-rpc &amp;quot;backupwallet&amp;quot; command.&lt;br /&gt;
* Recovers and continues if an exception is caused by a message you received.  Other nodes shouldn&#039;t be able to cause an exception, and it hasn&#039;t happened before, but if a way is found to cause an exception, this would keep it from being used to stop network nodes.&lt;br /&gt;
&lt;br /&gt;
If you have json-rpc code that checks the contents of the error string, you need to change it to expect error objects of the form {&amp;quot;code&amp;quot;:&amp;lt;number&amp;gt;,&amp;quot;message&amp;quot;:&amp;lt;string&amp;gt;}, which is the standard.  See this thread:&lt;br /&gt;
http://www.bitcoin.org/smf/index.php?topic=969.0&lt;br /&gt;
&lt;br /&gt;
Download:&lt;br /&gt;
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.12/&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Maged</name></author>
	</entry>
</feed>