misc crc碰撞和 buuctf crypto相关题

文章介绍了多种密码学中的解码方法,包括ASCII码转换、base64解密、RSA加密算法的详细步骤,以及如何处理ZIP文件头尾来解压文件。还涉及了其他加密技术如MD5和凯撒密码的使用,并给出了解密过程的实际案例。
摘要由CSDN通过智能技术生成

好用的解码工具

 一些密码知识,详情见

buuctf misc

另外一个世界

拿到图片,以文本文档形式打开,发现有一段二进制码:01101011 01101111 01100101 01101011 01101010 00110011 01110011。

每8位分开,转化为10进制为:107 111 101 107 106 51 115。

在用ascii码转换为字母得:koekj3s.

crc碰撞

将压缩文件与python脚本放在一起,运行一下这个脚本

在output里可以得到一串base64加密的密文。

 base64解密

用上面网站解密,可以得到十六进制

zip 文件头 50 4B 03 04 0A 00 00 00

zip 文件尾 50 4B 05 06 00 00 00 00 + 其他字符

发现最后为zip文件尾,给它加上文件头,重新打开文件,得到flag。

 

RSA

rsa是一种能够非对称加密算法。

1.生成N

N=P * Q

P,Q为两个很大的质数,一般随机生成,若P,Q很小,则密文,明文的求解过程就会很容易。

2.求 \varphi

\varphi = (P - 1) * (Q - 1)

3.e的求解

e与\varphi互质,gcd(\varphi, e) = 1.

4.求d

e*d mod \varphi=1

则密文c为

\equivm^{e} mod N

明文m为

m \equivc^{d} mod N

超长正整数的分解

逆元

上述过程中d的求解:e*d mod \varphi=1,可以写为e * d \equiv 1 (mod \varphi),形如这种形式,d可称为e的逆元,逆元的求解可以用费马小定理求解(费马小定理:x^{y - 1} \equiv 1(mod y),y 是一个质数,且y不能整除x),则d = e^{\varphi - 2} mod \varphi

base相关密码特征

BUUCTF crypto

MD5

md5解密就行

一眼就解密

base64解密

Url编码

url解码就行

看我回旋踢

由 s到y计算出偏移量

摩丝

摩斯密码解密

password

flag为姓名首字母加生日

变异凯撒afZ_r9VYfScOeO_UL^RWUc

因为密文里含有_,^等符号,推测为ASCII码偏移,因为首位四个字母要为flag,则第一个偏移量为5,第二个偏移量为6,第三个偏移量为7,第四个偏移量为8,故第五个为9,以此类推

得到flag{Caesar_variation}。

Quoted-printable

直接解码

Rabbit

Rabbit解密

篱笆墙的影子

 RSA

使用RSA—Tool 2工具可以解决。

丢失的MD5

打开发现是一个python文件,最后一行加上括号,运行,发现有错误。

 提示字符串必须要经过编码。

Alice与Bob

大整数分解

 md5加密

先进行大整数分解:

 

 大帝的密码武器

将文件后缀名改为zip,得到两个文件,根据其中的内容,推测为凯撒密码。

发现第十三行为有意义的单词,故偏移量为13,用13再对附件中文字加密,可得flag。

rsarsa

首先根据p,q,e,求出d.

e = 65537
p = 9648423029010515676590551740010426534945737639235739800643989352039852507298491399561035009163427050370107570733633350911691280297777160200625281665378483
q = 11874843837980297032092405848653656852760910154543380907650040190704283358909208578251063047732443992230647903887510065547947313543299303261986053486569407
n = p*q

C = 83208298995174604174773590298203639360540024871256126892889661345742403314929861939100492666605647316646576486526217457006376842280869728581726746401583705899941768214138742259689334840735633553053887641847651173776251820293087212885670180367406807406765923638973161375817392737747832762751690104423869019034

d = 56632047571190660567520341028861194862411428416862507034762587229995138605649836960220619903456392752115943299335385163216233744624623848874235303309636393446736347238627793022725260986466957974753004129210680401432377444984195145009801967391196615524488853620232925992387563270746297909112117451398527453977

#求明文
M = pow(C,d,n)    
print(M)

 运行求出明文,得到flag

Windows系统密码

 md5解密一下ctf,即可得。

信息化时代的步伐

中文电码解密

凯撒?替换?呵呵!

凯撒密码实际上也是一种替换的关系简单替换密码

萌萌哒的八戒

仔细看图片下方有一段密文,是猪圈密码,解密可得flag ,注意小写。

传统知识+古典密码

根据六十甲子表,列出各个年份的数字。28 30 23 08 17 50 16 30

加上甲子,一甲子是60年,所以加上60得:88 90 83 68 77 70 76 90

对应ascii码表得:XZSDMFLZ,提交一下,发现不对,用栅栏密码试试。

发现也不太像flag,再试试凯撒密码,发现有一个像是拼音。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值