Wasabi Wallet
wasabiwallet.io BitcoinAn open source, native desktop wallet for Windows, Linux, and MacOS. Wasabi implements trustless CoinJoins over the Tor network. Neither an observer nor the participants can determine which output belongs to which input. This makes it difficult for outside parties to trace where a particular coin originated from and where it was sent to, which greatly improves privacy. Since it's trustless, the CoinJoin coordinator cannot breach the privacy of the participants. Wasabi is compatible with cold storage and hardware wallets, including OpenCard and Trezor.
- Homepage: wasabiwallet.io
- GitHub: github.com/zkSNACKs/WalletWasabi
- Web info: web-check.xyz/check/wasabiwallet.io
Wasabi Wallet Source Code
Author
Description
Open-source, non-custodial, privacy preserving Bitcoin wallet for Windows, Linux, and Mac.
Homepage
https://wasabiwallet.ioLicense
MIT
Created
03 Apr 16
Last Updated
09 Jun 26
Latest version
Primary Language
C#
Size
1,169,273 KB
Stars
2,557
Forks
559
Watchers
2,557
Language Usage
Star History
Top Contributors
-
@nopara73 (8579)
-
@molnard (4636)
-
@RolandUI (3736)
-
@wieslawsoltes (2730)
-
@lontivero (2425)
-
@kiminuo (1881)
-
@yahiheb (1877)
-
@SuperJMN (1444)
-
@adamPetho (900)
-
@jmacato (588)
-
@Szpoti (544)
-
@MarnixCroes (246)
-
@Carti-it (178)
-
@nothingmuch (141)
-
@varsnotwars (116)
-
@Whem (114)
-
@turbolay (110)
-
@onvej-sl (104)
-
@ichthus1604 (80)
-
@RiccardoMasutti (79)
-
@benthecarman (78)
-
@YohDeadfall (76)
-
@BTCparadigm (34)
-
@mayankchhabra (32)
-
@NicolasDorier (27)
-
@dangershony (17)
-
@csiki2 (16)
-
@Kukks (13)
-
@Kruwed (13)
-
@Zolgarr (12)
-
@Astakhin (11)
-
@hgergoil (11)
-
@CAnorbo (10)
-
@6102bitcoin (9)
-
@c0llinx (8)
-
@karozagorus (8)
-
@raindogdance (8)
-
@09128319047 (8)
-
@Maxie42 (7)
-
@TChukwuleta (7)
-
@wintercooled (6)
-
@MitchellCash (6)
-
@Mixelated (6)
-
@gabrielkrieger (6)
-
@example123 (6)
-
@Coinjoiner21 (6)
-
@kristapsk (5)
-
@Bodnaralexa (5)
-
@lnliz (4)
-
@M1nd3r (4)
-
@valoaron (4)
-
@stooof (3)
-
@davterra (3)
-
@guggero (3)
-
@nelsnelsnelson (3)
-
@FrancisPouliot (3)
-
@vuittont60 (2)
-
@0xB10C (2)
-
@alexseres (2)
-
@Onyx2406 (2)
-
@xavierfiechter (2)
-
@fulldecent (2)
-
@robik75 (2)
-
@Rmartin1104 (2)
-
@remcoros (2)
-
@mikispag (2)
-
@JuniperTonic (2)
-
@johnsBeharry (2)
-
@biig (2)
-
@AlexisKv (2)
-
@2pac1 (2)
-
@bolatovumar (1)
-
@theseatoms (1)
-
@szgero (1)
-
@Stadicus (1)
-
@SamAI-Software (1)
-
@schulterklopfer (1)
-
@Ancapzin (1)
-
@prusnak (1)
-
@sashashura (1)
-
@chirhonul (1)
-
@deepsource-autofix[bot] (1)
-
@huey735 (1)
-
@jinjiadu (1)
-
@momantech (1)
-
@ravishwetha (1)
-
@git-sgmoore (1)
-
@soonsouth (1)
-
@armandoneves (1)
-
@worldbeater (1)
-
@bfiics (1)
-
@morrisonbrett (1)
-
@BrianSipple (1)
-
@Donjon-Cerberus (1)
-
@DanGould (1)
-
@janoside (1)
-
@IsaqueFranklin (1)
-
@jirigav (1)
-
@kayevo (1)
-
@lacker (1)
Recent Commits
-
Lucas Ontivero (09 Jun 26)
Get compact filters from the p2p network (#14546) * Refactorying I * Consolidate node management * Abstract the filters provider * Add draft p2p filters provider * Download Compact Filter Headers * Download filter via P2P * CR suggestions * Refactoring (move code and renames) * reorg * Add some node seeds * move up * CompactFilterBehavior: Make TimeProvider required in `RequestTracker` * CompactFilterBehavior: Simplify * CompactFilterBehavior: GetNextRangeFiltersAsync -> GetNextFilterBatchAsync * Fix end range calculation * Do not register stale assigmnet results as pending * CR suggestions * CR suggestions --------- Co-authored-by: Carti <[email protected]>
-
Carti-it (08 Jun 26)
Global: `ConfigureBitcoinNetwork` - add more seed data (#14656) Co-authored-by: Lucas Ontivero <[email protected]>
-
Carti-it (07 Jun 26)
P2PNodesManager: Turn UpdateTimeout from async to sync (#14655) Co-authored-by: Lucas Ontivero <[email protected]>
-
Carti-it (07 Jun 26)
codeql.yml: Remove (#14652) * codeql.yml: Use CodeQL v4 * codeql.yml: Remove
-
Lucas Ontivero (07 Jun 26)
High CPU & RAM (#14654) * Fix `_aware` always growing * Fix high cpu on error
-
Carti-it (05 Jun 26)
MailboxProcessor: Add `Name` for debugging (#14618) * MailboxProcessor: Add name for debugging * TestRunner: Minor changes
-
Carti-it (05 Jun 26)
CoinPrison: Refactor (#14641) * CoinPrison: Refactor * CoinPrison: Move dispose method down
-
Isaque Franklin (05 Jun 26)
add: check for the k_max limit specified in bip0352 (#14639)
-
Lucas Ontivero (05 Jun 26)
Simplify disposals (#14596)
-
Carti-it (04 Jun 26)
P2P: Improve logs (#14649) * Improve logs * Global: Use actual names * P2PNodesManager: nodes to nodesRegistry * P2PNodesManager: Remove unnecessary allocation
-
Lucas Ontivero (04 Jun 26)
Announce relay (#14647)
-
Lucas Ontivero (04 Jun 26)
Fix wasabi scheme lib (#14648)
-
Carti-it (03 Jun 26)
Turn on `TreatWarningsAsErrors` (#14629) * JsonRpcResponse: "id" is required in the response but it can be null * RpcTests: Fix tests * Convert to explicit values * Explicit JSON strings * KeyManager: Remove redundant cast * KeyManager: Fix warnings * NavigationStack: Fix warning * Directory.Build.props: Set `TreatWarningsAsErrors` * Modify
-
Carti-it (03 Jun 26)
Wallet: Remove `IsWalletPrivateAsync` (#14640)
-
Carti-it (03 Jun 26)
CoinRefrigerator: Fix namespace and make it thread-safe (#14642) * CoinJoinManager: Unnecessary copying * CoinRefrigerator: Fix namespace * CoinRefrigerator: Make it thread-safe
-
Lucas Ontivero (03 Jun 26)
Nodes discovery and management (#14616) * Nodes discovery and management * PeerInfo: Remove spaces * NodeDiscoveryService: Add missing ConfigureAwait * Add Spawn method without comparer to decrease patch size * BlockDownloadTests: Add missing `using` * NodeDiscoveryService: Add missing ConfigureAwait * NodeDiscoveryService: Typo * NodeDiscoveryService: Fix warning * NodeDiscoveryService: Crawlers are not nullable * NodeDiscoveryService: First cancel, then dispose * NodeDiscoveryService: Remove comment * Refactor Discovery service * Query DNS over Tor * Add Bitcoin Core DNS list * Slow down after 300 nodes discovered * Minor refactoring * Simplify design * Do not prefer onion nodes * NodeConnectionManager: Capitalize * NodeConnectionManager: Remove unused property * PeerInfo: LastSeen property is not supposed to be mutable * PeerInfo: Remove unused `IsOnion` property * PeerInfo: Use defined properties to make code more DRY * EventBus: Rename `BitcoinNodeAdded` to `P2pNodeAdded` * BlockDownloadTests: Remove stopwatch * Constants: Remove unused using * Global: Typo * Global: Suppress CA2000 * NodeDiscoveryService: Typo * NodeDiscoveryService: Remove unused CT * Revert silly changes * Improve logging for debug Co-authored-by: Carti-it <[email protected]> * Punish misbehaviors * CR Suggestion Co-authored-by: Carti-it <[email protected]> * Fix build * Improve punishment code/scoring * Fix IPv4 seed nodes * Increase cooldown reconnect time --------- Co-authored-by: Carti <[email protected]>
-
Carti-it (03 Jun 26)
TransactionBroadcaster: Use `EventBus` to announce a new transaction. (#14626) * TransactionBroadcaster: Use `EventBus` to announce a new transaction. * Use EventBus in MempoolService
-
Kevin Ravensberg (29 May 26)
Fix RPC fee estimation falling through when node returns single fee-estimate (#14621) * Fix RPC fee estimation falling through when node returns degenerate single-target result When a Bitcoin node has a thin mempool or insufficient fee history, estimatesmartfee returns Blocks=2 for every requested confirmation target. GetFeeEstimationsAsync keys results by the returned block number, so all 9 targets collapse to a single entry {2: X sat/vB} via DistinctBy. This non-empty result was accepted by Composed as a success, so MempoolSpace and Blockstream fallbacks were never tried, causing the coordinator to always create rounds at the same floor fee rate regardless of actual mempool conditions. Fix: after deduplication, throw NoEstimationException if fewer than 2 distinct block numbers were returned. This signals Composed to fall through to the next provider, which will supply a proper multi-point fee curve." * Update RPCClientExtensions.cs Co-authored-by: Lucas Ontivero <[email protected]> * Update WalletWasabi/Extensions/RPCClientExtensions.cs Fixed comments Co-authored-by: Carti-it <[email protected]> * Change return type from FeeRateEstimations to empty dictionary Solved a build issue with the return type on line 131. * Ensure result is returned in GetFeeEstimations Add a return statement to ensure result is returned when count is less than 2. --------- Co-authored-by: Lucas Ontivero <[email protected]> Co-authored-by: Carti-it <[email protected]>
-
Carti-it (28 May 26)
KeyManager: Fix warnings (#14583)
-
Carti-it (28 May 26)
Global: Do not use Wasabi RPC onion URI as a block provider (#14627)
-
Carti-it (28 May 26)
JSON-RPC: Explicit null values (#14628) * JsonRpcResponse: "id" is required in the response but it can be null * RpcTests: Fix tests * Convert to explicit values * Explicit JSON strings
-
Carti-it (27 May 26)
PrivacyContentControl: Fix warning (#14624)
-
Carti-it (27 May 26)
CoinJoinManager: Replace `Channel` with `MailBoxProcessor` [7/n] (#14581) * CoinJoinManager: Replace `Channel` with `MailBoxProcessor` * Remove unused cancellation tokens * Add a todo
-
Carti-it (27 May 26)
CurrencyEntryBox: Fix warning (#14623) * CurrencyEntryBox: Fix warning * rerun CI
-
Carti-it (27 May 26)
WalletManager: Remove unused workDir parameter (#14625)
-
Lucas Ontivero (26 May 26)
Check consolidated outputs (#14620)
-
Carti-it (26 May 26)
Add missing QR code payment support (#14605) * Add missing QR code payment support * Add a delegate to show the QR code camera dialog * FeeRateProviders: Follow a suggestion
-
Carti-it (26 May 26)
.editorconfig: Instruct IDEs to use `var` as expected when introducing new variables (#14619)
-
Carti-it (26 May 26)
CoinJoinClient: Remove unused `stopWhenAllMixed` parameter (#14617)
-
Carti-it (22 May 26)
TransactionBroadcaster: Fallback to other external broadcasters on failure (#14505) * Refactor to try the preferred broadcaster first and the rest after that * CR
Wasabi Wallet Security
Wasabi Wallet Website
Website
wasabiwallet.io | 520: Web server is returning an unknown error
Redirects
Does not redirect
Security Checks
3 security checks failed (62 passed)
- Robots Noindex
- HTTP Status Error
- HTTP Server Error
Server Details
- IP Address 172.67.188.28
- Location San Francisco, California, United States of America, NA
- ISP CloudFlare Inc.
- ASN AS13335
Associated Countries
-
US
Safety Score
Website marked as moderately safe
90%
Blacklist Check
www.wasabiwallet.io was found on 0 blacklists
- AntiSocial Blacklist
- Artists Against 419
- Badbitcoin
- Bambenek Consulting
- CERT Polska
- CoinBlockerLists
- CRDF
- CryptoScamDB
- EtherAddressLookup
- EtherScamDB
- Fake Website Buster
- MetaMask EthPhishing
- NABP Not Recommended Sites
- OpenPhish
- PetScams
- PhishFeed
- PhishFort
- Phishing.Database
- PhishStats
- PhishTank
- Phishunt
- RPiList Not Serious
- Scam.Directory
- SecureReload Phishing List
- Spam404
- StopGunScams
- Suspicious Hosting IP
- ThreatFox
- ThreatLog
- TweetFeed
- URLhaus
- ViriBack C2 Tracker
Website Preview
Wasabi Wallet Reviews
More Crypto Wallets
-
Open source hardware wallet, supporting secure multisig with the option for making encrypted backups on a MicroSD card.
-
An easy-to-use, super secure Bitcoin hardware wallet, which can be used independently as an air-gapped wallet. ColdCard is based on partially signed Bitcoin transactions following the BIP174 standard. Built specifically for Bitcoin, and with a variety of unique security features, ColdCard is secure, trustless, private, and easy-to-use. Companion products for the ColdCard include: BlockClock, SeedPlate, and ColdPower.
-
A steel plate, with engraved letters which can be permanently screwed - CryptoSteel is a good fire-proof, shock-proof, water-proof, and stainless cryptocurrency backup solution.
-
Long-standing Python-based Bitcoin wallet with good security features. Private keys are encrypted and do not touch the internet and balance is checked with a watch-only wallet. Compatible with other wallets, so there is no tie-in, and funds can be recovered with your secret seed. It supports proof-checking to verify transactions using SPV, multi-sig, and add-ons for compatibility with hardware wallets. A decentralized server indexes ledger transactions, meaning it's fast and doesn't require much disk space. The potential security issue here would not be with the wallet, but rather your PC - you must ensure your computer is secure and your wallet has a long, strong passphrase to encrypt it with.
-
Sparrow is a Bitcoin wallet for those who value financial self-sovereignty. Sparrow’s emphasis is on security, privacy, and usability. Sparrow does not hide information from you - on the contrary, it attempts to provide as much detail as possible about your transactions and UTXOs, but in a way that is manageable and usable.
-
Open source, cross-platform, offline, crypto wallet, compatible with 1000+ coins. Your private key is generated on the device, and never leaves it, all transactions are signed by the Trezor, which ensures your wallet is safe from theft. There are native apps for Windows, Linux, MacOS, Android, and iOS, but Trezor is also compatible with other wallets, such as Wasabi. You can back the Trezor up, either by writing down the seed, or by duplicating it to another device. It is simple and intuitive to use, but also incredibly customizable with a large range of advanced features.
About the Data: Wasabi Wallet
API
You can access Wasabi Wallet's data programmatically via our API. Simply make a GET request to:
https://api.awesome-privacy.xyz/v1/services/wasabi-wallet The REST API is free, no-auth and CORS-enabled. To learn more, view the API Docs or read the API Usage Guide.
Share Wasabi Wallet
Help your friends compare Crypto Wallets, and pick
privacy-respecting software and services.
Share Wasabi Wallet and Awesome Privacy with your network!