自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 收藏
  • 关注

原创 DASCTF2022.07赋能赛Crypto_复现

# easyNTRU `keywords:` `格密码私钥爆破` # NTRURSA `keywords:` `多项式RSA`,`构造格子形成SVP问题` # LWE? `keywords:` `LWE问题`,`Embedding Technique`

2022-10-14 11:15:06 1098 1

原创 生日攻击及CTF例子

相同点(给定一个点的大小找是否有另一个点)的概率一般来说很大(有一个近似计算公式),以此概率来判断是否遍历爆破整个集合找出两个相同点(概率很大的情况下,很可能不止两个点相同)生日攻击一般都用作哈希碰撞,构造彩虹表等等,这里我们用浅显的生日悖论的原理来在给定一个点的情况下,来判断是否可以找到一个随机集合中另一个相同点。分别是矩阵和向量,这里进行的并不是矩阵乘法,当前类型的矩阵和向量左乘后得到的就是如上表达式。的生成过程(由于随机数生成大小的参数是给定了的,这里直接用数值表示随机数大小)

2022-09-29 11:27:12 1367 3

原创 DASCTF x CBCTF 2022_Crypto复现

easySignin;`keywords:` `设置未知量并让未知量参与运算,构造同余式`;Little RSA;`keywords:` `构造格子应用LLL算法`;easyRSA,`keywords:` `应用连分数误差估计的维纳攻击`,连分数中存在一个**误差估计**(关于连分数误差估计能应用在维纳攻击中也只是猜测,没有进行验证)

2022-09-21 18:53:11 800

原创 2022 川渝网安比赛_初赛Crypto复现

dp低位泄露,dp低位泄露对比d的低位泄露的攻击方式即可d的低位泄露,这里dp低位泄露即是其中,k的大小在(1,e+1)之间;数学推导很简单,关键是如何实现在模2^161的意义爆破求解p_low​,并且通过定理来求解完整p首先在模的意义求解同余式,使用该sagemath自带的函数会返回满足同余式的解p(且是在模2^161意义下的解)将遍历k的过程中得到的每个p_low​,尝试代入进行恢复完整的p。

2022-09-19 19:01:07 671

原创 SUSCTF 2022 Crypto复现

AnalysisAnalysisAnalysis简答来说,题目中函数生成了一个实数矩阵A\pmb{A}AA,并且大小为;由以单个字符构成的大小的矩阵X\pmb{X}XX;由矩阵乘法B=AX\pmb{B}=\pmb{A}\pmb{X}BB=AAXX,生成结果矩阵b\pmb{b}bb;已知量有实数矩阵A\pmb{A}AA,以及结果矩阵B\pmb{B}BB我们已知矩阵乘法中的一个乘数矩阵以及结果矩阵,那么可以计算X=AB\pmb{X}=\pmb{A} \pmb{B}XX=AABB,得到矩阵X\pmb{X}XX;

2022-09-14 17:56:45 1128

原创 Pohlig-Hellman算法解决DLP问题

(光滑数即是该数的质因数都很小,其每个质因数大小在该算法中对应着算法复杂度)是我们设置的变量,后面会对其进行赋值;但是这样的进制表示并没有实质作用,因为我们很可能为了表示。,再对整个同余式组使用中国剩余定理得到最终满足所有同余式的解。来解决这个问题,将等式两侧的大小变到我们能掌握的大小。当我们求出整个同余式组里的满足各个同余式模意义下的。拉到很大的数值,具体大小我们无从得知;的素因子的进制等等操作,这样就可以直接得到。用每个素因子的大小作为进制表示,如以。是原根,那么这样操作是可以的;

2022-09-14 17:50:56 1425

原创 应用LLL算法解决背包问题

SVP问题(最短向量),那么要将LLL算法应用于解决背包问题,我们需要通过基向量构造一个合适的格,并且验证我们需要求得的。由于矩阵乘法的特殊性,每行元素依次乘以每列元素的和,其实可以将其看做是一个背包问题;的向量在已知的格上,那么这个向量还必须满足是该格的最短向量,也即是SVP问题的描述。的长度有限,很可能只占有第一行以及第二行的部分元素,剩余元素均是随机生成的字节)的每个元素的生成过程都看作是一个背包问题,那么已知相当于背包问题的。的第一列元素(也可以是其他列的元素),该列元素的生成过程是,矩阵。

