How the Bitcoin Address Changes Each Time We Receive and Send BTC Using Emerald

And what are the benefits of this industry best practice.

Image of Donald McIntyre

By Donald McIntyre

July 28th, 2022

post image

Educational post: Bitcoin HD address change explained.


You can watch this educational content here:


Emerald uses the hierarchical deterministic (HD) wallet framework which is an industry standard and best practice to be able to generate many addresses from the same seed or root private key.

This enables the generation of a different address each time we receive and send Bitcoin.

The purpose of using a different address each time we receive and send Bitcoin is to enhance privacy, as all Bitcoin transactions are public.

Another reason is to organize operations, so a user can easily recognize transfer sources, as each has a unique address.

The way it works is that each time a user presses "RECEIVE" to request cryptocurrency a new Bitcoin address is generated from the user's same seed.

This means that each time the user receives Bitcoin, the new Bitcoin will be deposited in a different Bitcoin address inside Emerald.

When sending Bitcoin, the way Emerald will work is that it will send the specified amount to the third party address.

Then, in the same transaction, it will move any change left in the Emerald user’s address to another Bitcoin address controlled by the same user with the same seed.

It will do the above in a single transaction and only pay one fee to the miners.

Example of a Send Transaction

  • The balance in a Bitcoin address “MyAddressA” is 1 BTC.

  • The user wants to send 0.45 BTC from MyAddressA to a third party address “HisAddressX” with a fee of 0.05 BTC.

  • Emerald will generate and send a transaction that will be:

Send 0.45 BTC from MyAddressA to HisAddressX

Send 0.50 BTC from MyAddressA to MyAddressB

Pay 0.05 BTC fee to miner

  • So the user will end up with a new balance of 0.50 BTC but in MyAddressB which the user controls with the same root private key.

  • Hence, the balance in the MyAddressA will become 0 BTC.

Note 1:

The user can actually give the same address over and over again to anyone to receive BTC, but that reduces privacy and the benefit of organization of transactions per source.

Note 2:

If the user has a total of 3 BTC in 25 Emerald Bitcoin addresses and needs to send the total to a third party address, then Emerald will generate a single transaction moving 3 BTC from the 25 addresses to the third party address in a single transaction and pay a single fee.


Thank you for reading this educational post!

Please remember to download Emerald here:

https://emerald.cash/download