This chapter covers:
- How cryptography can help get rid of trusted third parties via secure multi-party computation (MPC).
- How untrusted third parties can still compute useful programs on encrypted data via fully homomorphic encryption (FHE).
- How zero-knowledge proofs (ZKPs) can be used to hide parts of a program’s execution to compress or add confidentiality to a protocol.
I started this book with the idea that readers who would get through most of the chapters would also be interested in the future of real-world cryptography. While you’re reading an applied and practical book, with a focus on what is in use today, the field of cryptography is rapidly changing (as we’ve seen in recent years with cryptocurrencies, for example). A number of theoretical cryptographic primitives and protocols are making their ways into the applied cryptography world. Maybe because these theoretical primitives are finally finding a use case, or maybe because they’re finally becoming efficient enough to be used in real-world applications. Whatever the reason, the real-world of cryptography is definitely growing and getting more exciting. So in this section, to leave you with a taste of what the future of real-world cryptography might look like (perhaps in the next 10 to 20 years), I will briefly survey three primitives: