Security with Scala Refined Types and Object Capabilities
summary
Shows how to use the refined library to turn an incoming string into a validated zip code via a regex so invalid input never becomes a domain type, how capabilities are plain references that grant only a single action (example: a nameChanger that can only set a name), how revocable proxies from the folkapps library throw on use after revoke, how dynamic sealing implements sealer/unsealer to wrap DB credentials, and how membranes enforce sandboxing like browser isolation.
AI-written summary · about
chapters (5)
- 0:00Start
- 1:09What is Security in Scala?
- 6:46What are capabilities?
- 20:30What is Dynamic Sealing?
- 24:18What are Membranes?
related talks
19mGradient: Gradual Compartmentalization via Object Capabilities Tracked in Types
32mSafer Code with LLMs: Scala Types Silver Bullet?
34mHow can we trust our agents?
50mCracking the Code to Secure Software
28mScalaZ and Cryptography
52mTrust No Input: Taint Analysis at Compile Time
54mSecuring Software by Construction
52mSecure by Design, Revisited - Insights & Pitfalls
