#dusk $DUSK @Dusk
I was digging through Dusk's docs trying to understand what "confidential dApp" actually means at the transaction level, and I ran into something that made me pause. Dusk doesn't have one transaction type — it has two, running in parallel. Phoenix is the shielded, UTXO-based model. Moonlight is public and account-based, closer to how Ethereum works. Both can pay gas, both can call contracts, and there's literally a convert function that lets you atomically swap value between the two.
That's not what I expected. I'd assumed "privacy-first chain" meant privacy by default. It doesn't. Privacy is a mode you opt into per transaction, not a property of the network itself.
I went back to the engineering notes twice because I thought I'd misread it, but there's another detail buried in there: Dusk started making zero-value notes transparent instead of obfuscated, specifically to stop the shielded note tree from bloating with non-value entries. So shielded state isn't free to maintain — the protocol is actively trimming what it hides to keep performance sane.
None of this feels like a flaw. It reads more like an honest tradeoff: full confidentiality has a data-availability cost, so the system nudges some activity toward the cheaper, public rail.
Which raises the question — if a meaningful share of activity ends up flowing through Moonlight for convenience, how "confidential" is the average transaction on Dusk in practice, versus in theory?
$BMT
$STX
I was digging through Dusk's docs trying to understand what "confidential dApp" actually means at the transaction level, and I ran into something that made me pause. Dusk doesn't have one transaction type — it has two, running in parallel. Phoenix is the shielded, UTXO-based model. Moonlight is public and account-based, closer to how Ethereum works. Both can pay gas, both can call contracts, and there's literally a convert function that lets you atomically swap value between the two.
That's not what I expected. I'd assumed "privacy-first chain" meant privacy by default. It doesn't. Privacy is a mode you opt into per transaction, not a property of the network itself.
I went back to the engineering notes twice because I thought I'd misread it, but there's another detail buried in there: Dusk started making zero-value notes transparent instead of obfuscated, specifically to stop the shielded note tree from bloating with non-value entries. So shielded state isn't free to maintain — the protocol is actively trimming what it hides to keep performance sane.
None of this feels like a flaw. It reads more like an honest tradeoff: full confidentiality has a data-availability cost, so the system nudges some activity toward the cheaper, public rail.
Which raises the question — if a meaningful share of activity ends up flowing through Moonlight for convenience, how "confidential" is the average transaction on Dusk in practice, versus in theory?
$BMT
$STX
