无题
title: buuctf题解date: 2022-03-21 20:28:10categories:tags: 题解
[NCTF2019]childRSA以下是题目:
123456789101112131415161718192021from random import choicefrom Crypto.Util.number import isPrime, sieve_base as primesfrom flag import flagdef getPrime(bits): while True: n = 2 while n.bit_length() < bits: n *= choice(primes) if isPrime(n + 1): return n + 1e = 0x10001m = int.from_bytes(flag.encode(), 'big')p, q = [getPrime(2048) for _ in range(2)]n = p * ...
hgame题解
Easy RSA以下是题目:
123456789101112131415161718from math import gcdfrom random import randintfrom gmpy2 import next_primefrom Crypto.Util.number import getPrimefrom secret import flag##意思是将flag进行了加密,让你解出flagdef encrypt(c): p = getPrime(8) q = getPrime(8) e = randint(0, p * q) while gcd(e, (p - 1) * (q - 1)) != 1: e = int(next_prime(e)) return e, p, q, pow(ord(c), e, p * q)if __name__ == '__main__': print(list(map(encrypt, flag))) # [(12433, 149, 197, 104), (8147, ...
cryptohack
course one题目1:数字转ascill码
题意:将数字转为ascill码
所以脚本可得:
123456b=[]a=[99, 114, 121, 112, 116, 111, 123, 65, 83, 67, 73, 73, 95, 112, 114, 49, 110, 116, 52, 98, 108, 51, 125]for i in a: b+=chr(i)print(b)#['c', 'r', 'y', 'p', 't', 'o', '{', 'A', 'S', 'C', 'I', 'I', '_', 'p', 'r', '1', 'n', 't', '4', 'b ...
MATH
####二次残差
Quadratic Residues
a^2^ $\equiv$ x mod p
即,a^2^>p时, (a^2^-x)是p的倍数 (当a^2^<p时, x = a^2^)
$\therefore$x= a^2^-mp (a^2^ > p)
例如:
12345678910p=7a += 1 1^2 = 1 (mod 7) # 1<7, x=a^2=12^2 = 4 (mod 7) # 4<7, x=a^2=43^2 = 2 (mod 7) # 9>7, x=a^2-p*1=24^2 = 2 (mod 7) # 16>7, x=a^2-p*2=25^2 = 4 (mod 7) # 25>7, x=a^2-p*3=46^2 = 1 (mod 7) # 36>7, x=a^2-p*5=1# 1,2,4 are Quadratic Residue of 7 # 3,5,6 are Quadratic Non-Residue of 7
Legendre Symbol
Euler 判别准则
对于 ...
CRYPTO
RSA的算法:1.任意选取两个不同的大素数p和q计算乘积n=p$\times$q
利用欧拉函数求出与n互质的数的个数$\varphi$(n)=(p-1)$\times$(q-1)
==欧拉函数:==
欧拉函数的定义:
欧拉函数(Euler’s totient function),即为$\phi$(n),是小于 n 且与 n 互质的数的个数
例如$\varphi$(7)=6,因为与7互质的数有1,2,3,4,5,6。所以只要n为素数则$\varphi$(n)=n-1
2.任意选取一个大整数e满足gcd(e,$\phi$(n))=1,整数e用作==加密钥==(1<e<$\phi$(n))
3确定解密钥d,满足(ed) mod $\varphi$(n) = 1,即ed = k $\times$$\varphi$(n) +1,k$\geq$1是一个任意整数
4.公开整数n和e,秘密保存d
5.将明文m加密为密文c的算m法为:
c ...