You are viewing a single comment's thread from:

RE: Question: Why are Steem wallet holdings publicly visible for everybody?

in #steem8 years ago (edited)

The balances are transparent because everything is on the blockchain and the only way to provide financial privacy would be through advanced cryptography. Such cryptography does exist (e.g. Confidential Transactions), but it does add considerable complexity to the system so it hasn't been added yet to Steem, and who knows when it will. Keep in mind that Bitcoin and many other altcoins do not have such a technology enabled currently either; although other systems, e.g. Monero and ZCash, do have advanced cryptography providing financial privacy even better than Confidential Transactions can provide, but to be fair they are limited in scope to just token transfers while Steem is a very complex blockchain with social media features as well. People may feel that Bitcoin is more private because of the pseudo-anonymous addresses which are cheap to create. And while creating new addresses with each transaction does provide better privacy than using a single named account (which of course can still be pseudo-anonymous if you wish and can manage to not mess up), it comes with issues such as being harder to use for the regular user and also providing Bitcoin users with a possibly false sense of privacy since there are credible efforts in Bitcoin transaction graph analysis that link a user's transactions to their identity (especially if there is cooperation with exchanges that have done KYC with the user) with high probability.

Anyway, one example that some may not even realize of the added engineering complexity to adding financial privacy on Steem is requiring a robust on-chain private key backup solution so that old memo keys can be recovered from the blockchain using only the current memo key despite any key changes (or equivalently password changes) done over time by the user. This would be necessary in order to guarantee access to all hidden balances using just the user's current password, because the cryptography behind Confidential Transactions would require a private key that the user knows and on Steem that would likely end being the user's memo key at the time of the transaction. Also, if an account reset feature was ever to be enabled on Steem in the future, it could help the user who lost their password/keys recover access to their account and its public balances, but it would not be possible to recover access to the account's hidden balances, even with such an on-chain private key backup solution, because the memo private key would still be lost.

As you can imagine, these and other significant issues would make developers hesitant to implement such privacy features unless they can build a very robust and secure system from the get-go, and that takes considerable developer resources away from other important features this platform needs to thrive.

Furthermore, even that advanced cryptography mentioned earlier (Confidential Transactions) is still not good enough for protecting one's Steem Power balances because the network must know the amount of Steem Power an account has to determine their voting influence (among other things). But Confidential Transactions could at least protect the liquid STEEM and SBD (Steem Dollar) balances an account holds (hiding SBD balances would require forgoing interest on SBD unless the entire SBD mechanism was radically changed).