2022-09-10 11:46:36 1373 2

原创 非素数模下的二次剩余

那么按照之前提到的解决办法,将每个二次剩余的解都先看作是唯一解构造新的同余式组,直到将每个二次剩余的解按照不同组合遍历完即可,求得的结果设置条件判断输出。二是求解一元二次同余式组中的各个二次剩余,单个二次剩余可能会有多个解满足该二次同余式,那么就。所以要先求解同余式组中每个同余式的二次剩余,得到一元二次同余式组中的每个同余式的解。对于普通的二次剩余来说,要应用正常求解二次剩余的方法有很多种,但前提都是。但是这里我们并不重点看模数为素数的情况,而是看模数为非素数的情况,条件是。

2022-09-09 12:21:14 890

原创 矩阵快速幂模板以及其应用矩阵加速递推

计算这样的递推次数很多的式子,我们需要一个更简化更快捷的计算方式,也就是矩阵快速幂。我们只需要构造最小限度能解决问题的矩阵就好,无论是矩阵初始值还是转移矩阵,所以还是需要具体问题具体分析地来构造矩阵。的矩阵,其实列向量还是行向量都可以,只要转移矩阵也是对应的即可)那么根据转移矩阵表现出来的与原数列的关系,我们可以这样来看。的矩阵初始值浪费了计算空间,所以构造其他形式的初始矩阵。的初始矩阵的话,对应数列的递推关系是不完整的;得到的新矩阵的第一项数据即是斐波那契数列的第。把矩阵乘法展开,得到。......

2022-08-27 21:03:02 759

原创 近世代数-群论基础二

近世代数-群论基础二子群与陪集设GGG按运算∘\circ∘形成群,HHH为群GGG的非空子集。若HHH按照运算∘\circ∘ (在笛卡尔集H×HH\times HH×H上限制)也形成群,则称HHH为GGG的子群;记为H≤GH\leq GH≤G.笛卡尔集A,BA,BA,B均为集合,A×BA\times BA×B为AAA和BBB的笛卡尔积,是所有有序偶(a,b)(a,b)(a,b)的集合,其中aaa是来自AAA的元素,bbb是来自BBB的元素A×B={(a,b)∣a∈A且b∈B}A\times B=

2022-05-25 20:34:58 742

原创 近世代数-群论基础一

近世代数-群论基础一半群与群半群:在集合,任意x,yx,yx,y经过一元运算x∘yx\circ yx∘y 得到的结果依然是在该集合内的,且满足结合律幺半群:在半群的基础上引入幺元(单位元)定理2.1:括号的添加方式(位置)与结果无关群:每个元素都可逆的幺半群定义:非空集GGG按它的二元运算∘\circ∘,形成群当且仅当GGG对运算∘\circ∘封闭,即a,b∈G⇒a∘b∈Ga,b\in G\Rightarrow a\circ b\in Ga,b∈G⇒a∘b∈G运算∘\circ∘ 满足结合

2022-05-17 19:45:20 737

原创 RC4加密以及python实现

