Tandem – An Engine for Secure Multi-Party Computation (Written in Rust)
Tandem is a cryptographic engine for executing programs using Secure Multi-Party Computation (MPC), which allows 2 parties to compute a function without revealing their private inputs. The classic example from cryptography is the millionaires' problem, where two millionaires compute who is richer without revealing their wealth to each other. MPC has in the past been mostly confined to academia, but thanks to some recent papers has finally become fast enough for practical applications. Tandem uses Garbled Circuits, encrypted circuits consisting of boolean gates. While there have been other…
What it does
In the maker’s words, at launch
Tandem is a cryptographic engine for executing programs using Secure Multi-Party Computation (MPC), which allows 2 parties to compute a function without revealing their private inputs. The classic example from cryptography is the millionaires' problem, where two millionaires compute who is richer without revealing their wealth to each other. MPC has in the past been mostly confined to academia, but thanks to some recent papers has finally become fast enough for practical applications. Tandem uses Garbled Circuits, encrypted circuits consisting of boolean gates. While there have been other implementations based on these ideas, Tandem tries to provide a much better user experience than previous attempts. For example, the Tandem repo includes a server, a command line client and client libs for wasm and native architectures. To make it easier to run practical applications, programs can be written in Garble, a custom Rust-like programming language that compiles to Garbled Circuits. (The most practical application to date using Tandem is "Encryptle", a Wordle clone that runs entirely over MPC. Depending on latency, a client/server exchange takes about 400ms, which makes the UX very similar to the real Wordle, with the twist that the server cannot see the guess in plain text and the browser cannot see the solution in plain text. Instead, guess and solution are kept private and compared using MPC.)
Does the same job
all alternatives →- LALegion, an as-simple-as-possible blockchain server written in Haskell2017 · github.com · ▲239



- ACA Cryptocurrency in 4K Lines of Scala Code2015 · github.com · ▲37
- LCLazysodium – Cryptography made effortless2018 · github.com · ▲5
More dev tools this month
the category →



Open-source GTM skills for technical founders
Dev tools · 29d ago · gtmcofounder.com

OpenTrailPaper is open-source bike computer firmware for the LilyGO T5S3 4.7" E-Paper PRO. It supports offline maps, GPX routes, FIT recording and Bluetooth sensors.
Dev tools · 2d ago · opentrailpaper.com

Launched alongside, November 2022
the whole month →


- TC
I made a thing! In 2014, I was holding a stack of iPhones and thought to myself: "Hey, if I had each phone display a playing card, I could click a button and they'd shuffle themselves" I pared that idea all the way down to this: trading cards made of e-ink displays. Right now, each card costs me about $20 each, but with only a bit more scale, I think I can get that down to $10. In doing this project, I learned how to design electronics and circuit boards. I learned Rust and wrote my first driver, I upped my CAD skills, 3D printed, and did my first resin casting. I generated the images on the…
Dev tools · 2022 · wyldcard.io

