Neutrino, More Financial Privacy, Less Trust In Servers
(posting on behalf on opreturn, who is taking over as maintainer of BCHD node implementation in Go, and has an ongoing Flipstarter)
What is Neutrino, and how does it provide more privacy?
To put it in a simple way, the way light wallets usually work is they send a list of all your addresses to a third party server in order to retrieve your transactions. So even though you might use awesome tools like CashFusion, you still have to have some level of trust in some server. (Please note that the description provided is simplified).
That's where Neutrino protocol and it's client side fliltering comes in. The way it works is full nodes create a filter for each block in the chain. You can think of a filter as a very compact representation of transactions in a block. The light wallets download these filters to check if there are any data in them they might be interested in. If there's a match, they download the full block and parse it for their transactions.
Using this approach, wallets avoid disclosing your addresses addresses to a third party. So the third party won't be able to link your addresses and coins together.
But as with everything, there are tradeoffs to this relatively young approach. One is Neutrino can't privately detect mempool transactions, so you have to download the whole mempool in order to maintain privacy and another one as you've probably already figured, is it requires more bandwidth than the usual SPV wallets. So Neutrino wallets can have a bit less pleasant UX.