Hey guys,
A few questions about common bitcoin wallet functions:
1. if i have a wallet but forget the passphrase, i cannot recover the passphrase or gain access to the private keys unless i have printed them out?
That depends on how complex and random your passphrase is.
If you choose a secure passphrase, then you are correct. If you are unable to remember your passphrase, and you haven't recorded in any way, then you won't be able to recover it.
2. If a wallet generates many addresses, and I use a new address for each new deposit. How do I manage all the small deposits on different addresses?
Typically, you don't. The wallet manages them for you. If you want to manage them yourself, then you'd need to choose a wallet that provides "coin control" features.
If I send certain amount of btcs from this wallet, it will automatically deduct coins from multiple addresses?
That's not how bitcoin works. Bitcoin doesn't "deduct" from an account. Bitcoin spends unspent outputs and creates new unspent outputs.
However, as a user if you are unfamilliar with the technical details of how bitcoin works it will generally look like amounts have been "deducted from multiple addresses".
And in which order?
There are no rules about that for bitcoin. Each wallet implements their own algroithm for choosing outputs to spend.
3. I heard when sending btc out, each used address's btc will all go out and then the changes will go back to a new address in the wallet.
That will depend on whether you have used a new address for every transaction or not, and which wallet you use.
The wallet will choose payments that you have received and spend the entire payment. If you only ever received 1 payment at the address, then the "address's btc will all go out". If you received more than 1 payment at the address, then the wallet might only choose to spend some of those payments, leaving behind some of the others.
If this is true, the wallet will auto recognize / create a new btc address and pre-determine a deposit address in the wallet before sending btc out?
Yes. When you use a properly written wallet that uses unique change addresses, then the wallet generates the change addresses for you and keeps track of them internally.
4. One btc wallet can generate unlimited amount of btc address (private keys)?
Effectively in human terms, yes, it can generate as many addresses and private keys as you will ever need.
If we are talking literally though, the number is "limited". Using the current P2PKH address scheme for bitcoin, there can't be more than 1.47 X 10
48 addresses.
Which btc wallet do you recommend to use to generate a large amount of btc addresses offline?
That depends on how you intend to use the addresses. Ethereum would might be a good choice. If I really needed thousands or millions of addresses, then I'd probably write my own program to handle it. Most of the popular and well supported wallets aren't really designed for that use case.