Menu

1 / 2

Your Data Isn't Private. You Just Haven't Put It On-Chain Yet

DEV Community·Tushar Pamnani·6 months ago
#3pey6WnF
#midnightntwrk#compact#web3#export#ledger
Reading 0:00
15s threshold

There's a dangerous assumption most developers bring into Compact:

"It's a privacy-first chain. My data is private unless I explicitly expose it."

This is backwards. And it's where the serious mistakes happen.

The actual model

Compact doesn't give you automatic privacy. It gives you a hard boundary between two worlds, and a compiler that enforces it.

World Where Who sees it

Public On-chain, every network node Everyone

Private Your local machine Only you

The boundary between them is explicit. You cross it deliberately, with a specific annotation, or you don't cross it at all. The compiler guarantees this. You cannot accidentally move private data into public state, it's a compile error, not a runtime surprise.

But here's what trips people up: the guarantee goes one direction. The compiler stops private data from leaking into public state. It does not prevent you from intentionally putting sensitive data on-chain by slapping it in export ledger and calling it a day.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.