Is the bitcoin-BlueWallet supposed to be like the Savings Account (for long HODL) and the lightning-BlueWallet supposed to be like the Current Account (for daily spending and shopping and transfers?)
On-chain bitcoin, the old regular kind of wallet, involves two steps to recieve a balance, and 5 steps to send.
To receive:
  1. Get a address from your wallet for your transaction
  2. Give the address to whoever you want to pay you.
Anyone with that address (public key) can see how many funds have gone into or out of that address and that information is public and available until the end if time.
To send:
  1. Get an address from someone you want to pay
  2. Put the address and the amount of bitcoin you want to send into your wallet with sufficient funds.
  3. Choose how much you want to spend for the transaction fee. When there is a large backlog (sometimes weeks) a cheap fee of 1sat/byte will stay at the end of the queue until the demand for transactions falls back to create smaller-than-maximum sized blocks every 10 minutes. The purpose of the fee is to get at the head of the mempool so you have a better chance at getting into the next block.
  4. Sign a transaction with your private key (unlocked with a password) transferring from your wallet addresses to the recipient's address. This is called the UXTO
  5. Most wallets do this behind the scenes, but others like sparrow you do it as a separate step. Transmit the UXTO to the "mempool", this is called 'broadcasting.' The mempool will hold your transaction for several block times (diffivulty is adjuster to achieve an average 10 minutes between blocks) until a miner grabs it and finds the sha256 hash of a nonce, timestamp, and combination of UXTOs that satisfy the present chain-difficulty level. You have a chance to make the next block every 10-or-so minutes. There is a memory limit to the mempool, so if your fee is low, your UXTO could get pruned after a time if the pool is full and most other transactions have a higher fee payout. If your transaction is pruned, you may need to perform some manual steps to rebroadcast it at a later time.
  6. After your UXTO is included in a block, you wait a few more blocks for that block to be included as an ancestor of a subsequent blocks. These descendants of the block your UXTO is in are called "confirmations". Since some recipients insist on 6 confirmations, your transaction time will require 6 block times after your block is accepted by the network. Each block time is 10 minutes, so 6 blocktimes is one hour.
With bluewallet, all of these backend details (step 4) are handled with an electrum server. Bluewallet by default randomly selects from the public electrum pool or you could configure it to use your own private electrum node.
In summary, under ideal conditions, it takes about an hour to get your bitcoin sent with several confirmations. Under worst conditions, it could take weeks to get out of the mempool and into a block. This is why we have lightning.
reply