This question already has an answer here:
I am wondering if it is possible to have some "private" variables in a contract, by private I mean that I can read the value only if I am the owner of a specific wallet.
A simple example is today's banking: You cannot watch other people balance, only yours.
This is different from a simple coin contract on Ethereum, where you can look at the state of the contract and know the balance of every address.
This can be further extended to be able to read a variable only if your are the owner of it or part of a specific group.
Is zkSNARKs implemented it already? Is there another project that extends solidity with private variables?