RC4加密算法AbstractAbstractAbstractRC4是流加密算法中的一种,主要难点是密钥流生成算法,通过该算法(需要输入密钥)生成的密钥流与明文相异或得到密文密钥长度可变,长度范围为1-256字节(原则上密钥长度不可超过256字节,但是超过的话不会对算法过程造成影响,但是密钥字节中多于256的部分不会代入运算)EncodeEncodeEncodeKSAKSAKSA对密钥key使用KSA算法(key-scheduling-algorithm)生成S盒首先初始化S盒S = [

2022-05-12 21:41:07 1744

原创 安洵杯2021_Crypto_复现

little_trick $keywords:$ `python_random模块`,`RSA dp&dq泄露`,`(~a|b) & (a|~b)逻辑式运算`strage$keywords:$ `明文大小相比hint小`,`真值表`,`coppersmith`ez_eqution$keywords:$ `提取最大公因数`,`解一元二次方程`,`RSA p,q接近的情况`air encryption$keywords:$ `AES_CTR`,`xor`,`交互`,`欧拉定理`,`数据处理`

2022-04-20 17:09:53 789

原创 CTF Crypto中涉及的AES题目

keywords: `AES_CBC模式`,`AES_ECB模式`,`AES_CTR模式` 来源于陇原战疫2021网络安全大赛 `Civet cat for Prince` $keywords:$ `AES_CBC`,`xor`,`狸猫换太子`来源于安洵杯2020 `easyAES` $keywords:$ `AES_CBC`,`AES_CBC所使用的加解密器和AES_ECB模式所使用的相同`来源于安洵杯2021 `air encryption` $keywords:$ `AES_CTR`,`xo

2022-04-20 17:04:47 6681

原创 Crypto中常用的数据类型互转方式

Crypto中常用的数据类型互转方式keywords:keywords:keywords:十进制与字节互相转换,十六进制的不同表示方式转换,列表类型与字符串的转换十进制与字节互相转换long_to_bytes()\bytes_to_long()from Crypto.Util.number import long_to_bytes,bytes_to_longflag = b"flag{convert}"nums = bytes_to_long(flag)flag = long_to_byt

2022-04-20 16:42:17 6404

原创 CTF密码学中遇见的python 类知识

CTF密码学中遇见的python 类知识keywords:keywords:keywords: 魔法方法PEP 8 代码规范:类定义前后需要两行空行DefinitionDefinitionDefinition定义类class class_name(object): passreal_object = class_name()在类中定义的函数,称为方法调用对象的方法object.func()类外部添加对象属性object.attr = ...类内部操作属性通过se

2022-04-10 19:55:32 1106

原创 bitsctf-2017-beginners-luck

bitsctf-2017-beginners-luckkeywords:keywords:keywords: bitsctf-2017-beginners-luck,文件头格式,异或ProblemProblemProblem#!/usr/bin/env pythondef supa_encryption(s1, s2): res = [chr(0)]*24 for i in range(len(res)): q = ord(s1[i]) d = or

2022-03-31 19:40:52 405 1

原创 使用求余运算解简单流密码

使用求余运算解简单流密码keywords:keywords:keywords: DASCTF 2022 三月春季赛 flower cipher,流密码,求余运算ProblemProblemProblem# python3from secret import flagimport random# flag = b'flag{%s}' % md5(something).hexdigest()# note that md5 only have characters 'abcdef' and di

2022-03-29 21:21:53 1308 3

原创 RSA由密文解密的奇偶性确定原始明文

RSA由密文解密的奇偶性确定原始明文keywords:keywords:keywords: XCTF 4th-QCTF-2018-babyrsaProblmeProblmeProblme'''Baby RSAe = 0x10001n = 0x0b765daa79117afe1a77da7ff8122872bbcbddb322bb078fe0786dc40c9033fadd639adc48c3f2627fb7cb59bb0658707fe516967464439bdec2d6479fa3745f

2022-03-28 22:18:06 877 2

原创 SECCON-CTF-2014-Decrypt-It-easy

SECCON-CTF-2014-Decrypt-It-easykeywords:keywords:keywords: c语言rand(),CRTDescriptionDescriptionDescription$ ./rnd crypt1.png ecrypt1.bin附带给出rnd,ecrypt1.binAnalysisAnalysisAnalysis由于在题目写到的类似命令的格式中,rnd似乎是执行文件,linux命令file查看文件类型$ file rnd/rnd: ELF 32-

2022-03-23 23:09:15 1129 2

原创 中国剩余定理及python实现

CRT,中国剩余定理公式推导以及python实现,中国剩余定理模数不互素情况

2022-03-23 17:59:45 2291 3

原创 RSA中coppersmith定理的应用条件

coppersmith在已知p多少位二进制情况下才能生效,RSA高位攻击(已知p的高位,求解p的低位依次分解n),sagemath的small_roots()函数讲解

2022-03-20 20:46:43 8794 10

原创 LSFR流密码小结

LSFR流密码小结IntroductionIntroductionIntroductionCTF ProblemsCTF~ProblemsCTF Problemsstreamgame1-2DescriptionDescriptionDescriptionAnalysisAnalysisAnalysisSolving codeSolving~codeSolving codestreamgame3DescriptionDescriptionDescriptionAnaly

2022-03-19 00:09:00 1765

原创 ALEXCTF-2017_cr2-many-time-secrets

ALEXCTF-2017_cr2-many-time-secretsDescriptionDescriptionDescriptionAnalysisAnalysisAnalysisThe method of githubThe~method~of~githubThe method of githubThe method of featherdusterThe~method~of~featherdusterThe&nb

2022-03-16 16:53:48 1457

原创 Hack-you-2014_Crypto_Easy-one

Hack-you-2014_Crypto_Easy-onekeywords:keywords:keywords: 简单异或方程,已知明文攻击DescriptionDescriptionDescription#include <stdlib.h>#include <stdio.h>#include <string.h>int main(int argc, char **argv) { if (argc != 3) { printf("USAGE: %s

2022-03-15 10:44:27 1098 1

原创 csaw-ctf-2016-quals_sleeping-guard

csaw-ctf-2016-quals_sleeping-guardDescriptionDescriptionDescriptionAnalysisAnalysisAnalysisSolving codeSolving~codeSolving codeReferenceReferenceReferencekeywords:keywords:keywords: 文件头异或得到keyDescriptionDescriptionDescriptionimport base64from

2022-03-14 22:39:19 457 1

原创 hctf-2018_Crypto_xor-game

hctf-2018_Crypto_xor-gameDescriptionDescriptionDescriptionAnalysisAnalysisAnalysisSolving codeSolving~codeSolving codeReferenceReferenceReferenceOthersOthersOtherskeywords:keywords:keywords: 分组逐个爆破密钥字符DescriptionDescriptionDescriptionfrom Cryp

2022-03-14 10:04:40 856 1

原创 AntCTF x D^3CTF_Crypto_部分复现

AntCTF x D^3CTF_Crypto_部分复现d3factorDescripitonDescripitonDescripitonAnalysisAnalysisAnalysisSolving codeSolving~codeSolving coded3qcgDescriptionDescriptionDescriptionAnalysisAnalysisAnalysisSolving codeSolving~codeSolving codeReference

2022-03-12 17:03:34 884 2

原创 CISCN-2018-Quals_MS

CISCN-2018-Quals_Crypto_MSDescriptionDescriptionDescriptionAnalysisAnalysisAnalysisSolving codeSolving~codeSolving codeReferenceReferenceReferencekeywords:keywords:keywords: 有限域GF(2)下的矩阵乘法DescriptionDescriptionDescriptionfrom Crypto.Util.numbe

2022-03-07 09:18:37 386 2

原创 DASCTF八月挑战赛_Crypto_复现

DASCTF八月挑战赛_Crypto_复现easymath;let's play with rsa~;ezRSA

2022-03-06 11:08:31 676

原创 SUSCTF_Crypto_large case_复现

SUSCTF_Crypto_large case_复现 DescriptionDescriptionDescriptionAnalysisAnalysisAnalysisGet eGet~eGet eGet plaintGet~plaintGet plaintNecessary MajorizationNecessary~MajorizationNecessary MajorizationFirstFirstFirstSecondSecondSec

2022-03-04 11:48:54 558 4

原创 DASCTF Oct X 吉林工师_Misc_复现

DASCTF Oct X 吉林工师_Misc_复现WELCOME DASCTFxJlenugiveyourflag闯入魔塔的魔法少女魔法秘文不可以色色魔法信息英语不好的魔法少女彁彁魔法少女的迷音卡比卡比卡比Twinkle Twinkle Starry NightPerference:Perference:Perference: (11条消息) DASCTF Oct X 吉林工师 欢迎来到魔法世界~ WriteUp_七月的博客-CSDN博客WELCOME DASCTFxJlenukeywords:key

2022-03-02 23:31:43 1330 2

原创 陇原战疫2021网络安全大赛_Crypto_复现

陇原战疫2021网络安全大赛_Crypto_复现mostlycommonDecryption codeDecryption~codeDecryption codeeasytaskDecryption codeDecryption~codeDecryption codePerferencePerferencePerferenceCivet cat for PrinceDescriptionDescriptionDescriptionAnalysisAnalysisAna

2022-02-28 11:47:30 6796 1

原创 GGH非对称密码体制破解方法

GGH非对称密码体制破解方法EncryptionEncryptionEncryptionDecryptionDecryptionDecryptionAttackAttackAttackExampleExampleExamplePerferencePerferencePerferenceGGH密码体制,基于格的CVP(最近接向量问题)设计的非对称密码算法EncryptionEncryptionEncryption生成密钥:选择幺模矩阵UUU作为私钥公钥:B′=U⋅BB'=U\cdot BB′

2022-02-27 16:53:26 1085 1

原创 GKCTF2020_Crypto_复现

GFCTF_Crypto_复现小学生的密码学keywords:keywords:keywords:​ 仿射密码在线解密网址:CTF在线工具-在线仿射密码加密|在线仿射密码解密|仿射密码算法|Affine Cipher (hiencode.com)汉字的秘密keysowrds:keysowrds:keysowrds: 当铺密码,变异凯撒解密脚本dic = {"王": 6,"壮": 9,"工": 4,"夫": 7,"中": 2,"由": 1,"井": 8,"土": 5,"口": 0," ":

2022-02-26 11:01:29 3687

原创 在sagemath中运行python文件

在sagemath中运行python文件keywords:keywords:keywords: Sagemath Shell,sagemath导入自己写的模块要让自己写的python文件直接在sagemath中运行,也就是说要用到sagemath中的一些模块和函数如果直接使用Sagemath程序,让ta运行python文件会报错需要使用Sagemath Shell先将所要运行的python文件放入Sagemath的src文件夹中(如果是其他路径的话之后文件似乎可以运行,但是运算速度很低)PS:S

2022-02-26 10:51:58 3998

原创 GKCTF2020_Misc_复现

GKCTF2020_Misc_复现code obfuscationkeywods:keywods:keywods: js混淆,替换密码得到一张斜着的二维码图片,中间还被分割了一下使用PS把分割的部分接回去(不要留白),扫描二维码得到base(gkctf)使用editor010打开图片数据,数据报错,显然是加了一些其他的东西进去;最简单的方式:binwalk一下得到一个压缩包,需要密码根据题目hint压缩包密码是加密过的那么这个base(gkctf)就是用在这的了把常见的base

2022-02-25 18:38:52 667

原创 VNCTF2022_Misc_复现

VNCTF2022_Misc_复现仔细找找放大图片可以看见有很小的与周围颜色不同的像素点均匀的分布在图片中先寻找像素点之间的间隔,然后拼接在一起生成新的图片代码实现from re import Lfrom PIL import Imageimport numpy pic = Image.open("C:\\Users\\Menglin\\Desktop\\flag.png")# 寻找像素间隔# array = numpy.array(pic)# print(array.shape[0

2022-02-24 20:07:09 1695 1

原创 zip压缩文件明文攻击以及相关问题

zip压缩文件明文攻击以及相关问题明文攻击的原理:攻击者掌握了某段明文和对应密文求解密钥。攻击条件对于zip文件来说,进行明文攻击的条件是:有一个单独的文件已知且进行压缩之后的CRC值与某个包含此文件的压缩包的CRC值相等已知文件:未知密钥压缩包:只要两者CRC值相等,那么就可以进行明文攻击攻击过程以ARCHPR为例,选择攻击类型明文并跳转至明文选项明文文件路径换做已知文件的压缩包路径将待解密压缩包导入即可进行攻击(攻击时间一般较久)攻击问题可能在有时候已知文件的压缩包已经

2022-01-30 18:01:23 12176 2

原创 Python_提取图片像素值

Python_提取图片像素值使用PIL.Iamge和numpy模块打开图片from PIL import Imageimage = Image.open("test.png")导入数组import numpyarray = numpy.array(image)print(array)'''[[[ 0 0 0] [ 84 150 206] [255 255 255] ... [255 255 255] [255 255 255] [255 255 255

2022-01-30 13:50:58 15680

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除