![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
crypto
文章平均质量分 64
逃课的小学生
这个作者很懒,什么都没留下…
展开
-
ASISCTF
warm up题目代码如下图所示,我们会发现整个加密过程如下所示,先在flag后面加上p长度的随机字符,然后选择pow(s,i,p)的结果选择字符重新连接字符串实现加密#!/usr/bin/env python3from Crypto.Util.number import *import stringfrom secret import is_valid, flagdef random_str(l): rstr = '' for _ in range(l): rstr += s原创 2021-10-31 23:40:16 · 623 阅读 · 0 评论 -
PBCTF2021
PBCTF20211 MISC1.1 幽灵作家 Ghost Writer2 Crypto2.1 Alkaloid Stream2.2 Steroid Stream1 MISC1.1 幽灵作家 Ghost Writer【题目介绍】当我在写我的新畅销小说的开头时,一个鬼魂占据了我的键盘并开始输入旗帜!我试图完成这个故事,但不久之后电脑就死机了。幸运的是,我的数字录音机记录了这一切。你能恢复吗?我是个写手很慢的人,我的自定义键盘只有 27 个唯一键;“az”和“”(空格)。没有使用其他键。另外,我似乎原创 2021-10-17 19:44:46 · 776 阅读 · 0 评论 -
TCTF writeup
cryptocheckin题目如下图所示我们发现题目是要求算一个比较复杂的算数,且要求十秒内出结果。这里需要调数学库gmpy2计算,使用python来算会超时。解题过程如下from pwn import *import hashlibimport mathimport gmpy2io=remote("111.186.59.11",16256)io.recvuntil("(2^")tian=int(io.recvuntil(")")[:-1],10)io.recvuntil原创 2021-08-08 23:00:39 · 482 阅读 · 0 评论 -
Cybrics ctf
1.Signer阅读源码,同时nc一下我们会发现,该题是ECDSA签名。选项1是使用ECDSA对一个当前时间戳+salt进行签名,输出(R,S,HASH),。选项2是让我i们输入使用ECDSA对一个当前时间戳+get_flag进行签名的结果,输入正确获得flag。我们发现在签名过程中除了明文以外所用的参数都没有发生更改,所以我们可以使用k共享的方式对改签名进行攻击。其原理如下已知ECDSA的签名过程是,所以当我们有两组同参数的签名明文hash1,hash2和签名值(r,s1),(r,s2),那么,。原创 2021-08-08 22:39:05 · 553 阅读 · 0 评论 -
HSCTF-部分writeup
1.XORed根据题意,我们很容易发现这是一个异或加密,根据异或的运算法则,我们很容易解密,下面是我们的writeupKey1 = 0x5dcec311ab1a88ff66b69ef46d4aba1aee814fe00a4342055c146533Key13 = 0x9a13ea39f27a12000e083a860f1bd26e4a126e68965cc48bee3fa11bKey235 = 0x557ce6335808f3b812ce31c7230ddea9fb32bbaeaf8f0d4a原创 2020-06-07 17:57:13 · 1064 阅读 · 0 评论 -
defcon-ctf qualifer crypto writeup
ooo-flag-sharing阅读题目,我们发现这是一个密钥分享的密码系统。题目使用100*5的矩阵A对填充为5*1明文向量C(向量第一个数是明文)加密得到100*1的向量B。在系统中保存部分向量数据b1,b2……,并将剩下的向量数据b3,b4……分发。当我们和系统由于5个向量数据b1,b2,b3,b4,b5。我们就可以将A中对应向量行组合成一个新矩阵,并求得逆矩阵。我们将的第一行(s1,s2,s3,s4,s5)和密文向量(b1,b2,b3,b4,b5)相乘即为明文。...原创 2020-05-29 16:17:01 · 831 阅读 · 0 评论 -
2020-网鼎杯部分writup-3
1.simple根据下载题目提示,这可能是一个仿射编码,根据仿射密码求解import gmpy2miwen="kgws{m8u8cm65-ue9k-44k5-8361-we225m76eeww}"minwen=""k=8b=22for i in miwen: if ord(i)>=ord('a') and ord(i)<=ord('z'): miwenint=ord(i)-ord('a') for j in xrange(26):原创 2020-05-20 16:51:17 · 1788 阅读 · 1 评论 -
2020——网鼎杯部分writeup
1.you raise me up题目源码如下#!/usr/bin/env python# -*- coding: utf-8 -*-from Crypto.Util.number import *import randomn = 2 ** 512m = random.randint(2, n-1) | 1c = pow(m, bytes_to_long(flag), n)print 'm = ' + str(m)print 'c = ' + str(c)# m = 3911原创 2020-05-13 17:41:45 · 3862 阅读 · 0 评论 -
de1ctf 部分writeup解析
1.NLFSR:在ctf-wiki中我们可以找到一种对NLFDSR的攻击方法——https://wiki.x10sec.org/crypto/streamcipher/fsr/nfsr/。由于对多个LFSR组合时不能实现均匀混合吗,我们可以发现有的值和最后结果相近,我们可以据此对NLFSR中的部分LFSR进行爆破。最后我们可以对剩下的LFSR进行爆破。首先我们可以根据多个LFSR组合判断哪些LF...原创 2020-05-09 00:21:19 · 1779 阅读 · 1 评论 -
安恒月赛-dasctf 部分writeup
1.crypto-not rsa题目很简单,r是一个随机数,g=n+1,已知(pow(g,m,n*n)*pow(r,n,n*n))%(n*n)=c,即密文c,求解明文m。我们根据二项式定理易知可将pow(g,m,n*n)=pow(n+1,m,n*n)=pow(m*n+1,n*n)。由于n=p*q,所以我们知道phi(n*n)=p*(p-1)*q*(q-1)。我们对加密公式两侧同时加(p-1)*...原创 2020-04-26 16:56:28 · 36144 阅读 · 0 评论 -
虎符-ctf crypto writeup
1.GM由于题目中描述了这时一个GM密码系统,所以我们在网上查到FM密码系统破解方式https://blog.csdn.net/qq_26816591/article/details/82957481首先根据n,phin建立一元二次方程求解n的因子p,q,再带入到解密公式中求解import gmpy2phi=943345166174941322591941459524332131...原创 2020-04-23 14:58:38 · 1796 阅读 · 0 评论 -
ctf-BugkuCTF-crypto
1.滴答~滴很容易看出这是摩斯加密,直接解密即可,注意格式#encode=utf-8s='-... -.- -.-. - ..-. -- .. ... -.-. 'codebook = { 'A':".-",'B':"-...",'C':"-.-.",'D':"-..",'E':".",'F':"..-.",'G':"--.",'H':"原创 2018-07-23 21:42:24 · 615 阅读 · 0 评论 -
ctf-ichunqiu-crypto(rsa系列)
1.rsa256下载文件,解压得到4个文件,打开message后缀文件里面都是乱码。打开public.key,观察其格式明显是openssl的公钥文件,再根据题目提示可知,我们拿到的message后缀文件是由该公钥rsa加密得到的,用openssl命令获取public.key中的n和e,发现n并不是很大,可以用msieve分解得到p,q。这样我们就可已得到d,用n,d对密文解密,将得到的16进...原创 2018-07-24 18:41:07 · 7622 阅读 · 0 评论 -
ctf-实验吧-crypto
1.trivial下载文件解压,得到一个py文件,里面又一个加密算法,这是一个类移位加密,加密算法的key和加密之后的密文已知,然后对每个明文在不同范围内进行移位加密,直接解密即可#!/usr/bin/env pythonimport sysalphaL = "abcdefghijklnmopqrstuvqxyz"alphaU = "ABCDEFGHIJKLMNOPQRSTUVQ...原创 2018-07-27 11:51:35 · 4725 阅读 · 1 评论 -
ctf-Ringzer0ctf
Cryptography:1.Some martian message使用rot13对字符串解密,即可获得答案2.File recovery拿到一个压缩包,打开发现一个RSA密钥文件和一个加密后存放于flag.enc的密文,用openssl找出rsa密钥文件的私钥,对密文解密即可得到答案def shuchu(mingwenstr): if mingwenstr[len...原创 2018-08-09 11:30:38 · 3595 阅读 · 0 评论 -
ctf-夏令营-crypto
1.通过nc端口可以获得一个加密算法的五个参数n,e,d,c2,r。几次nc发现参数n,e,d不发生变化,而c2和r在不断的变化,所以猜测这是一个RSA加密,而c2和r都是密文,进行尝试,发现c2解出的明文与r^-1相乘可以获得一段有意义的明文,即为答案import gmpy2def shuchu(mingwenstr): if mingwenstr[len(mingwenstr)...原创 2018-09-02 16:24:33 · 1149 阅读 · 0 评论 -
sctf
1.warmup阅读源码,我们发现整个加密流程如下—对明文长度使用pad()填充至长度为16的倍数,然后将msg分成长度为16 的n段,将n段明文做异或得到一段长度为16的明文,然后使用aes_cbc模式加密得到密文。在题目中已经给出了明文'see you at three o\'clock tomorrow'和它的密文,题目要求我们输入“please send me your flag”使用...原创 2019-06-26 16:44:52 · 1648 阅读 · 0 评论 -
网络与信息安全领域专项赛 writeup
crypto sm4:题目提示这是一个sm4加密的题目,给出了key和密文,于是在网上找了一个sm4加密的代码(https://blog.csdn.net/songdawww/article/details/79112548),稍加修改即可得到正确答案(将源代码主函数的ecb解密留下,将密钥和密文放入即可)key_data = [13, 204, 99, 177, 254, 41, 19...原创 2019-08-19 13:56:04 · 1358 阅读 · 0 评论 -
广东省强网杯
1:美丽的回忆打开源码文件阅读我们发现其加密算法为CBC,加密模式是CBC模式,加密以8位字符长度为一块,如下图所示我们已知开头明文为“have a good time”和加密后的密文,即已知plaintext1,plaintext2和所有密文,于是我们可以得到ciphertext2=ciphertext1^plaintext2^key,那么key=ciphertext2^cipher...原创 2019-09-11 12:29:36 · 8790 阅读 · 0 评论 -
ctf-wechall-Crypto
1.Caesar I获得一段字符串,根据提示使用凯撒解密,即可获得唯一一句相对有意义的话QUICK BROWN FOX JUMPS OVER THE LAZY DOG OF CAESAR AND YOUR UNIQUE SOLUTION IS........。2.Transposition I获得一段字符串,根据提示使用置换加密,看到开头字符串“oWdnreuf.lY uoc”,猜测开...原创 2018-07-23 17:19:49 · 2300 阅读 · 0 评论