Thin Bitcoin Wallet. Built with React Native, Expo and BlockCypher API.
Website: bluewallet.io
Discussion thread: https://bitcointalk.org/index.php?topic=2893813
- Build and run on your own using Expo Client
- Private keys never leave your device
- SegWit-first. Replace-By-Fee support
- Encryption. Plausible deniability
Beta version, do not use to store large amounts!
- In your console:
git clone https://github.com/BlueWallet/BlueWallet.git
cd BlueWallet
npm install
npm start
- Install Expo client: https://itunes.apple.com/app/apple-store/id982107779?ct=www&mt=8
- Send the link shown in your console after
npm start
to your device - Open the link with Safari, Expo client should automatically handle
exp://
URI scheme
npm run test
I was not satisfied with existing iOS Bitcoin apps, especially with BreadWallet (the one I mainly used) where development stalled and they could not even deliver such features as SegWit, RBF and custom fees (at the times where custom fees were especially needed). So I knew I could create one to use myself and let others use it. I had experience with awesome bitcoin-js lib (javascript), and since I dont own any Macs, don't plan to and not going to learn ObjC/Swift - ReactNative (where you also write in javascript) was an obvious choice.
MIT
Support for single private-key wallets:
SegWith P2SH compatibility addresses
- Wallets
- Sub-screen Edit Wallet
Edit labelDeleteView info: type, address, privkey (?)
Sub-screen Add Wallet
- Sub-screen Edit Wallet
- Transactions
Sub screen to view transaction details (confs, fee, seen date, confirmed date, time to confirm)- View TX on block explorer
- Receive
Choose walletSub-screen with QRaddress as un-editable input (for copy-paste)
- Send
Choose WalletScan QRSub screen edit balance, memo, receiver name ...Validation error in case of empty fields
Broadcast TXsave TX meta info to wallet storage (memo, txhex)
- Settings
Opensource linkTechnologies used
Legacy addressesEncrypt all storage, PIN/Password/Fingerprint security- Currency conversion
Localization (RU, UA)
- Receive
- Choose wallet
- Choose amount in BTC, label etc
- Generate specialized QR wih above info
- Choose walet
- Receive through changelly/shapeshift
- Choose wallet
- Send
- Handle
bitcoin://
URI Scan QR withbitcoin://
URI
- Handle
- Transactions
Sub screen to view transaction details (confs, fee, seen date, confirmed date, time to confirm)Do RBF on TX (with change-destination address)- Do CPFP
- Settings
- Appstore RateMe link
Support HD (multi-private keys) Support bech32 addresses
- Settings
- Different UTXO usage strategies
- Address book..?
Lightning support?
- RBF
- CPFP
- Sign any message with private key
- Verify other message signature
- Tool: Cold wallet verifier (scans private keys and displays public keys realtime)
- Export (backup) secrets/private keys
- Export (bip38 password-encrypted)
- Cold wallet generator
- Export created signed tx, no broadcast
- Work through proxy? TOR?
- Localizations (RU, UA, BY? Arab, JP, CH?)
- OFFLINE TX: get unspents offline, create & sign TX offline, export txhex
- Sweep other private key
- Rebroadcast TX (to some different endpoints?)
- Batch transaction
- MultiSig M-of-N (while keeping only 1..M of all sigs on device)
- Sign your part of multisig via QR code
- Transaztion queue chart, fee estimation
- Push notifications for all associated addresses
- Keep PrivKey/WIF on paper, scan only on TX signing, not keping on device (watch-only address)
- Decode TX screen
- Migrate to ElectrumX server (ditch blockcypher) - requires socket/tcp support in Expo OR rpc2rest proxy
- Fake password which unlocks fake wallets (aka plausible deniability)
- BIP38 (password-protected key)
- Self-destruct if several password attempts
- Generate keys with desired text in address (3MyAddRess......)
- Generate private key with dice or coin flip as a source of entropy