dash/doc
pasta 1464e69058
Merge #6148: feat: broadcast dsq messages using the inventory system
57fb0874ef feat: broadcast dsq messages using the inventory system (pasta)

Pull request description:

  ## Issue being fixed or feature implemented
  DSQ messages are 142 bytes.

  Previously, assuming a relatively highly connected masternode hosting 100 connection, each round of coinjoin will result in 14.2KB (100*142) of inbound and outbound traffic each.

  ## What was done?
  Now, using the inventory system, a message will first use 36 bytes per peer (sending and receiving), plus the size of a `getdata` message and the actual message itself. As a result, bandwidth usage for 1 round of mixing would be closer to 36 * 100 + 142 (dsq) + 36 (getdata) = ~3.8KB, a reduction of around ~73%

  ## How Has This Been Tested?
  Has not been; @UdjinM6 especially please review well :)

  ## Breaking Changes
  Does introduce a new protocol version, but in a backwards compatible way. I don't think this would need to be delayed to v22 for any reason.

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: 3dc39a339cba29d8cf207cec76ecace5ad0e11d1892ca0f65f9253a2b1d90313da21c6c178c2476756c5566ece0fab777006cd609b7984df906a9206c25d921d
2024-09-10 10:20:59 -05:00
..
man Merge #6179: chore: update manpages v21.1 2024-08-07 18:53:08 +07:00
release-notes/dash docs: add v21.1.0 release notes and archive v21.0.2 2024-08-07 19:06:56 +07:00
.gitignore
assets-attribution.md
assumeutxo.md merge bitcoin#23154: add assumeutxo notes 2024-07-23 17:45:24 +00:00
benchmarking.md Merge bitcoin/bitcoin#22292: bench, doc: benchmarking updates and fixups 2024-05-15 03:03:18 +07:00
bips.md
bitcoin_logo_doxygen.png
build-freebsd.md Merge bitcoin/bitcoin#21942: docs: improve make with parallel jobs description. 2024-08-05 17:51:09 +07:00
build-netbsd.md Merge bitcoin/bitcoin#21942: docs: improve make with parallel jobs description. 2024-08-05 17:51:09 +07:00
build-openbsd.md Merge bitcoin/bitcoin#21942: docs: improve make with parallel jobs description. 2024-08-05 17:51:09 +07:00
build-osx.md Merge bitcoin/bitcoin#21988: doc: note that brew installed qt is not supported 2024-08-05 17:51:09 +07:00
build-unix.md merge bitcoin#28110: correct Fedora systemtap dep 2024-09-04 18:46:14 +00:00
build-windows.md merge bitcoin#22093: Try posix-specific CXX first for mingw32 host 2024-06-25 13:39:57 +00:00
cjdns.md merge bitcoin#24555: create initial doc/cjdns.md for CJDNS how-to documentation 2024-05-29 18:07:45 +00:00
dash-conf.md Merge bitcoin/bitcoin#25883: doc: Security config warning 2024-02-29 09:35:00 -06:00
dependencies.md merge bitcoin#26945: systemtap 4.8 2024-09-04 18:46:14 +00:00
descriptors.md Merge bitcoin/bitcoin#25925: doc: add {import,list}descriptors to list of descriptor RPCs 2024-06-08 20:59:36 -05:00
developer-notes.md merge bitcoin#24665: document clang tidy named args 2024-09-03 14:57:50 +00:00
dnsseed-policy.md
Doxyfile.in Merge #15382: util: add RunCommandParseJSON 2024-02-01 09:22:03 -06:00
files.md Merge bitcoin/bitcoin#21912: doc: Remove mention of priority estimation 2024-08-05 17:51:09 +07:00
fuzzing.md merge bitcoin#23373: Parse command line arguments from unit and fuzz tests, make addrman consistency check ratio easier to change 2024-09-03 14:57:50 +00:00
guix.md
i2p.md merge bitcoin#24555: create initial doc/cjdns.md for CJDNS how-to documentation 2024-05-29 18:07:45 +00:00
init.md Merge #21075: doc: Fix markdown formatting 2024-04-11 02:25:05 +07:00
instantsend.md
JSON-RPC-interface.md
managing-wallets.md
masternode-budget.md
multiprocess.md Merge bitcoin/bitcoin#19160: multiprocess: Add basic spawn and IPC support 2024-07-27 13:04:24 +07:00
productivity.md Merge bitcoin/bitcoin#25359: doc: add distcc to productivity notes 2024-02-22 20:58:44 -06:00
psbt.md
README_doxygen.md
README_windows.txt
README.md merge bitcoin#23154: add assumeutxo notes 2024-07-23 17:45:24 +00:00
reduce-memory.md
reduce-traffic.md
release-notes-154.md Merge bitcoin-core/gui#154: qt: Support macOS Dark mode 2024-07-23 13:08:40 +07:00
release-notes-6093.md feat: introduce coinjoinsalt RPC to allow manipulating per-wallet salt 2024-07-20 05:09:25 +00:00
release-notes-6107.md rpc: disallow coinjoin stop if there's no CoinJoin session to stop 2024-07-11 16:16:41 +00:00
release-notes-6108.md rpc: remove keypool replenishment stat and warning for descriptor wallet 2024-07-11 11:27:40 +00:00
release-notes-6147.md docs: add release notes for 6147 2024-07-31 13:19:54 -05:00
release-notes-6148.md feat: broadcast dsq messages using the inventory system 2024-09-10 09:23:22 -05:00
release-notes-6189.md Merge bitcoin/bitcoin#22818: test: Activate all regtest softforks at height 1, unless overridden 2024-08-14 16:58:46 +07:00
release-notes-6229.md docs: add partial release notes 2024-09-04 22:33:34 +03:00
release-notes-21141.md docs: release notes for bitcoin#21141 - walletnotify %h %b 2024-07-20 00:05:26 +07:00
release-notes-24806.md docs: add release notes for 24806 2024-07-24 18:22:14 -05:00
release-notes.md docs: add v21.1.0 release notes and archive v21.0.2 2024-08-07 19:06:56 +07:00
release-process.md docs: update release process for generating seeds: new PR as a reference 2024-03-03 23:34:35 -06:00
REST-interface.md merge bitcoin#20286: deprecate addresses and reqSigs from rpc outputs 2024-06-27 19:27:37 +00:00
shared-libraries.md
tor.md Merge #6031: backport: merge bitcoin#23077, #22834, #24165, #24555, #24663, #24205, #24687, #25173, #24991, partial bitcoin#24468 (cjdns support) 2024-06-10 11:11:11 -05:00
tracing.md merge bitcoin#23907: utxocache tracepoints follow up 2024-09-04 18:46:14 +00:00
translation_process.md Merge #21695: Remove no longer used contrib/bitcoin-qt.pro from the repo 2024-04-16 09:20:31 -05:00
translation_strings_policy.md
zmq.md merge bitcoin#23471: Improve ZMQ documentation 2024-08-26 15:35:13 +00: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.