This may be out there in left field but what if:
It is, I think, a fact of life that everybody is going to have an internet connected device of some sort and bandwidth will continue to be mostly sufficient. What if a protocol could be developed so that the contents of packets were encrypted by default and the location of the encryption key or some other permission approver was part of the packet. If the sender had to be verified (tracked) the location of the key or approver would be checked. Let's say we had white lists on our mobile device and the mobile device IP address was in the packet somewhere. I login to my healthcare website, the website contacts my mobile device and since they are whitelisted, they can decrypt the packet contents.
Basically, your data would be your data and you would only release to those you wanted to have it. If you did not have someone in your white list and it was important to you, maybe they could, gasp, call you? I'm not sure the analogy would hold up but it would be similar to a door entry system but you have total control over the database of people who can enter.