For Mycelium, the actual file that contains the encrypted keys are in the sqlite3 file. You can see in the source code that though there is in-memory storage, it's used mostly for testing and that the main way in which Mycelium data is stored is in a sqlite3 file. Sqlite, if you aren't familiar, is a very simple relational database that contains the whole ...
Since I don't know what wallet app on Android you're using, I'll give an answer that should work for any:
If you create an account at Coinbase, you can import your private keys and then send them to an address on your Android wallet. This requires the private keys being in plain text. If your private key export is encrypted (with a password you gave it) or ...
I am sorry to say but your understanding is wrong.
When you send x btc to Bluewallet you don't open a channel. You just give them your Bitcoin. Bluewallet and other custodial wallets run one (or possibly several) lightning nodes and allow you to use it with up to the amount of btc you have sent to them before.
So as long as Bluewallet users send each other ...
[Obsolete answer, see below]
As an update: current versions of the Bitcoin app have a "Back up Keys" feature. This writes a backup of all the keys in the wallet to a file named bitcoin-wallet-keys-YYYY-MM-DD (using the current date) in the phone's storage, which you can then copy or transfer wherever you want. The file is encrypted with a password you ...
This is valid, and there are even smaller types as well. Be aware that Bitcoin no longer really uses ASN.1 DER, but a even more restrictive subset of it. ASN.1 itself as it turns out is not deterministic or platform independent in many implementations, which is a source of consensus failure. For reference, here is how to encode signatures correctly in ...
I don't think the Bitcoin Foundation or any similar authority has designated an official or preferred Android app, not in the same way that Bitcoin Core is the "official" desktop client because it is the reference implementation.
But the most popular one seems to be Bitcoin Wallet by Andreas Schildbach.
From this discussion: How to create a checkpoint file
Run mvn exec:java -Dexec.mainClass=com.google.bitcoin.tools.BuildCheckpoints in the tools/ directory from the bitcoinj repository.
BuildCheckpoints expects you to have a fully synced local Bitcoin-Qt/bitcoind instance running.
The Bitcoin Wallet project recently included detailed instructions on how to extract your key pairs for exactly this purpose. In the section Recovering from protobuf wallet format, skip to the paragraph beginning with
You can also get a list of the private keys...
(Here is a historic version of that guide*, should it ever disappear)
I have now completed ...
There are two types of wallets:
A full node client uses the peer-to-peer network to validate transactions and blocks and to relay information to other peers. To verify all transactions, the entire blockchain (~145G) acts as a dependency to enable the tracing of transactions on the network.
SPV, Simplified Payment Verification, is ...
Its not exactly what you want, http://mycelium.com/ for Android does it the other way around.
You keep your private keys safe in QR-code format on a paper or a offline device, then you scan it when you want to make a transaction. Mycelium signs the transaction and forgets about the key.
I tried to scan with my Android device offline, but it does not work. ...
If you really want to create a custom bitcoin application, forking from an existing app should reduce reinventing the wheel and can act as a learning resource. For example, here are two open-source Android bitcoin apps whose source you could grab:
The simplest solution that ...
Just use bitcoind
-walletnotify= Execute command when a wallet transaction changes (%s in cmd is replaced by TxID)
in a script or for more details, access the bitcoind API via RPC https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list
The main issue seems to be a misunderstanding of this message:
"Synchronizing with network, 6 weeks behind."
This indicates that your wallet will be processing transaction data of the last six weeks to ascertain whether any of it is relevant to your wallet. As apparently the Langerhans Dogecoin Wallet is a fork from Bitcoin Wallet for Android, this ...
Lightweight wallets use a simplified payment verification (SPV) mode which only requires them to download part of the blockchain so yes a full node is required,yes you can clone an existing opensource wallet but skills is required for that
AFAIU, PoS is considered flawed by large parts of the cryptocurrency community.
I've not kept abreast of POS coins, but some that I could think of are Peercoin, NXT and Blackcoin, which are currently ranked 38, 39, and 58 on Coinmarketcap.
Unless I'm missing some new more popular ones, I'd say there is less software for them because they have less of an ...
I have the same issue. I used OpenSSL to decrypt the file, gave the correct password and got org.bitcoin.production followed by a load of protobuf-serialized gibberish.
I then processed the output using the tool mentioned here : https://github.com/lloeki/bitcoinj-wallet-dump, which appears to have worked successfully.
It gave me 271 public keys that my ...
Is a comparable level of security achievable with an Android device with full phone encryption?
Short answer: No. This doesn't mean an Android device is bad, there are less secure ways to store bitcoins. But it does have more attack vectors than a hardware wallet.
You can add whatever encryption to the phone you'd like, but ultimately if that device can ...
If your end goal is to wipe an old mobile phone to use exclusively as a cheap hardware wallet, I'd consider a Raspberry Pi. They can even be flashed to work exclusively as a Trezor device and can be built for sub $100 USD.
This is not possible.
The mnemonic words are an encoding of the entropy used in the seed, essentially. A 12 word seed has less entropy than a 24 word one, so you cannot get 24 words out of it. Similarly, you cannot get a 24 word seed to turn into a 12 word one.
Your best bet is to generate a new 24 word seed and move funds over.
According to the documentation:
getImportedKeys() returns a list of the non-deterministic keys that
have been imported into the wallet, or the empty list if none.
Try to change:
if (wallet().getImportedKeys().size() < 1)
if (wallet().getIssuedReceiveKeys().size() < 1)
If you're connecting to a bitcoind regtest node and you're trying to connect as an RPC client to it via bitcoinj, it's possible.
Figure out what your Android's IP address is, say x.y.z.w and use the -rpcallowip parameter in bitcoind to allow your (remote) Android app to talk to the regtest bitcoind node.
Spawn bitcoind like this, for example:
This is definitely possible. If your application is running as root, it can access the wallet files of Bitcoin wallets, which usually have fixed filenames and file headers. The downside of this approach is if there's a vulnerability in your software, someone can steal Bitcoins from your customers and install malware.
How else could this be done? A Bitcoin ...
You are overthinking this. The easiest way to move some of your bitcoin to a different wallet is simply to send it to an address belonging to the second wallet. This works, regardless of what type of wallet the second wallet is.
For example, if you use Bitcoin Core on a desktop in your house, simply request a payment, which will show a QR code on your ...