dash/doc
MeshCollider 6099b4bf39 Merge #13756: wallet: "avoid_reuse" wallet flag for improved privacy
5ebc6b0eb267e0552c66fffc5e5afe7df8becf80 bitcoind: update -avoidpartialspends description to account for auto-enable for avoid_reuse wallets (Karl-Johan Alm)
ada258f8c8f92d44d893cf9f22d15acdeca40b1a doc: release notes for avoid_reuse (Karl-Johan Alm)
27669551da52099e4a6a401acd7aa32b32832423 wallet: enable avoid_partial_spends by default if avoid_reuse is set (Karl-Johan Alm)
8f2e208f7c0468f9ba92bc789a698281b1c81284 test: add test for avoidreuse feature (Karl-Johan Alm)
0bdfbd34cf4015de87741ff549db35e5064f4e16 wallet/rpc: add 'avoid_reuse' option to RPC commands (Karl-Johan Alm)
f904723e0d5883309cb0dd14b826bc45c5e776fb wallet/rpc: add setwalletflag RPC and MUTABLE_WALLET_FLAGS (Karl-Johan Alm)
8247a0da3a46d7c38943ee0304343ab7465305bd wallet: enable avoid_reuse feature (Karl-Johan Alm)
eec15662fad917b169f5e3b8baaf4301dcf00a7b wallet: avoid reuse flags (Karl-Johan Alm)
58928098c299efdc7c5ddf2dc20716ca5272f21b wallet: make IsWalletFlagSet() const (Karl-Johan Alm)
129a5bafd9a3efa2fa16d780885048a06566d262 wallet: rename g_known_wallet_flags constant to KNOWN_WALLET_FLAGS (Karl-Johan Alm)

Pull request description:

  Add a new wallet flag called `avoid_reuse` which, when enabled, will keep track of when a specific destination has been spent from, and will actively "blacklist" any new UTXOs which send to an already-spent-from destination.

  This improves privacy, as a payer could otherwise begin tracking a payee's wallet by regularly peppering a known UTXO with dust outputs, which would then be scooped up and used in payments by the payee, allowing the payer to map out (1) the inputs owned by the payee and (2) the destinations to which the payee is making payments.

  This replaces #10386 and together with the (now merged) #12257 it addresses #10065 in full. The concerns raised in https://github.com/bitcoin/bitcoin/pull/10386#issuecomment-302361381 are also addressed due to #12257.

  ~~Note: this builds on top of #15780.~~ (merged)

ACKs for commit 5ebc6b:
  jnewbery:
    ACK 5ebc6b0eb
  laanwj:
    Concept and code-review ACK 5ebc6b0eb267e0552c66fffc5e5afe7df8becf80
  meshcollider:
    Code review ACK 5ebc6b0eb2
  achow101:
    ACK 5ebc6b0eb267e0552c66fffc5e5afe7df8becf80 modulo above nits

