1.9k 2 分钟

# playfair # 基本原理 Playfair 算法基于一个 5*5 的字母矩阵,该矩阵使用一个关键词构造,方法是按从左到右、从上到下顺序,填入关键词的字母 (去除重复字母) 后,将字母表其作余字母填入。 例如:关键词取:monarchy 时,字母矩阵为下图如示 (矩阵只能放 25 个字母,I 与 J 同) # 加密规则 Playfair 加密算法是先将明文按两个字母一组进行分组,然后在矩阵中找对应的密文。 取密文的规则如下: 1. 若明文出现相同字母在一组,则在重复的明文字母中插入一个填充字母 (eg:z) 进行分隔后重新分组 (eg: balloon 被重新分组为 ba lz lo...
5.7k 5 分钟

学了快两年 ctf 了 还是没入 ECC 的门┗|`O′|┛ 嗷~~ # ECC 椭圆曲线密码学(英语:Elliptic Curve Cryptography,缩写:ECC)是一种基于椭圆曲线数学的公开密钥加密算法。与传统的基于大质数因子分解困难性的加密方法不同, ECC 依赖于解决椭圆曲线离散对数问题的困难性。它的优势主要在于相对于其它方法,它可以在使用较短密钥长度的同时保持相同的密码强度。目前椭圆曲线主要采用的有限域 有以素数为模的整数域 GF (p) 和特征为 2 的伽罗华域 GF (2m2^m2m)。 #...
6.1k 6 分钟

# ezmath from Crypto.Util.number import*import randomfrom secret import flag,checkfrom hashlib import sha256import socketserverimport signalimport string table = string.ascii_letters+string.digitsclass Task(socketserver.BaseRequestHandler): def _recvall(self): BUFF_SIZE = 2048 data = b''...
14k 13 分钟

# 卷王杯 # 密码签到 密文: Y3NldHRfZl9jc2FyaF95b3Nwd2l0JTdCbW9qcCF1bCU3RA== base64 解码 csett_f_csarh_yospwit%7Bmojp!ul%7D url 解码 csett_f_csarh_yospwit{mojp!ul} 栅栏爆破 ctfshow{just_a_simple_crypto!} # 真・简单・不卷・现代密码签到 from Crypto.Util.number import bytes_to_longfrom secrets...
172 1 分钟

# VUE 运行他人的项目 npm run serve 之后就是报错 查找了很多资料 第一种就是把 node_moudles 文件夹删了,再 npm install 但是我运行之后还是报错 看到有大佬的评论 set NODE_OPTIONS=--openssl-legacy-provider 在文件夹下输入 再 npm run serve 就可以了 网上好像没有这种方法,就在这里记录一下
3k 3 分钟

# MYSQL 常用语句 创建数据库 (以名为 test_db 为例) create database test_db DEFAULT CHARACTER SET utf8; 删除数据库 drop database test_db 打开数据库 use test_db; 显示当前打开数据库 SELECT DATABASE(); 创建数据表 create table instructor ( ID char(5), name varchar(20) not null, dept_name varchar(20), salary numeric(8,2)); create table...
352 1 分钟

首先下载 pwntools pwntools 也可以用 pip 装:pip install pwn 在 python 中调用 from pwn import * # 连接 send(data) : 发送数据sendline(data) : 发送一行数据,相当于在末尾加\nrecv(numb=4096, timeout=default) : 给出接收字节数,timeout指定超时recvuntil(delims, drop=False) : 接收到delims的pattern(以下可以看作until的特例)recvline(keepends=True) :...
4.7k 4 分钟

# easyxor AES 的 CBC 模式和 OFB 模式 之前赵师傅讲过 听得有点云里雾里的 现在跟着这题的 wp 顺一遍 首先 iv 与 key 是不知道的,只知道前半段密文是 OFB 模式,后半段是 CBC 模式 贴两张图 这个是 CBC 加密,我们可以知道最后一个密文的 iv 就是前一个密文 通过这个可以爆破出 key 因为我们知道 flag 最后是以}$$$$ 结尾的 这个解密图里的 iv 就是加密的 iv 密文顺序也是一样的而给的 wp 是逆序解的自己改成正序了 from Crypto.Util.number import *# right shift inversedef...
10k 10 分钟

# 真・biginner 给出了 m<<10000 十进制的后 175 位。 化为数学公式就是 m*2^10000 %10^175=c m= c*2^-10000 mod 10^175 m= c*2^-10000 mod 5^175 import gmpy2from Crypto.Util.number import...