{"id":30865872,"url":"https://github.com/thedvlprguy/learn-rsa","last_synced_at":"2025-09-07T22:02:49.836Z","repository":{"id":308686349,"uuid":"1033710556","full_name":"thedvlprguy/learn-rsa","owner":"thedvlprguy","description":"a list of curated resources to learn rsa for ctfs","archived":false,"fork":false,"pushed_at":"2025-08-07T08:25:26.000Z","size":3,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-07T10:16:05.346Z","etag":null,"topics":["awesome","awesome-list","resources","rsa","rsa-algorithm","rsa-cryptography","rsa-encryption"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thedvlprguy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-07T08:25:00.000Z","updated_at":"2025-08-07T08:26:27.000Z","dependencies_parsed_at":"2025-08-07T10:17:54.044Z","dependency_job_id":"01984921-8fce-4815-b40c-fbaf2dcfbf02","html_url":"https://github.com/thedvlprguy/learn-rsa","commit_stats":null,"previous_names":["thedvlprguy/learn-rsa"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/thedvlprguy/learn-rsa","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thedvlprguy%2Flearn-rsa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thedvlprguy%2Flearn-rsa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thedvlprguy%2Flearn-rsa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thedvlprguy%2Flearn-rsa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thedvlprguy","download_url":"https://codeload.github.com/thedvlprguy/learn-rsa/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thedvlprguy%2Flearn-rsa/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274101768,"owners_count":25222447,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-07T02:00:09.463Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["awesome","awesome-list","resources","rsa","rsa-algorithm","rsa-cryptography","rsa-encryption"],"created_at":"2025-09-07T22:02:36.710Z","updated_at":"2025-09-07T22:02:49.811Z","avatar_url":"https://github.com/thedvlprguy.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🔐 Learn RSA: Rivest–Shamir–Adleman Cryptosystem\n\nRSA is one of the most widely used **public-key cryptosystems** in the world. It enables **secure data transmission** by using **asymmetric encryption** – with a **public key** for encryption and a **private key** for decryption.\n\nThis repository is your **one-stop guide to mastering RSA**, from foundational math to real-world cryptanalysis and coding.\n\n---\n\n## 📚 Topics You’ll Learn\n\n- ✅ What is RSA and how it works\n- ✅ Asymmetric vs symmetric cryptography\n- ✅ Mathematical background (modulus, primes, Euler’s totient)\n- ✅ Key generation (public/private)\n- ✅ Encryption and decryption process\n- ✅ Why RSA is secure\n- ✅ Code implementations\n- ✅ Real-world attacks and use-cases\n- ✅ Padding, hybrid encryption, TLS usage\n\n---\n\n## 📘 Learning Resources\n\n### 🛠️ Beginner-Friendly \u0026 Interactive\n\n1. [**Crypto101 - RSA**](https://crypto101.io/)\n   - Interactive explanations and padding schemes.\n\n2. [**Practical Cryptography for Developers**](https://cryptobook.nakov.com/)\n   - Hands-on guide with real-world examples.\n\n3. [**Visual RSA Walkthrough**](https://www.cs.drexel.edu/~jpopyack/IntroCS/HW/RSAWorksheet.html)\n   - Step-by-step RSA with small numbers (great for beginners).\n\n---\n\n### 📖 Academic \u0026 Deep Dive\n\n4. 📕 [**Understanding Cryptography** – Christof Paar \u0026 Jan Pelzl](https://www.springer.com/gp/book/9783642041006)\n   - Highly recommended RSA explanation (Chapter 6).\n\n5. 📘 [**Handbook of Applied Cryptography** – Free PDF](https://cacr.uwaterloo.ca/hac/)\n   - Chapter 8 gives in-depth RSA theory and algorithms.\n\n6. 📙 **Applied Cryptography** – Bruce Schneier  \n   - Detailed cryptographic protocols and industry-grade insights.\n\n---\n\n### 🧪 Code Labs \u0026 Gamified Learning\n\n7. [**Try RSA live** (small prime demo)](https://www.cs.drexel.edu/~jpopyack/IntroCS/HW/RSAWorksheet.html)\n\n8. [**CryptoHack – RSA Challenges**](https://cryptohack.org/)\n   - Practice RSA encryption, decryption, and attacks in a gamified way.\n\n9. [**Python RSA from Scratch (YouTube)**](https://www.youtube.com/watch?v=4zahvcJ9glg)\n   - Step-by-step implementation in Python.\n\n---\n\n### 🧰 Tools to Help You\n\n- 🔢 [**dCode RSA Tool**](https://www.dcode.fr/rsa-cipher) – Encode/decode RSA easily  \n- 🧠 [**WolframAlpha Modular Calculator**](https://www.wolframalpha.com/input?i=modular+arithmetic) – For modulus arithmetic  \n- 💻 [**OpenSSL CLI**](https://wiki.openssl.org/index.php/Command_Line_Utilities) – Generate RSA keys and certificates  \n\n---\n\n## 🧭 Next Steps\n\nOnce you're comfortable:\n\n- 📌 Learn about **RSA Padding Schemes** (OAEP, PKCS#1)\n- 🧨 Explore **Attacks on RSA** (Timing attacks, Chosen ciphertext, etc.)\n- 🔐 Understand **Hybrid Encryption** (RSA + AES)\n- 🌐 Study RSA in **TLS/SSL**, **SSH**, and real-world applications\n\n---\n\n## ⚙️ Want to Build?\n\nIf you'd like to:\n\n- ✏️ Implement RSA in Python or C++\n- 🧪 Build your own RSA encryption/decryption terminal tool\n- 🚩 Solve real-world RSA Capture-the-Flag (CTF) problems\n\n\u003e Open an issue or start a discussion – let’s build it together!\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthedvlprguy%2Flearn-rsa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthedvlprguy%2Flearn-rsa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthedvlprguy%2Flearn-rsa/lists"}