摘要: 折半插入排序 O(n^2) func RhInsert(array *[] int) []int{ length := len(*array) for i :=1;i < length;i++{ if (*array)[i] < (*array)[i-1]{ low := 0 high := i - 阅读全文
posted @ 2021-05-25 11:37 Mr_small 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 首先在buuctf里是可以拿到源码的,这里也可以直接猜测一下,不停的输入a,你会发现到一定数量后发回来的密文的前32位不会再发生变化,这里便是ECB加密模式的特点,首先来看一下ECB加密的原理(网图) 加密:randomstr+yourinput+flag,如果你输入的a与randomstr相加刚好 阅读全文
posted @ 2021-01-12 15:02 Mr_small 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 一道lfsr类型的题目(一开始纠结于flag的长度问题,32位怎么求出flag,但是flag不是字符而是用16进制来表示的,那就刚好了) 题目代码如下: flag = "flag{xxxxxxxxxxxxxxxx}" assert flag.startswith("flag{") assert fl 阅读全文
posted @ 2020-12-12 17:31 Mr_small 阅读(409) 评论(0) 推荐(0) 编辑
摘要: buuctf上面有一道很有意思的题目,原题的代码很容易理解,记录一下解题思路(以后一定复习),题目代码如下 import sys from hashlib import sha256 from Crypto.Cipher import DES SECRET = 0xa########e # reme 阅读全文
posted @ 2020-12-08 14:39 Mr_small 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 这几天发现一道学习coppersmith的题目,一共6个挑战,这里记录一下自己的解题思路方便以后再来回看。 题目地址:https://github.com/CTFTraining/qwb_2019_crypto_copperstudy ##challange 1 题目一开始给了n,e,c和部分m的值 阅读全文
posted @ 2020-11-20 20:03 Mr_small 阅读(1169) 评论(0) 推荐(0) 编辑
摘要: #1.简单ECC 题目比较简单,参考代码如下: E = EllipticCurve(GF(15424654874903),[16546484,4548674875]) G=E([6478678675,5636379357093]) K=546768 P=G*K print P 将结果相加即可 #2. 阅读全文
posted @ 2020-11-14 18:22 Mr_small 阅读(480) 评论(0) 推荐(0) 编辑
摘要: 为了学习一下ECC加密,练习了unctf2019的一道题目,不算难但是可以很好的学习一下ECC加密的流程,题目主要是AES+ECC,但是重点还是ECC的加密。 下载文件后我们得到一个ecc.sage E=EllipticCurve(GF(15424654874903),[16546484,45486 阅读全文
posted @ 2020-11-08 10:26 Mr_small 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 首先我们拿到题目如下: import sympy import random from gmpy2 import gcd, invert from Crypto.Util.number import getPrime, isPrime, getRandomNBitInteger, bytes_to_ 阅读全文
posted @ 2020-09-08 12:17 Mr_small 阅读(1127) 评论(0) 推荐(0) 编辑
摘要: ##1.rsa4 这是一道考察低指密广播攻击的题目,因为只给了3个n和3个加密的密文,猜测这里的e应该为3,通过中国剩余定理求解 \(C=c_1M_1^{-1}M_1+c_2M_2^{-1}M_2+c_3M_3^{-1}M_3\) 对C开3次方就可以求出m 脚本如下: from Crypto.Uti 阅读全文
posted @ 2020-09-04 19:56 Mr_small 阅读(776) 评论(0) 推荐(0) 编辑
摘要: ##1.BJDCTF rsa1 这道题目比较简单,将变换一下形式就可以解出p和q,脚本如下: from Crypto.Util.number import long_to_bytes import gmpy2 #p^2+q^2=324165746902526920084266080643535531 阅读全文
posted @ 2020-09-03 09:40 Mr_small 阅读(637) 评论(0) 推荐(0) 编辑