Home

Awesome

Wireshark dissector plugin for the Dash cryptocurrency protocol

A Dash protocol dissector converted from the bitcoin built-in dissector and updated to include Dash specific commands (based on outdated protocol documentation and source code). All messages are now dissected in significant detail.

Current limitations:

To Build (on Linux Mint 17.3)

Note: This was built with Wireshark 2.3. To use with Wireshark 2.2 it is necessary to build using the master-2.2 branch of this repository

Releases

Capture screenshot

This shows a dissected Masternode Ping message. The packet also contains a Governance Vote.

Dash specific protocol implementation status (excludes items shared with the Bitcoin protocol)

NameRecognizedDissectedStatusDescription
blocktxnYYBlock Transactions (compact block-related)
cmpctblockYYCompact Block
dsaYYDarksend Accept
dscYYDarksend Complete
dsegYYMasternode List/Entry Sync
dsfYYDarksend Final Transaction
dsiYYDarksend Entry
dsqYYDarksend Queue
dssYYDarksend Sign Final Transaction
dssuYYMixing Pool Status Update
dstxYYDarksend Broadcast
getblocktxnYYGet block transaction(s) (compact block-related)
govobjYYGovernance Object
govobjvoteYYGovernance Vote
govsyncYYGovernance Object Sync
ixYYTransaction Lock Request (InstantSend)
mnbYYMasternode Broadcast
mngetYYMasternode Payment Sync
mnpYYMasternode Ping
mnvYYMasternode Verify
mnwYYMasternode Payment Vote
mnwbYNAInventory onlyMasternode Payment Block (no message - inventory only)
sendcmpctYYSend compact blocks
sporkYYSpork status
sscYYSync Status Count
txlvoteYYTransaction Lock Vote

Example display filter

This example of using display filters shows how to show messages related to a PrivateSend session.

ip.addr == 217.182.229.150 && (dash.dsa || (dash.dsq.ready==1) || dash.dsi || \
  dash.dsf || dash.dss || dash.dsc || dash.dssu || dash.dstx)