The foundations of end-to-end encryption: Domain separation (with code example) | Dark Hacker News