๐ Cypherpunk School Resources
Everything you need to support your learning: installation guides, command references, foundational reading, and advanced topics.
๐ Essential Tool Installation
Core Encryption Tools (Weeks 1-5)
GnuPG (GPG) - Public Key Cryptography
# Debian/Ubuntu
sudo apt install gnupg
# Arch Linux
sudo pacman -S gnupg
# macOS
brew install gnupg
age - Modern File Encryption
# Using Go
go install filippo.io/age/cmd/...@latest
# From GitHub releases
https://github.com/FiloSottile/age/releases
- age GitHub Repository
- age-plugin-yubikey - Hardware key support
gocryptfs - Encrypted Filesystems
# Debian/Ubuntu
sudo apt install gocryptfs
# Arch Linux
sudo pacman -S gocryptfs
# From source
https://github.com/rfjakob/gocryptfs
Networking & Anonymity (Weeks 6-7)
Tor - Anonymous Networking
# Debian/Ubuntu
sudo apt install tor
# Arch Linux
sudo pacman -S tor
# macOS
brew install tor
WireGuard - Modern VPN
# Debian/Ubuntu
sudo apt install wireguard
# Arch Linux
sudo pacman -S wireguard-tools
SSH - Secure Shell
# Usually pre-installed on Linux/macOS
# Debian/Ubuntu
sudo apt install openssh-client openssh-server
# Generate keys
ssh-keygen -t ed25519 -C "[email protected]"
๐ Quick Reference Cards
GPG Command Cheat Sheet
# Generate new keypair
gpg --full-generate-key
# List keys
gpg --list-keys
gpg --list-secret-keys
# Export public key
gpg --armor --export [email protected] > pubkey.asc
# Import public key
gpg --import pubkey.asc
# Encrypt file
gpg --encrypt --recipient [email protected] file.txt
# Decrypt file
gpg --decrypt file.txt.gpg > file.txt
# Sign file
gpg --sign file.txt
# Verify signature
gpg --verify file.txt.sig
age Command Cheat Sheet
# Generate new keypair
age-keygen -o key.txt
# Encrypt with public key
age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p file.txt > file.txt.age
# Decrypt with private key
age --decrypt -i key.txt file.txt.age > file.txt
# Encrypt with passphrase
age --passphrase file.txt > file.txt.age
# Encrypt to multiple recipients
age -r recipient1_pubkey -r recipient2_pubkey file.txt > file.txt.age
SSH Command Cheat Sheet
# Connect to remote host
ssh user@hostname
# Copy files to remote (scp)
scp file.txt user@hostname:/remote/path/
# Copy files to remote (rsync)
rsync -avz file.txt user@hostname:/remote/path/
# Port forwarding (local)
ssh -L 8080:localhost:80 user@hostname
# Port forwarding (remote)
ssh -R 8080:localhost:80 user@hostname
# SOCKS proxy
ssh -D 1080 user@hostname
# Copy SSH key to remote
ssh-copy-id user@hostname
๐ Foundational Reading
Required Reading (Start Here)
The Cypherpunk Manifesto (1993)
Why Privacy Matters
Recommended Books
Beginner-Friendly:
- Crypto 101 by Laurens Van Houtven (Free PDF: crypto101.io)
- The Code Book by Simon Singh - History of cryptography
- Permanent Record by Edward Snowden - Why privacy matters
Intermediate:
- Applied Cryptography by Bruce Schneier - Comprehensive crypto reference
- Security Engineering by Ross Anderson (Free: cl.cam.ac.uk/~rja14/book.html)
- Practical Cryptography by Niels Ferguson & Bruce Schneier
Advanced:
- Serious Cryptography by Jean-Philippe Aumasson
- Real-World Cryptography by David Wong
- Cryptography Engineering by Ferguson, Schneier, Kohno
๐ Community & Discussion
Cypherpunk Communities
Forums & Discussion:
- r/privacy - Privacy news and discussion
- r/crypto - Cryptography discussion (academic)
- Cypherpunks Mailing List Archive
Learning Platforms:
- CryptoHack - Learn cryptography through challenges
- Cryptopals - Crypto challenges and exercises
News & Blogs:
- Schneier on Security - Security and privacy commentary
- Filippo Valsorda’s Blog - Cryptography insights
- Trail of Bits Blog - Security research
Cypherpunk School Community
Feedback & Questions:
- ๐ง Email: [feedback email coming soon]
- ๐ GitHub: [repository link coming soon]
- ๐ฌ Matrix Chat: [coming soon]
๐ Hardware Security
Recommended Hardware Keys
YubiKey
- Multi-protocol: FIDO2, U2F, OTP, PIV, OpenPGP
- Use with GPG, SSH, age-plugin-yubikey
- YubiKey Store
Nitrokey
- Open source hardware
- Full GPG support
- Nitrokey Store
SoloKeys
- Open source FIDO2 keys
- SoloKeys Store
Hardware Recommendations
- Secure USB drives: IronKey, Apricorn Aegis
- Encrypted external drives: Self-encrypting drives (SEDs)
- Dedicated offline machines: For key generation and signing
๐ Advanced Topics
Post-Quantum Cryptography
Articles:
- Cloudflare’s Lattice Cryptography Primer
- The State of the Post-Quantum Internet (2024)
- NIST PQC Standardization
- Post-quantum cryptography (Wikipedia)
Tools:
- Open Quantum Safe (OQS) - PQ toolkit for TLS/SSH
- PQCrypto Project - Lattice-based algorithms
- age-plugin-pq - Post-quantum age plugin
Zero-Knowledge Proofs
Learning Resources:
- Why and How zk-SNARK Works (paper) - Academic explainer
- ZK Privacy Demo - BattleZips playlist
- Introduction to zk-SNARKs with circom
Tools:
- circom & snarkjs - zkSNARK framework
- Semaphore Protocol - Anonymous signaling on Ethereum
Self-Sovereign Identity
Articles:
Tools:
- DIDKit by SpruceID - DIDs and Verifiable Credentials
Metadata-Resistant Messaging
Nym Mixnet:
- Nym Official Documentation
- Nym Mixnet Wikipedia
- NYM 101 - How to set up a Nym mix node
- Install a Nym Mixnet Node Tutorial
- nymtech/nym GitHub - Rust implementation
๐งญ How to Use These Resources
For Week 1-3 Students:
- Start with Essential Tool Installation (GPG, age)
- Read The Cypherpunk Manifesto
- Use Quick Reference Cards for command lookups
- Join Cypherpunk Communities for questions
For Week 4-8 Students:
- Install Networking & Anonymity tools (Tor, SSH, WireGuard)
- Read Recommended Books (beginner section)
- Practice with CryptoHack challenges
- Explore Hardware Security options
For Week 9+ Students:
- Dive into Advanced Topics based on interest
- Contribute to Cypherpunk Communities
- Experiment with advanced tools
- Consider hardware keys for production use
This resource list grows with the course. Suggest additions via GitHub Issues or email.