Programmable Cryptography is a "second generation" of cryptographic primitives - primitives that allow arbitrary programs to be executed "inside of" or "on top of" cryptographic objects. Programmable cryptography provides three key affordances that complement and amplify the affordances of Ethereum--verifiability, confidentiality, and non-interactivity. We'll discuss how these technologies can reshape the Internet over the next 50 years.