Crypt: A Cipher and Code-Breaker
Write your own encryptor and decryptor, then build the frequency attack that cracks a message with no key, exactly how real codebreakers do it.
What you'll be able to build
Write your own encryptor and decryptor, then build the frequency attack that cracks a message with no key, exactly how real codebreakers do it. Along the way you pick up real, transferable Ruby skills, not just this one project:
- character math with ord and chr
- modular arithmetic
- map and join over characters
- methods with inverse operations
- tally and frequency analysis
- a brute-force scoring loop
A course like this one
Yours is built from your own placement, so module count and depth will differ. This map shows what a intermediate-level Ruby learner building Crypt actually gets.
- Module 1: Values, strings, and puts5 lessons
Builds the script for your crypt.
- Module 2: Collections: arrays, hashes, and Enumerable5 lessons
Builds the module workflow for your crypt.
- Module 3: Control flow, truthiness, and predicting output5 lessons
Builds the method that powers your crypt.
- Module 4: Methods, blocks, and reading errors5 lessons
Builds the reusable class for your crypt.
- Module 5: Classes, modules, and program design5 lessons
Builds the collection pipeline for your crypt.
- Module 6: Shipping a reusable Ruby tool3 lessons
Builds the command-line tool for your crypt.
How the lessons actually work
Every lesson has you predict what a piece of Ruby code will output before you run it, then run it for real in your browser and fix what you got wrong. Each module ends in a challenge gate with hidden tests, so you can't advance until your code actually works. The course closes with a capstone that assembles everything into Crypt, and a runnable proof page tied to your own code.
Common questions
How long does the Crypt: A Cipher and Code-Breaker course take?
about 7 hours, across 6 modules and 28 lessons, at roughly 15 minutes per lesson. Your own course may run shorter or longer, since it's sized to your placement result, not a fixed template.
Do I need experience?
Some. This is an intermediate-tier Ruby project, so it assumes you're comfortable with Ruby basics and pushes past them.
How much does it cost?
$15 one-time, no subscription. The first module is free, so you can see exactly how the course teaches before you pay for the rest.