aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Wang2025-05-11 23:10:28 -0400
committerAnthony Wang2025-05-11 23:10:34 -0400
commitfd73b401849b15f1222a1a22fbac6fab161144f9 (patch)
treeef9deaf87be582d8a8b1146d4ae77f9f6fdca6b1
parente2049f64a02d4377b14a107186cf81af6fe87efc (diff)
DUMB CIPHER SOLVER
-rw-r--r--content/posts/dumb-cipher-solver.md18
1 files changed, 18 insertions, 0 deletions
diff --git a/content/posts/dumb-cipher-solver.md b/content/posts/dumb-cipher-solver.md
new file mode 100644
index 0000000..a822be5
--- /dev/null
+++ b/content/posts/dumb-cipher-solver.md
@@ -0,0 +1,18 @@
+---
+title: "Dumb Cipher Solver"
+date: 2025-05-11T21:20:06-04:00
+draft: true
+description: "Solving substitution ciphers using Rust, MCMC, and CNNs"
+type: "post"
+tags: ["rust", "machine-learning"]
+---
+
+
+I'm taking a statistical inference class (6.7800) at MIT this semester and honestly I didn't like the class that much, but the [final project assignment](https://git.unnamed.website/6.7800-project/plain/project.pdf) got me hooked. It's the same task for everyone: write a program to decode substitution ciphers (think ROT13 or the Caeser cipher but the alphabet can be scrambled with an arbitrary permutation), but there's a twist! The first portion of the text is encoded using one permutation and the second portion is encoded using a different permutation, and you don't know where the breakpoint is!
+
+It turns out the solution is just "do super dumb brute force a gazillion times" using blazingly fast fearless concurrency Rust (instead of Python like everyone else). Oh yeah, and throw in some ✨AI✨ just for good measure. (My AI can't generate text so hopefully it doesn't take over the world.)
+
+- Writeup: https://git.unnamed.website/6.7800-project/plain/report.pdf (half of it is about various engineering challenges with submitting to the grading server)
+- Code: https://git.unnamed.website/6.7800-project/tree/src/main.rs (you can tell it's all human-written since it's garbage in a characteristically human way)
+
+There's a leaderboard for this project based on decoding some secret test cases on a grading server. This stupidity is currently first place.