Bitcoin Core Wallet (Bitcoin-wallet) – a modern implementation of the first wallet in the history of cryptocurrencies. In this article we will take a closer look at this software, analyze its pros and cons, and also get acquainted with its main functions.
Since its inception, much has changed. Other programs appeared on the basis of which you can work with Bitcoin. But Bitcoin Core remains one of the most famous and widespread cryptocurrency wallets in the world. How comfortable it is than good. We are considering today how it is developing and whether it can compete with newer solutions.
Now, probably, there are no more people who do not know what Bitcoin is. Many want to become the owners of the most famous cryptocurrency. Therefore, they are looking for options how to make it online in a variety of ways. But for this you need to decide for yourself where the digital coins will be stored. The market offers a lot of different options for cryptocurrency wallets, but Bitcoin Core is considered the most reliable by right.
Bitcoin Core – is the official open source software. Combining the functions of a bitcoin wallet and a full node with which network participants can maintain its performance.
The first version of the application was developed in 2009 by Satoshi Nakamoto and bore the same name as the main product – Bitcoin. Until 2011, the wallet code was published on the most popular at that time portal for developers SourceForge. Then the “move” to GitHub took place, where all the development results to date are posted.
Since 2012, the non-profit organization Bitcoin Foundation has been supporting the development of all software based on the original Bitcoin code. On her initiative, in December 2013, the wallet was renamed Bitcoin Core, by which it is known until today.
In October 2016, this wallet became one of the first applications in which it was possible to send transactions based on SegWit technology still being tested at that time, aimed at improving the scalability and bandwidth of the Bitcoin network. And in versions released after February 2018, support for Segregated Witness is already enabled by default.
At the moment, Bitcoin Core is one of the few non-stop developing cryptocurrency wallets that support exclusively Bitcoin. Available only in the desktop version for computers running Windows, MacOS or Linux. It belongs to the category of “thick” bitcoin wallets and is its most popular representative.
Pros and Cons of Bitcoin Core
The Bitcoin Core cryptocurrency wallet is positioned as the official Bitcoin client. Most experts consider it the most reliable way to store earned crypto coins.
Its main advantages include:
- High level of security. Losing money is only possible if the key is transferred to third parties or the virus enters the computer.
- Storage of access keys directly on the user’s PC – there is no transfer of them to third-party servers.
Pros of Bitcoin Core:
- To access the basic functions do not need a complicated setup.
- The ability to use the wallet on computers running on all major operating systems (Linux, Windows, MacOS).
- On the official service, first of all, all updates are implemented.
- There is a possibility of “cold” storage of currency (offline). That allows you to guarantee complete protection against hacker attacks and other hostile actions. But for such amenities you have to pay.
The disadvantages, in fact, are a consequence of the above advantages:
- In order not to contact third-party servers for information, you need to download the entire blockchain to your computer. To do this, you will have to prepare about 150-200 GB of memory on the hard drive.
- Synchronization of the installed blockchain with the network can take about a day or more. At the same time, you can speed up the Bitcoin Core download process only by connecting to high-speed Internet.
- For any transaction you will have to use your desktop computer, the mobile version is excluded.
Installing and getting started with Bitcoin Core
First of all, you need to download the latest version of the application, suitable for the operating system installed on the user’s computer. Then you need to install the downloaded software in any convenient place (by default – C: / Program Files / Bitcoin).
When you first start the application, you will need to specify the path to store the blockchain and the file with the user’s wallet. This can be either the default folder or any other. A prerequisite for this is the location in the hard disk partition with at least 250-300 GB of free space (at the time of writing this material). We recommend that you allocate a separate hard drive with a memory of about 500 GB for this.
It is recommended that in addition to the current blockchain size indicated in the application window, at least another 20-30 backup gigabytes of space be present. This is necessary to ensure the smooth operation of Bitcoin Core in the near future, since the weight of the network is steadily increasing (by approximately 150 MB each day).
After that, the synchronization of the wallet client with the network will automatically begin. As a rule, this process takes at least several days. It all depends on the speed of the Internet connection, the workload of the computer with various tasks and the time it spent online. Ideally, after the first launch of Bitcoin Core, leave the PC turned on until the synchronization is complete. If, instead, you actively use the computer and periodically disconnect it from the network, the download of the blockchain can last for a week, or even more.
In case it is impossible to avoid disconnecting the PC from the network, it is important to give the program the opportunity to complete work with already downloaded files in order to avoid errors, because of which it may be necessary to start the whole process from the very beginning.
During synchronization, the percentage of progress, the date of the last downloaded block and the estimated time to complete completion will be displayed in the application window. There you can see a warning that due to the incomplete download of transaction history, the wallet balance may not be displayed correctly. For the same reason, you cannot send coins received in a time period whose synchronization has not yet taken place.
After the download is complete, you can start using Bitcoin Core as a Bitcoin wallet and / or node, after making the necessary settings.
Configure Bitcoin Core
All Bitcoin Core parameters available for change are located in the Settings / Options menu:
- The main ones – on this tab you can configure the application to start automatically at system startup, change the default database cache, and also use the function to reduce the stored blockchain to a few gigabytes (after complete synchronization, only the last 551 blocks are needed in fact for the wallet to work).
- Wallet – there are only two options here, which enable the management of coins and the use of inputs that are not yet confirmed in outgoing transactions.
- Network – for the normal functioning of the application as a node and synchronization with the network, this section must have a tick in the line “Allow incoming connections”. The remaining settings are optional and can be used in case of problems with access to the Bitcoin blockchain or to increase privacy.
- Window – here you can configure the rules for minimizing the application and displaying it in the system tray.
- Display – in this tab, you can change the localization of the application through the drop-down menu “User Interface Language”. In the line “Display amounts in units” it is possible to set the display of the balance and transaction details in one of the options: BTC (bitcoin), mBTC (millbitcoin), µBTC (microbitcoin) or satoshi (satoshi). There is also a field for specifying a third-party explorer so that in the description of transactions in the wallet links are displayed for viewing them through the browser.
Everything listed settings and various additional commands for Bitcoin Core can be produced through the console, which runs the same name. item from the Window menu. This tool is usually used advanced users and developers. Full list of available commands can be viewed through the Help / Command Line Options menu.
Using Bitcoin Core as a Wallet
When you start Bitcoin Core by default, the “Overview” tab always opens, in which you can see the wallet balance (available, in pending transfers and general), as well as a list of recent transactions for sending or receiving funds by the user. A more detailed list of transactions involving the current wallet is available on the “Transactions” tab.
Before you start working with your wallet, it is recommended that you first encrypt it with a strong password. This is done through the menu “Settings / Encrypt wallet”. In this case, it is advisable to pay attention to the warning of the program that if the user forgets the password, then he will forever lose his bitcoins. This combination will need to be entered every time you unlock your wallet and send transactions. Therefore, it is important to keep it in a safe place.
If necessary, the password can be changed through the corresponding item in the “Settings” menu. The remaining stages of interaction with the wallet will be considered in more detail.
Create addresses and receive payments
To create a new BTC address (public key) in Bitcoin Core, you need to use the “Receive” function. In the window that opens, you can specify a name for the new wallet (the “Label” field) so that it is easier to distinguish it from others. It will be visible only to the current user within the application. In the “Quantity” field, you can specify the amount if the address is created to request from someone a payment of a specific size.
Also, in the form of generating a new wallet, there is an option “Create a native segwit (bench32) address”. If you tick it, the new address can be used in transactions based on SegWit technology. This means that they will be faster and with a cheaper commission compared to using older legacy and p2sh standards.
In the “Message” field you can enter a message for the person to whom the request for payment will be sent. All listed parameters are optional, i.e. using them is optional. The button “Request payment” can be pressed, both with the filled fields, and without them.
After that, a window with a QR code opens, in which the address of the created wallet will be encrypted. If the number of coins was indicated before, when decrypting the QR code, the amount of sending on the side of the potential sender will automatically be set to the number indicated by the recipient.
Also, the new address and related data will be displayed under the QR code in text format and in the form of a URI – a hyperlink that can be opened on other computers with the Bitcoin Core client installed via the File / Open URI … menu.
After creation, all new wallets fall into the “History of payment requests”, where they can be viewed and, if necessary, deleted. But as soon as a translation is received on any of them, it will immediately disappear from this list. This is done for security, so that Bitcoin Core users use new addresses every time they receive payments. True, you can still view and reuse such wallets through the menu “Window / Addresses for receiving”.
Sending Transactions Via Bitcoin Core
To use the function of sending payments, you need to go to the “Send” tab and fill out the form displayed. The line “Pay” indicates the address of the recipient of the transfer. You can insert it manually or select from a list of previously used ones. The label field is filled with an arbitrary designation, under which the recipient’s address will be added to the above list (available for viewing through the menu “Window / Addresses for Departures”).
In the field “Quantity” the amount of transfer is entered. Next to it there is an option “Subtract commission from the amount.” If you check this box, transaction fees will be deducted from the number of coins sent. Therefore, the recipient will reach a slightly reduced amount. So that the commission does not affect the transferred number of bitcoins, it is not worth ticking. If you click the “Use Available Balance” button, the payment amount will be automatically set according to the number of available coins in the wallet.
The next section in the form of preparing an outgoing transaction is devoted to setting up a commission. Here you can use the option “Recommended value”. In this case, the size of the commission will be automatically set to the value calculated by the system depending on the current network load and the expected confirmation time (selected in the appropriate drop-down menu).
You can also set the commission per kilobyte of transaction data through the “Custom value” line. At the same time, it is worth paying attention to the fact that setting too low a commission may lead to the inability to successfully confirm the transaction.
The next option, called “Enable Replace-by-fee”, is used to provide the possibility of increasing the commission and speeding up the transaction if it hangs in the mempool.
Also at this stage, you can use the “Add Recipient” button to increase the number of outgoing payment recipients. The fields that appeared in this case are filled in similarly to the steps described above.
On this, the design of the outgoing transaction can be considered completed. It remains only to click “Send” and confirm your intention with the password that encrypted the wallet.
Wallet backup and private key retrieval
You can create a backup copy of your wallet in Bitcoin Core using the function of the same name from the File menu. In this case, the application will ask you to specify the path to save it.
You can also open the Wallets folder located in the directory that the user selected to store the blockchain through any file explorer. There will be located the automatically generated file “wallet.dat”, copying of which will lead to a backup of the wallet, no different from that obtained through the program menu.
It is recommended that you back up as often as possible, preferably after each operation to receive funds and / or create a new BTC address, choosing a reliable medium for storage of the received file, preferably disconnected from the network. Only in this case will it be possible to regain access to your balance after reinstalling the Bitcoin Core application or launching it on another computer. To restore, you will need to place the backup file in the Wallets folder, agreeing to replace the existing one.
Private Key Retrieval
If you use an outdated copy of the wallet, access to all coins received after its creation will be lost. If the user does not have the wallet.dat backup file saved, access to funds will not be restored at all.
When a user needs a private key from any of the addresses created in Bitcoin Core, for example, to import a wallet into another application, you can view it using the “dumpprivkey …” command, which is entered into the console mentioned above. In this case, instead of the “three points”, a BTC address is entered, from which it is necessary to obtain a private key.
For the command to work, you first need to unlock by specifying the password using the command “walletpassphrase pass time” (instead of pass, enter the password, instead of time – the period for which unlock wallet).
Bitcoin Core Cold Storage
To organize a “cold” storage of bitcoins through this application, you need to perform just a few simple steps:
- In a fully synchronized wallet, on the “Get” tab, you need to create the necessary number of new addresses and write / print their addresses on paper.
- Make several backup copies of the wallet.dat file on different media disconnected from the network.
- Delete the original file from the PC with the wallet installed;
- Transfer bitcoins to printed addresses.
As a result, the coins will end up on BTC addresses, whose private keys have never been used to access them. As long as this condition persists, we will talk about the “cold” storage of bitcoins. To access these coins, you need to copy the backup wallet.dat to the appropriate folder on the computer with Bitcoin Core installed.
Using Bitcoin Core to Run a Full Bitcoin Node
The main task of a full node is to validate blocks with transactions and then relay them to other nodes. Thus, each running and fully synchronized Bitcoin Core client helps to maintain the network’s operability, and its local storage contains an updated copy of the entire Bitcoin blockchain with a complete transaction history.
All that is needed to launch the full Bitcoin node is to install the Bitcoin Core application and wait for the entire blockchain to load (described in detail in the section on getting started with the wallet). You also need to make sure that incoming connections are allowed in the network options of the wallet and that TCP port 8333 is open (in the settings of the router and firewall).
For the full operation of the full node, the computer on which it is installed must be online for at least 6 hours daily. All processes in this case are performed by the program independently and do not require any user participation.
Currently, managing a full node has nothing to do with bitcoin mining. Previously, this feature was present in Bitcoin Core, but due to low mining efficiency it was removed from all versions of the application, starting in August 2016. Therefore, all full nodes on Bitcoin Core are now launched exclusively on a volunteer basis (without receiving remuneration) to maintain the network.
Of the 9300 currently active nodes, about 9 thousand are on Bitcoin Core. The remaining 300 are launched through alternative applications like Armory, mSIGNA and Bitcoin Knots.
Recommended Related Articles:
- Electrum Wallet – Bitcoin wallet: review, installation, download.
- Jaxx – multicurrency cryptocurrency wallet (BTC, ETH, ETC, ZEC, DASH, LTC, etc.): Overview, installation, download.
- Exodus wallet – Cryptocurrency wallet: Install, configure, review, download.
- Github законсервирует исходный код Bitcoin Core среди арктических льдов
- MultiBit HD Wallet – Bitcoin wallet Windows/Linux/MacOS
- Ripple XRP Wallet – Desktop Full Node Wallet for Windows/Linux/MacOS
- BitcoinSV (BSV) & ElectrumSV wallet for Windows & Linux
- Emerald Wallet: Ethereum (ETH/ETC/ERC-20) Windows
This post is also available in: Русский