Always backup before updating. With wallet open, File - Backup Wallet


Upgrades from 1.0.1/1.0.2 to 1.0.3 can just run installer or replace the binaries. 


Below are guide to upgrade from v1.0.0 to v1.0.3


RUSSIAN Обновление BC 1.0.0 до 1.0.1.pdf 


The following guide covers the preparation and migration process for moving from BC 1.0.0 based nonmnemonic wallet, to BC 1.0.3 Mnemonic based wallet.


This guide covers three broad phases that apply to all configurations in moving from 1.0.0 to 1.0.3 mnemonic based wallets.


  1. On your existing 1.0.0 wallet, backup, consolidation and deactivation of staking 
  2. Creation of 1.0.3 mnemonic wallet and preparation for migration 
  3. Migration from 1.0.0 to 1.0.3 mnemonic based wallet. 


This guide does not cover the steps for reactivating staking, as staking activation and setup is covered in other guides.


Note : At any point if you make the wrong move regarding your wallet.dat files, you can use a copy of your wallet backups to get you back on track.


This is why throughout this guide wallet backups are suggested and also indicate the wallet version in the naming of the backup, so that you can use the appropriate version for whichever step you may have got stuck on, this also means you could start over again if needed.


It is also suggested that you read the guide fully, before following the steps, so that you have an understanding of the steps in order to prevent getting stuck or skipping a step that may be interdependent.


Phase 1 Wallet 1.0.0 Backup, deactivation of staking and consolidation of funds. 


Step 1 Backup 


Make sure you have made a secure backup of your current 1.0.0 wallet, you can do this by clicking on File

Menu > Backup Wallet, make sure you save it to a secure location and give it a name that allows you to identify the version of the wallet, for example “BC100Wallet”. 


Alternatively you can locate where your current wallet.dat file is by clicking on “Help” then “Debug Window” listed under the label of “Datadir” is the path to your wallet.dat file to backup that way. If you prefer the privatekey export method, please see the separate guide for private key exporting/importing.


Step 2 deactivation of Staking. 


Please follow whichever option below that you are using to stake by, either Hot Staking or Cold Staking. 


Disabling Hot Staking:


With your wallet open, click on “Staking Tab” following by “Status” then click the “Stop” button. 

 

The wallet will show the status of “Stopped”, as of version 1.0.3 there are clearer status messages to indicate the state of staking in the GUI or CLI variants of the wallet client.


Please note it will take 101 confirmations for actively staking funds to be unlocked for movement. You can check the progress by clicking on “convert to spending” tab and then “Inputs” this will show all staking inputs and how many confirmations.


Disabling Cold Staking 


Cold Staking does not require any special deactivation process before conversion of funds is possible.


Disabling coldstaking under staking status, is optional, and does not impact the conversion or migration of funds etc.


Please note: With cold staking, any mature staking funds can be moved at this point, if you have any immature funds due to a recent stake reward you will need to wait up to 101 confirmations for the funds to mature before they can be moved.


You can check for immature funds either by looking on the Overview tab under staking totals for the “immature” category, (only visible if you have immature staking funds), or by using coin control under the “convert to spending” tab (you need coin control activated from the settings, options menu for this method).



Step 3 Consolidation and Conversion of Funds 


Now that your staking funds are accessible, we need to convert them to “spending type” for them to be ready for migration to the 1.0.3 mnemonic based wallet.


To do this, we need to click on “Convert to Spending” tab. Now enter a spending address or select one from your address book, then click on “Use Available Balance”. 


Note: You can create a spending address if you have not got one, by clicking on the “Receive” tab, then by clicking the “Request Payment” button, this will give you a spending address to use for the above.


Make sure to check this represents all your staking funds, you can check by clicking on the “Overview” tab and then verifying the “Staking Total” equals “Available Staking Total” which is the amount you are sending, if they are not you may need to wait until all inputs have at least 101 confirmations


Once you have confirmed it is all the staking funds, click the “Send” button. This will now convert all Staking funds to “Spending Type” funds.


At this point, all your wallet funds will be of the “Spending type” which is reflected on your overview screen, the staking type should be 0.


Phase 2 Creation of 1.0.3 mnemonic wallet and preparation for migration


Step 1 Now that your staking funds have been converted to spending type and are ready for migration, click on the “Help” menu, then “Debug window” this will list your current client version which should read v1.0.0 also it will list the current location of your wallet.dat file under the heading of “datadir” note this down as it will be needed moving forward.

Now exit the BC 1.0.0 wallet client.

Then navigate to the data directory where your wallet.dat is stored, rename the file to old100wallet.dat.

 

Step 2 install the BC 1.0.3 wallet client, once installed, run the wallet client 


Step 3 As part of the first run of 1.0.3 wallet client it will ask you to create a new wallet with a mnemonic phrase 