Tree-SHA512: fdef45826af544cbbb45634ac367852cc467ec87081d86d08b53ca849e588617e9a0a255b7e7bb28692d15332de58d6c3d274ac003355220e4213d7d9070742e
2022-06-17 04:06:49 +07:00
..
gitian-building
man merge bitcoin#15358: Add SetupHelpOptions() 2022-06-07 09:21:28 +05:30
release-notes/dash Merge #15527: doc: Move pr release notes file in wrong dir 2021-10-01 09:48:23 -04:00
.gitignore
assets-attribution.md
benchmarking.md Merge #17081: doc: fix Makefile target in benchmarking.md 2022-05-17 01:20:21 -04:00
bips.md docs: update bips.md (#4780) 2022-04-19 11:55:09 -05:00
bitcoin_logo_doxygen.png
build-cross.md merge bitcoin#22993: set OSX_MIN_VERSION to 10.15 2021-10-05 08:04:26 +05:30
build-generic.md build/ci: Fix --enable-glibc-back-compat and its usage (#4592) 2021-11-30 14:13:18 +03:00
build-netbsd.md
build-osx.md Merge #15964: Docs: Improve build-osx document formatting 2022-05-17 12:57:47 -04:00
build-unix.md docs/build: Kubuntu 22.04 build fix (#4843) 2022-05-28 23:27:04 -05:00
build-windows.md
dash-conf.md Merge bitcoin/bitcoin#22393: doc: added info to bitcoin.conf doc 2022-03-07 09:42:58 -06:00
descriptors.md Merge #18025: doc: Add missing supported rpcs to doc/descriptors.md 2022-03-07 09:40:31 -06:00
developer-notes.md Merge #17752: doc: fix directory path for secp256k1 subtree in developer-notes 2022-06-14 16:48:08 +07:00
dnsseed-policy.md
Doxyfile.in Merge bitcoin/bitcoin#22001: doc: Generate doxygen documentation for test sources 2022-03-13 14:52:10 -05:00
files.md Merge #17102: doc: Add missing indexes/blockfilter/basic to doc/files.md 2022-04-02 09:19:20 +05:30
fuzzing.md merge bitcoin#17291: Add fuzzing harness for ISO-8601 related functions 2022-03-24 09:27:25 +05:30
gitian-building.md
init.md Merge #16812: doc: Fix whitespace errs in .md files, bitcoin.conf, and Info.plist.in 2022-01-20 13:09:17 -05:00
instantsend.md
JSON-RPC-interface.md Merge #20741: doc: Update 'Secure string handling' 2021-09-18 21:41:46 -04:00
masternode-budget.md
productivity.md Merge #18382: doc: note the costs of fetching all pull requests 2022-04-07 07:22:27 +05:30
psbt.md Merge #15757: List new RPCs in psbt.md and descriptors.md 2022-01-03 18:55:35 +05:30
README_doxygen.md Merge #16912: doc: Remove Doxygen intro from src/bitcoind.cpp 2021-11-25 06:38:14 +05:30
README_windows.txt
README.md merge bitcoin#17265: Remove OpenSSL 2022-04-25 15:29:52 +05:30
reduce-memory.md Merge bitcoin/bitcoin#21709: doc: update reduce-memory.md and bitcoin.conf -maxconnections info 2022-04-05 23:10:05 -05:00
reduce-traffic.md Merge #18464: doc: block-relay-only vs blocksonly 2022-04-03 18:08:53 -05:00
release-notes-4023.md docs: release notes for dash#4023, 4704, 4756 (#4825) 2022-05-01 23:41:31 +03:00
release-notes-4704.md docs: release notes for dash#4023, 4704, 4756 (#4825) 2022-05-01 23:41:31 +03:00
release-notes-4751.md Show penalty score in masternode rpc (#4751) 2022-04-06 16:50:21 -05:00
release-notes-4756.md docs: release notes for dash#4023, 4704, 4756 (#4825) 2022-05-01 23:41:31 +03:00
release-notes-4822.md feat(rpc/wallet): allow skipping/forcing blockchain rescan on upgradetohd (#4822) 2022-05-17 01:51:54 +03:00
release-notes-13152.md
release-notes-13756.md Merge #13756: wallet: "avoid_reuse" wallet flag for improved privacy 2022-06-17 04:06:49 +07:00
release-notes-14021.md Merge #14021: Import key origin data through descriptors in importmulti (+ changes from PRs partially merged earlier: 15368, 15749) 2022-02-18 03:42:05 +03:00
release-notes-14023.md
release-notes-14468.md merge #14468: [wallet] Deprecate generate RPC method 2022-05-01 20:51:43 +03:00
release-notes-14802.md Merge #14802: rpc: faster getblockstats using BlockUndo data 2022-05-06 12:20:56 -04:00
release-notes-14941.md
release-notes-14954.md
release-notes-14982.md Merge #14982: rpc: Add getrpcinfo command 2021-12-26 22:25:14 -05:00
release-notes-15006.md Merge #15006: Add option to create an encrypted wallet 2021-12-17 21:11:25 +03:00
release-notes-15226.md Merge #15226: Allow creating blank (empty) wallets (alternative) 2021-12-17 21:11:10 +03:00
release-notes-15492.md Merge #15492: [rpc] remove deprecated generate method 2022-05-01 20:52:10 +03:00
release-notes-15566.md Merge #15566: cli: replace testnet with chain and return network name as per BIP70. 2021-10-01 09:42:27 -04:00
release-notes-15637.md Merge #15637: rpc: Rename size to vsize in mempool related calls 2021-12-25 18:32:18 +05:30
release-notes-16394.md merge bitcoin#16394: Allow createwallet to take empty passwords to make unencrypted wallets 2022-04-07 10:13:47 +05:30
release-notes-16512.md Merge #16512: rpc: Shuffle inputs and outputs after joining psbts 2022-01-20 13:09:17 -05:00
release-notes-17410.md
release-notes-19671.md merge bitcoin#19671: Remove -zapwallettxes 2022-05-13 18:06:06 +05:30
release-notes-pr12255.md Merge #15527: doc: Move pr release notes file in wrong dir 2021-10-01 09:48:23 -04:00
release-notes-pr13381.md Merge #13381: RPC: creates possibility to preserve labels on importprivkey 2022-03-08 00:46:09 -05:00
release-notes.md
release-process.md Merge pull request #4607 from humbleDasher/dec042021 2021-12-17 11:04:02 -06:00
REST-interface.md Merge #17285: doc: Bip70 removal follow-up 2022-04-27 21:08:36 +03:00
shared-libraries.md
tor.md merge bitcoin#18077: Add NAT-PMP port forwarding support 2022-02-26 17:49:13 +05:30
translation_process.md Merge #16982: build: Factor out qt translations from build system 2021-12-22 20:13:18 -05:00
translation_strings_policy.md Merge #16224: gui: Bilingual GUI error messages 2022-04-07 10:41:24 -05:00
travis-ci.md revert dash#4621: remove all the unneeded and unused (probably broken) travis stuff 2021-12-19 14:03:39 +05:30
zmq.md Revert "Merge #16404: qa: Test ZMQ notification after chain reorg" (#4646) 2022-01-03 15:30:11 +03:00

Dash Core

This is the official reference wallet for Dash digital currency and comprises the backbone of the Dash peer-to-peer network. You can download Dash Core or build it yourself using the guides below.

Running

The following are some helpful notes on how to run Dash Core on your native platform.

Unix

Unpack the files into a directory and run:

  • bin/dash-qt (GUI) or
  • bin/dashd (headless)

Windows

Unpack the files into a directory, and then run dash-qt.exe.

macOS

Drag Dash Core to your applications folder, and then run Dash Core.

Need Help?

Building

The following are developer notes on how to build Dash Core on your native platform. They are not complete guides, but include notes on the necessary libraries, compile flags, etc.

Development

The Dash Core repo's root README contains relevant information on the development process and automated testing.

Resources

Miscellaneous

License

Distributed under the MIT software license.