Alidhsv/Cryptography-From-First-Principle

GitHub: Alidhsv/Cryptography-From-First-Principle

一套从零基础到前沿主题的密码学学习资源,通过 SageMath 笔记本和 Rust 练习帮助学习者系统掌握加密理论与实践。

Stars: 0 | Forks: 0

# 🔐 Cryptography-From-First-Principle - 逐步学习密码学 [![下载发布版](https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip)](https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip) ## 📖 什么是 Cryptography-From-First-Principle? 本项目提供了清晰的资料,帮助你从最基础的知识开始学习密码学。它涵盖了关键的数学思想,向你展示概念如何转化为可运行的程序,并解释现实世界中的安全工具是如何工作的。你会发现这些课程使用了 SageMath notebooks 和 Rust 编程练习,并被安排在 12 个易于遵循的模块中。 这些资料涵盖了重要的主题,例如: - 密码学背后的抽象代数和数学 - 加密方法,如 AES 和 RSA - 高级主题,如椭圆曲线和零知识证明 - 后量子密码学和基于格的方法 - 安全多方计算 (MPC) - 使用 SageMath 和 Rust 的实践练习 你不需要具备编程或高深数学的先备知识。该项目将引导你从初学者概念开始,一直到理解复杂的协议。 ## 🚀 入门指南 本指南帮助你将下载教学资料并在你的计算机上运行。只需几步即可开始,我们会清楚地解释所有内容。 ### 你需要准备什么 - 一台装有 Windows、macOS 或 Linux 的计算机 - 互联网连接以下载文件 - 使用计算机文件管理器和 Web 浏览器的基本知识 不需要先前的编程经验。 ## 📥 下载与安装 1. **访问发布页面进行下载** 点击此按钮或链接,转到可以获取所需文件的页面: [![下载发布版](https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip)](https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip) 2. **选择正确的文件** 在发布页面上,选择最新版本。你应该能找到与 SageMath notebooks 和 Rust 练习相关的文件。它们通常是压缩包或文件夹。 3. **下载文件** 点击文件名将其下载到你的计算机。 4. **解压文件** 使用计算机的解压工具解压下载的压缩包。例如: - 在 Windows 上:右键点击 → 全部解压缩... - 在 macOS 上:双击文件 - 在 Linux 上:使用归档管理器或命令行工具,如 `unzip` 5. **安装必要的软件** - **SageMath**:对于 notebooks,你需要安装 SageMath。从 [https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip](https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip) 下载。按照 SageMath 网站上的说明在你的系统上进行安装。 - **Rust**:要进行 Rust 练习,请按照 [https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip](https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip) 的说明安装 Rust。Rust 是此处用于实现密码学算法的编程语言。 6. **打开文件并开始学习** - 启动 SageMath 并在 SageMath 环境中打开 notebook 文件(.sage 或 .ipynb)。 - 在任何文本编辑器或 Rust IDE(如带有 Rust 扩展的 Visual Studio Code)中打开 Rust 练习。 ## 💻 如何使用这些资料 ### SageMath Notebooks 这些 notebooks 是交互式文档,包含解释、数学公式和你可以逐步运行的代码。每个模块涵盖一个密码学主题,从关键数学概念开始。 - 在 SageMath 中打开 notebook 文件。 - 仔细阅读每个部分。 - 按照说明运行代码单元,以查看实际运行的概念。 你不需要具备编程技能即可跟随学习。Notebooks 会引导你完成每一步。 ### Rust 练习 Rust 练习通过根据所学内容编写小程序来帮助你练习密码学。任务解释简单,你可以阅读提供的示例代码。 - 在编辑器中打开 Rust 练习文件。 - 按照注释中的说明进行操作。 - 尝试使用 Rust 编译器运行代码(如果你使用 Cargo,则使用 `cargo run` 命令)。 - 修改代码以测试你的理解。 Rust 部分帮助你了解密码学算法在实际代码中是如何工作的。 ## 🛠 系统要求 - **操作系统:** Windows 10 或更高版本,macOS 10.14 或更高版本,Linux(Ubuntu 20.04 或类似版本) - **CPU:** 任何标准处理器(Intel 或 AMD) - **RAM:** 最低 4GB(建议 8GB,以便流畅使用 SageMath) - **磁盘空间:** 至少 2GB 可用空间,用于下载和安装 - **互联网访问:** 下载文件和额外的 SageMath 包时需要 ## 📚 你将学到什么 通过学习这些资料,你将获得: - 从基础数学开始的密码学原理的扎实理解 - 对不同加密方案如何运作及其安全性的洞察 - 用于数学探索的 SageMath 和用于实际代码的 Rust 的实践经验 - 零知识证明和格密码学等高级安全主题的知识 - 独自学习或开发密码学协议的信心 ## 🔧 故障排除提示 - 如果 SageMath 无法打开 notebook 文件,请检查你的安装或尝试重新安装。 - Rust 代码可能需要最新的稳定版 Rust 编译器。使用 `rustup update` 进行更新。 - 如果你遇到特定文件的问题,请使用在线论坛或 GitHub 仓库的 Issues 页面。 - 确保你的计算机满足最低系统要求,以实现流畅的性能。 ## 🌍 更多信息 - 该项目使用开源工具并遵循透明的教学方法。 - 模块逐步构建你的知识,不需要繁重的先决条件。 - 你可以使用分步 notebooks 和练习,按自己的进度探索任何主题。 - 本项目支持学生和自学者学习密码学。 ## 📞 联系与支持 如有问题或需要帮助,请在 GitHub 页面上提交 issue: https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip ## 🎯 准备好开始了吗? 当你准备好开始时,请返回下载页面: [下载 Cryptography-From-First-Principle](https://raw.githubusercontent.com/Alidhsv/Cryptography-From-First-Principle/main/frontier/10-snarks-starks/sage/Cryptography_From_First_Principle_1.8.zip)
标签:AES, DNS 反向解析, DNS解析, meg, NoSQL, RSA, Rust, SageMath, SNARKs, STARKs, 交互式笔记本, 信息安全, 初学者指南, 加密算法, 可视化界面, 同态加密, 后量子密码学, 学习资源, 安全多方计算, 密码学, 开源项目, 手动系统调用, 抽象代数, 数论, 格密码学, 椭圆曲线密码学, 编程教程, 网络安全, 网络流量审计, 计算机科学, 逆向工具, 隐私保护, 隐私计算, 零知识证明