Either write down the “Mnemonic phrase provided or click “new mnemonic” and write that one down.

Please note that the wallet will clear the “clip board” so copy paste between steps will not work this is deliberate.


Security Note: 

Make sure that the “Recovery Phrase” is kept secure and not given to anyone, that you would not provide your private keys to etc. The recovery phrase is like a key ring with all your keys on it, giving it to someone is giving them all your present and future private keys that could be derived by the mnemonic recovery phrase.


Now type in your “Recovery Phrase”


Please note that as an additional option, you can use a “Recovery Passphrase” which further secures your “Recovery Phrase”, this means that when generating a wallet in the future using your “Recovery Phrase” you will also need to include your “Recovery Passphrase” or it will generate a different wallet file. 


Once you have entered your “Recovery Phrase” and you ready to proceed click “Create Wallet”, this will generate your wallet.dat file and load the wallet.


Step 4 Create a new Spend Address, click on “Receive” Tab enter a label for the address, then click “request payment” copy/write the address this will be needed when we send the funds from the old wallet.


Once you have got your migration spending address created, close the wallet client. 


Step 5  Encrypt with password, Now that you have your new 1.0.3 based mnemonic wallet, it is advised that you encrypt the wallet with a password, this step is not required, but is heavily advised as you are protecting your funds from being accessed from your wallet.dat file without the password being entered.


If you lose your password, you lose access to the wallet file, you will then need to recover your wallet using your mnemonic recovery phrase, as this creates a new wallet from the mnemonic recovery phrase.


To encrypt your wallet click on “Settings” menu then “Encrypt Wallet”

Enter in your “passphrase” (password) then click “ok” this will warn you that he wallet will now encrypt and it will need to close the wallet client as part of this process. It also reminds you how important not losing your password is.

Once the wallet has closed, you can reopen the wallet client, and proceed to step 6.


Note: you can verify that your wallet is encrypted, as it will now show a green padlock in the bottom right corner of the wallet, clicking on the icon will open the wallet unlock window, this is only needed if you need to unlock the wallet for staking or for sending of funds, note that when you try to send funds it will automatically prompt you to unlock the wallet.


Step 6 Backup your new 1.0.3 based mnemonic wallet, by clicking on “File” menu, “Backup Wallet” give it a name that indicates the wallet version, for example “BC102Wallet”. Make sure it is saved in a secure location, that only you or people you trust with your funds


Now that we have created a “spending address” in our new 1.0.3 mnemonic based wallet, encrypted the wallet file, and made a secure backup, you can close the wallet. 


Phase 3 Migration from 1.0.0 to 1.0.3 mnemonic based wallet.

Step 1  Go to your wallet data directory, where your wallet.dat is saved.

Note: This “wallet.dat” will be your 1.0.3 mnemonic based wallet.dat file if you have followed this guide until now.


Rename, your wallet.dat file to “new102wallet.dat” and then rename your “old100wallet.dat. to “wallet.dat”


Once the renaming is complete, load the BC wallet client. This will open your 1.0.0 based wallet file in the 1.0.3 wallet client.



Step 2,  , go to “Send” tab and enter the “spend address” you created in (Phase 2 step 4) click on “Use Available Balance”, check this represents all of your funds being migrated, then click “Send”.


This will send all your funds from the 1.0.0 based wallet, to your new Spending Address from the 1.0.3 mnemonic based wallet



Now go to the “Transactions” tab and wait until at least one confirmation is present, but better if you wait for the transaction to complete 12 confirmations it will have a tick icon.

Step 3 Go to the “Overview” tab, and verify that you have 0 as your total, meaning all of your funds have been sent to your new spending address, now exit the wallet client. 


Step 4  Go back to your wallet data directory, and rename “wallet.dat”, to “old100wallet.dat” and then rename “new102wallet.dat” to “wallet.dat” then restart the BC wallet client.


You will now see your migrated wallet funds. At this point you have migrated from 1.0.0 wallet to the new 1.0.3 based mnemonic based wallet and all your funds are present.


Step 5 (optional) If you are intending to Stake your funds in the new wallet, you will need to convert them to staking before following the separate staking guide.


To prepare for that separate guide, it is advised that you create a staking address and convert your spending type funds to staking type funds.


To create a stake address, click on the “Staking” tab, then “Addresses” click on “New Stake Address” give it a label and then click ok


Now click on the “Convert to Staking” tab either enter your new staking address, or use the addressbook to select your staking address.


Enter the “Amount” you wish to convert to Staking type, and then click “Send” 

You have now converted, Spending type to Staking Type funds, and can proceed with the separate Staking Setup guide 


This ends the overall migration from 1.0.0 non-nemonic to 1.0.3 mnemonic based wallet.

 

If you need further advice, please seek out additional support via the  BitcoinConfidential Discord