I have just read this which talks about creating private blockchains and using a unique public/private key per transaction so you can't be traced. There are also "Zero-knowledge proofs" which I'm not too familiar about. But other than that it doesn't state much about how you can make the blockchain secure and protect privacy. In addition, private blockchains reintroduce the need for a central authority it seems, and unique keys per transaction means the keys need to be stored at great length and regenerated for every transaction, meaning a potential performance limit and memory tax.
So I'm wondering generally how you can make a blockchain that works at the level of atomic operations like an Instruction Set Architecture or Virtual Machine like Ethereum, and yet protect user privacy and not run into performance or scalability problems.
I don't know enough yet about how the ledger / verification process works, so I can't tell what it would entail. But I imagine you would essentially create a dynamically changing user ID like the public/private key, and have a block-chain per user that is private. Then they make aspects of their blockchain history unprivate, which then merges with the global blockchain (or perhaps there are multiple layers of blockchain nesting). But each transaction would have a different key, so no one user could be traced. Yet you need potentially a way to still trace this, so the user themselves would have the transaction history accessible to themselves and whoever they share it with.