May 31st, 2024 × #1password#rust#wasm#security
How 1Password Uses WASM and Rust for Local First Dev With Andrew Burkhart
Andrew Burkhart, senior Rust engineer at 1Password, discusses their architecture with cloud, Rust core and thin clients across platforms, how data flows when saving logins, challenges with syncing and encryption, benefits of using Rust for cross-platform, safety and performance, and porting their core to WASM for the web.
Today we're serving up an episode on 1Password with Senior Rust Developer Andrew Burkhart, delving into how 1Password works, tackling conflict resolution and security challenges, and exploring the benefits of using Rust.
Show Notes
- 00:00 Welcome to Syntax
- 00:57 Who is Andrew Burkhart?
- 01:36 How does 1Password work?
- 03:24 What's the data flow on creating a new login?
- 05:40 The conflict resolution challenges of pull first, push second.
- 06:46 Merging strategies: How do you chose which device wins the conflict?
- 08:27 1Password's sync is fast and reliable.
- 11:20 Nuances of the extension.
- 12:59 The value of Hackathons.
- 13:40 What's the main benefit of 1Password using Rust?
- 15:41 Watchtower processing.
- 17:15 1Password SSH.
- 18:17 1Password env.
- 19:11 Some other cool tools.
- 20:33 Does the increased security make developing challenging?
- 25:26 What's 1Password's security onboarding like?
- 27:47 1Password and WASM.
- 31:45 Tokio as the asynchronous runtime for Rust.
- 34:25 Scott's Rust based video app.
- 35:03 What is an FFI?
- 38:13 How did you learn Rust?
- 41:13 Why is the 1Password team so big?
- 42:40 Are there teams that manage individual applications for errors?
- 43:45 Challenges with WASM.
- 48:59 Syntax horror stories.
- 52:50 Sick Picks + Shameless Plugs.
Sick Picks
- Andrew: Nix Mini 3, Asynchronous Programming in Rust.
Shameless Plugs
- Andrew: 1Password.
Hit us up on Socials!
Syntax: X Instagram Tiktok LinkedIn Threads
Wes: X Instagram Tiktok LinkedIn Threads