![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
密码学
jinzhou742
理想主义者
展开
-
【密码学】Python实现md5&hash256&HMAC
import hashlibimport base64def md5(data: bytes) -> str: m = hashlib.md5(data) return m.hexdigest()def sha256(data: bytes) -> str: m = hashlib.sha256(data) return m.hexdigest()if __name__ == '__main__': message_hex = in..原创 2021-12-05 23:50:36 · 2903 阅读 · 0 评论 -
【密码学】Python实现Elgamal数字签名算法
Elgamal算法原创 2021-11-24 05:15:00 · 2211 阅读 · 0 评论 -
【密码学】Python实现RSA数字签名算法
程序要求清单:基本流程:运行结果:INPUT:34862844108815430278935886114814204661242105806196134451262421197958661737288465541172280522822644267285105893266043422314800759306377373320298160258654603531159702663926160107285223145666239673833817786345065431976764139550904原创 2021-11-24 05:15:00 · 3703 阅读 · 2 评论 -
【密码学】Diffie–Hellman Key Exchange
本程序演示如下过程:# ============================================================================# Copyright (c) 2021 Zhou Jin, Shandong University. All rights reserved.# Elgamal.py - The core part of this algorithm# Last edited time: 2021/11/3 15:48## THIS原创 2021-11-03 15:55:54 · 244 阅读 · 0 评论 -
【密码学】Python实现RSA加密/解密
主要方法:快速幂取模加快运算、Miller_Rabin方法判断大素数,扩展的欧几里得算法计算逆元import random# 求最大公约数def gcd(a, b): if a < b: return gcd(b, a) elif a % b == 0: return b else: return gcd(b, a % b)# 快速幂+取模def power(a, b, c): ans = 1 w原创 2021-10-29 20:26:49 · 586 阅读 · 0 评论 -
【密码学】Python实现Elgamal加密&解密算法
算法流程如下:import random# 求最大公约数def gcd(a, b): if a < b: return gcd(b, a) elif a % b == 0: return b else: return gcd(b, a % b)# 快速幂+取模def power(a, b, c): ans = 1 while b != 0: if b & 1:原创 2021-10-27 18:33:51 · 2146 阅读 · 0 评论 -
【密码学】Python使用AES-256-CBC/PKCS7进行对称加密/解密
使用AES-256-CBC进行加密解密,填充规则为PKCS7,实现方法为Python:import base64import pyaes# 把明文按照block_size进行拆分def split_to_data_blocks(byte_str, block_size=16): length = len(byte_str) j, y = divmod(length, block_size) blocks = [] remnant = j * block_size原创 2021-10-18 13:32:45 · 1626 阅读 · 0 评论 -
【密码学】AES动画演示
https://formaestudio.com/portfolio/aes-animation/原创 2021-10-17 20:29:55 · 613 阅读 · 0 评论