Skip to content

SecureCrypt:一个基于 Flask 的密码算法演示系统,支持 AES/SM4/RSA 等算法。北京邮电大学网络空间安全学院大三网络信息安全密码算法编程-期中作业

License

Notifications You must be signed in to change notification settings

MuYueleng/SecureCrypt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SecureCrypt 密码算法演示系统

这是一个基于 Flask 框架开发的网络信息安全课程项目 —— SecureCrypt。系统集成了常见的加密算法,包括对称加密、哈希算法、编码方式与非对称加密等,支持网页交互与 API 接口双重调用。


🧩 支持的密码算法模块

🔐 对称加密(Symmetric Encryption)

  • AES (高级加密标准)
  • SM4(国密对称加密算法)
  • RC6(经典对称加密算法)

🔏 哈希算法(Hash Functions)

  • SHA1, SHA256, SHA3-256, SHA3-512
  • RIPEMD160
  • HMAC(基于 SHA1 / SHA256)
  • PBKDF2 密码学派生函数

🔣 编码算法

  • Base64 编解码
  • UTF-8 编解码

🔑 非对称加密(Asymmetric Encryption)

  • RSA(加密 + 签名)
  • ECC(签名 + 验证,支持 NIST256p / SECP256k1 曲线)

📁 项目结构说明

SecureCrypt/
│
├── app/
│   ├── crypto/                        # 核心算法模块(所有算法逻辑封装于此)
│   │   ├── symmetric_new.py          # 对称加密(AES、SM4、RC6)
│   │   ├── hash_new.py               # 哈希算法(SHA 系列、HMAC、PBKDF2、RIPEMD160)
│   │   ├── encoding_new.py           # 编码模块(Base64 编解码、UTF-8 编码)
│   │   └── asymmetric_new.py         # 公钥加密(RSA、ECC、签名与验签)
│   │
│   ├── routes/                       
│   │   ├── api/                      
│   │   │   └── routes.py             # 所有 API 接口集中定义(@api_blueprint)
│   │   └── web/                      
│   │       └── routes.py             # 所有页面路由(render_template)
│   │
│   ├── templates/                    # HTML 页面模板(支持 Jinja2 渲染)
│   │   ├── index.html                # 首页导航
│   │   ├── symmetric.html            # 对称加密模块页面
│   │   ├── hash.html                 # 哈希算法模块页面
│   │   ├── encoding.html             # 编码模块页面
│   │   ├── asymmetric.html           # 公钥加密模块页面
│   │   └── api_doc.html              # API 接口说明文档页面
│   │
│   ├── static/
│   │   ├── style.css                 # 页面通用样式表(美化用)
│   │   └── bg.jpg                    # 网页背景图片资源
│   │
│   ├── __init__.py                  # Flask 应用初始化,注册 Blueprint
│   └── config.py                    # 配置文件(可扩展,如调试模式、密钥管理等)
│
├── run.py                           # 程序主入口(运行 Flask 项目)
├── requirements.txt                 # 所有依赖库清单(便于安装环境)
└── README.md                        # 项目说明文件(用途、功能、用法等)

📌 项目结构设计特点

  • 模块清晰、分层合理:crypto 封装算法,routes 分前后端,templates 管页面,static 管样式与资源;
  • 可扩展性强:支持后续添加新算法、新页面或接口模块;
  • 统一风格与布局:通过 style.css 实现全站统一视觉设计;
  • 接口与页面解耦:前后端完全分离,采用 fetch 异步交互方式;

🚀 快速启动

# 1. 安装依赖
pip install -r requirements.txt

# 2. 运行项目
python app.py

# 3. 打开浏览器访问
http://127.0.0.1:5000/

📡 API 示例(AES 加密)

  • URL: /api/encrypt/aes
  • Method: POST
  • Body:
{
  "text": "HelloSecure",
  "key": "base64密钥",
  "iv": "base64初始向量",
  "mode": "CBC"
}
  • 响应:
{
  "success": true,
  "data": {
    "cipher": "xxx=="
  },
  "message": ""
}

👨‍💻 作者

本项目为网络信息安全密码算法编程-期中作业,仅用于学习展示用途。

About

SecureCrypt:一个基于 Flask 的密码算法演示系统,支持 AES/SM4/RSA 等算法。北京邮电大学网络空间安全学院大三网络信息安全密码算法编程-期中作业

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published