fox的密码学习记录
  • Hejmpaĝo
  • Arkivoj
  • Kategorio
  • Etikedoj
  • Pri
  • Ligoj

伪随机数生成器(PRNG)前言随机数生成分为伪随机,真随机。真随机是利用现实中的电子元件噪音来生产的。 伪随机数:用真随机数生成种子,用伪随机数生成器生成伪随机数位流 PRNG算法大致分为两类: 专用算法:为生成伪随机位流而专门设计。 基于现有密码算法的算法:密码算法会随机化输入数据。 对称分组密码、 哈希函数 消息验证码 专用算法LCG(线性同余生成器)$x_{n+1}=
2025-01-11

楚慧杯(原题杯)抽象lcg

DASCTF(2024楚慧杯原题杯)的一道抽象lcg做题过程一些吐槽为什么翻遍全网都没有这道题wp,对于真菜的我,手搓有点难泵 做题过程12345678910111213141516171819202122from Crypto.Util.number import *from random import *from secret import flagLENGTH = 512RATIO = 0.
2025-01-09
z3 > crypto
#crypto #python #Lcg

DSA签名算法

DSA签名算法DSA算法简介DSA(Digital Signature Algorithm)是Schnorr和ElGamal签名算法的变种,被美国NIST作为DSS(DigitalSignature Standard) 数字签名的标准。 DSA是一种更高级的验证方式,它是一种公开密钥算法,不能用来加密数据,一般用于数字签名和认证。DSA 不单单只有公钥、私钥,还有数字签名。私钥加密生成数字签名,公
2024-12-29
crypto
#crypto

RSA维纳攻击及其扩展

RSA两种特殊攻击情况P和q的不当分解|p-q|很大时,一定存在某个参数ip较小,这里我们假设p较小我们可以通过穷举法分解模数,但是很少遇到 |p-q|较小 $(p+q)^2/4-n=(p-q)^2/4$; |p-q|较小,那么(p-q)/2和n^1/2^也比较接近 顺序检查 √nn 的每一个整数 x,直到找到一个 x 使得 x2−nx2−n 是
2024-12-29
crypto > RSA
#crypto #RSA

CRT中国剩余定理复现

极客大挑战2024中国剩余定理复现CRT(中国剩余定理)一些定理的证明1.证明辗转相除法 a=bq+r 证明gcd(a,b)=gcd(b,r) 已知gcd(a,b)|a,gcd(a,b)|b r=a-bq,—>gcd(a,b)|r 所有gcd(a,b)<=gcd(b,r) gcd(b,r)|b,gcd(b,r)|r并且gcd(b,r)|a 所以
2024-12-29
crypto
#crypto

AES加密以及代码实现

AES加密回顾以及代码实现Rijndael_Animation_v4_eng-html5 这里放了一个动态演示AES加密过程的网站,有兴趣的可以观看,建议挂代理食用 Rcon是轮常量: 前言接触密码学也两个月了,之前是学过AES的但是都是简单看了下大概,打CTF的时候喜欢python库脚本一把梭,对AES涉及的一些数学原理不理解,希望尝试用python实现AES加密。 重要的前置知识,有限域多项式
2024-12-24
python > crypto
#crypto #python #algorithm

DH密钥交换协议

DH 密钥交换协议在基于对称加密进行安全通信的过程中,通信双方需要持有一个共享的密钥。只有这样,由任何一方加密的信息才能由另一方使用相同的密钥解密。但是在能够安全的通信之前,通信双方应该如何约定一个共享的密钥呢?这就是安全中的经典问题:密钥配送问题(Key Distribution Problem[1])。 Diffe-Hellman密钥交换协议只是其中一种约定功能共享密钥的方式, DHKE协议简
2024-12-23
crypto
#crypto #Hexo

格密码

LLL算法 简介:LLL算法用于解决最短向量问题的多项式时间复杂度算法。 LLL算法解释对格的认识 不同的基也可以生成同一个格。 例如一个基向量是(1,0)和(0,1)构成的格。该格用数学符号表示。 格的维数:即向量的个数,上述表示的是一个二维的格。 然后根据系数a的不同就能得到不同的L集合。 假定现在v1,v2,v3…vn(称为张空间) 是格L的基,让存在不同个集合属于L 即w1 w2 …
2024-12-23
crypto
#crypto

MD5算法原理以及实现

MD5算法 MD5(单向散列算法) 的全称是Message-Digest Algorithm 5(信息-摘要算法) MD5的功能: 输入任意长度的信息,经过处理,输出位128位的信息;不同的输入可以得到不同的结果(唯一性) 根据128位输出结果反推出输入信息是及其困难的(不可逆) 散列函数 散列函数是一种将输入数据映射到固定大小的散列值的函数。它通过对输入数据进行计算,生成一个唯一的散列
2024-04-23
cpp > crypto
#crypto #algorithm #cpp

weil pairing

Weil paIring 前言 编者对群的了解比较基础,可能一些证明不太会 借鉴crypt03-15.tex.dvi 双线性映射 在数学中,一个双线性映射是由两个向量空间上的元素,生成第三个向量空间上一个元素之函数,并且该函数对每个参数都是线性的。例如矩阵乘法就是一个例子。 线性性 x,x’∈V,y’∈W,以及标量a,b为整数,双线性映射$f:V×W→K$ 必须满足: $f(ax+bx’
2024-01-16
crypto > ecc
#crypto #Hexo
12

Serĉi

Hexo Fluid