An NSA-employed acquaintance, when asked whether the government can crack DES traffic, quipped that real systems are so insecure that they never need to bother. Unfortunately, there are no easy recipes for making a system secure, no substitute for careful design and critical, ongoing scrutiny. The sorry state of software. Everyone knows that nobody knows how to write software. Fatal bugs may even be far removed from security software.
Some cryptographic protocols allow anonymity.
No place to store secrets. Unfortunately, modern computers aren't especially good at protecting even the smallest secrets. Multi-user networked workstations can be broken into and their memories compromised. Stand alone, single-user machines can be stolen or compromised through viruses that leak secrets asynchronously. Poor random number generation.