这个模块提供了一些方法进行AES128的加密和解密 目标支持多种工作模式和填充
当前支持的工作模式:ECB 当前支持的填充方式:None (意味着目前的输入字节长度只能是16的整数倍)
(实验一要求的功能已完成)
加密和解密结果均支持以 文本、hex、二维矩阵格式输出
这个模块完全使用python原生库实现,无需安装第三方库
./AES128/Python3
├── __pycache__ # python字节码保存目录
├── AES.py # AES分组管理、模式管理及运算
├── AK.py # 计算轮密钥
├── MC.py # (逆)列混淆
├── NS.py # (逆)字节代换
├── SR.py # (逆)行变换
└── main.py # 加密解密展示、AES类使用示例
这个模块用于RSA算法的加密和解密
当前支持一定位数(包括2048)的公钥私钥生成
大质数的生成采用miller_rabin判别法
模逆元的求解使用拓展欧几里得算法
明文、密文的求解采用了python内置的快速幂取模方法pow
加密和解密结果均以hex编码格式输出, 但是utils中提供了hex编码和utf-8字符文本相互转换的函数
这个模块完全使用python原生库实现,无需安装第三方库
.
├── __pycache__ # python字节码保存目录
├── RSA.py # 基于RSA算法的加密解密
├── main.py # 加密解密展示、RSA类使用示例
└── utils.py # 一些数学和编码相关的工具函数
本次实验来自于SEED 实验室(https://seedsecuritylabs.org/),共需要完成如下4个小任务。通过这4个任务完成对一个服务器网站的 Hash 扩展攻击,并对 Hash 扩展攻击进行防御验证。
任务1:发送请求来列出所有文件
任务2:创建Padding
任务3:长度扩展攻击
任务4:使用 HMAC 来抵御长度扩展攻击
具体实验环境搭建请参考链接. https://seedsecuritylabs.org/Labs_20.04/Crypto/
.
├── Hash_Length_Ext.md # 实验过程记录
├── __pycache__ # python字节码保存目录
├── assets # 附件
├── Labsetup # 实验环境docker文件夹
├── hmac256.py # HMAC-256脚本
├── length_ext.c # MAC-256长度拓展攻击脚本
└── length_ext # MAC-256长度拓展攻击脚本可执行文件
这个模块模拟了ElGamal数字签名算法
当前支持ElGamal一定位数的公钥对私钥生成
大质数的生成采用miller_rabin判别法
模逆元的求解使用拓展欧几里得算法
签名和认证采用了python内置的快速幂取模方法pow
.
├── __pycache__ # python字节码保存目录
├── ElGamal.py # ElGamal数字签名算法实现
├── main.py # 模块使用示例
└── utils.py # 辅助函数
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。