BUUCTF中Crypto的RSAROLL


.
.
照例下载附件,两个 txt 文件:

RSA roll!roll!roll!
Only number and a-z
(don’t use editor
which MS provide)

{920139713,19}

704796792
752211152
274704164
18414022
368270835
483295235
263072905
459788476
483295235
459788476
663551792
475206804
459788476
428313374
475206804
459788476
425392137
704796792
458265677
341524652
483295235
534149509
425392137
428313374
425392137
341524652
458265677
263072905
483295235
828509797
341524652
425392137
475206804
428313374
483295235
475206804
459788476
306220148

.
.
说实话一开始我没看懂考啥,后来才发现这些数字中前面两个是n,e,后面是拆分的密文 c。原来题目的 roll 是滚动拼接 flag 的意思。想了想,这种多 RSA 参数的题,有点类似于我做过的 2022 年HGAME中CRYPTO的Easy RSA。

那直接套用脚本如下:

import libnum
from Crypto.Util.number import long_to_bytes
list1=[704796792,
752211152,
274704164,
18414022,
368270835,
483295235,
263072905,
459788476,
483295235,
459788476,
663551792,
475206804,
459788476,
428313374,
475206804,
459788476,
425392137,
704796792,
458265677,
341524652,
483295235,
534149509,
425392137,
428313374,
425392137,
341524652,
458265677,
263072905,
483295235,
828509797,
341524652,
425392137,
475206804,
428313374,
483295235,
475206804,
459788476,
306220148]
flag=""
n=920139713
q=18443
p=49891
e=19
for i in list1:c=id = libnum.invmod(e, (p - 1) * (q - 1))         #invmod(a, n) - 求a对于n的模逆,这里逆向加密过程中计算ψ(n)=(p-1)(q-1),对ψ(n)保密,也就是对应根据ed=1modψ(n),求出dm = pow(c, d, n)                        # pow(x, y[, z])--函数是计算 x 的 y 次方,如果 z 在存在,则再对结果进行取模,其结果等效于 pow(x,y) %z,对应前面解密算法中M=D(C)=C^d(mod n)
#print(m) #明文的十进制格式string = long_to_bytes(m)               # m明文,用长字节划范围flag+=string.decode()
print(flag)


.
.
解毕!
敬礼!

BUUCTF中Crypto的RSAROLL相关推荐

  1. python下载库报错_下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决...

    下载python中Crypto库报错:ModuleNotFoundError: No module named 'Crypto'的解决 前言 最近在网上找了很多下载Crypto的方法,感觉作用都不算很 ...

  2. 计算机LCG/PCG/MWC/XorShift等PRNG算法,以及V8中Math.random()、webkit中crypto等随机算法的实现

    计算机LCG/PCG/MWC/XorShift等PRNG算法,以及V8中Math.random().webkit中crypto等随机算法的实现 本文篇幅较长,如想直接看 js 的随机数实现可定位本文E ...

  3. 2022年 HSC-1th中CRYPTO的RSA

    2022年 HSC-1th中CRYPTO的RSA 照例下载附件,是 py 文件: import gmpy2 import sympy from Crypto.Util.number import *f ...

  4. 2022年 HSC-1th中CRYPTO的LINE-GENERATION-TEST

    2022年 HSC-1th中CRYPTO的LINE-GENERATION-TEST 照例下载附件,是一张 png 图片: . . 矩阵??没接触过的加密类型,以矩阵加密为关键字搜索,发现是古典密码-希 ...

  5. 2022年 HSC-1th中CRYPTO的Easy SignIn

    2022年 HSC-1th中CRYPTO的Easy SignIn 下载附件,一个 txt 文本: 5445705857464579517A4A48546A4A455231645457464243566 ...

  6. 2022年 HSC-1th中CRYPTO的BABY-RSA

    2022年 HSC-1th中CRYPTO的BABY-RSA 照例下载附件,是 py 文件: from Crypto.Util.number import *def lfsr(status,mask): ...

  7. 【BUUCTF】Crypto题解

    文章目录 MD5 一眼就解密 Url编码 看我回旋踢 摩丝 password 变异凯撒 Quoted-printable Rabbit 篱笆墙的影子 RSA Alice与Bob 丢失的MD5 RSA ...

  8. 关于在vscode引入python中Crypto包的问题

    文章目录 问题来源 引入包的问题 原因一 原因二 原因三 手动安装codeLLDB 问题来源 在学习过RSA算法之后想着自己用python实现一下子.因为可以自己下一个Crypto包,里面的一些函数啥 ...

  9. BUUCTF中web方向题目记录(二)

    双写绕过 BUUCTF[极客大挑战 2019]BabySQL 好像和前面的题目相似 check.php?username=admin&password=1' 单引号闭合 check.php?u ...

最新文章

  1. VML 画统计 柱状、饼图、折线
  2. 9.LeetCode第350题---两个数组的交集2
  3. clion 带参数调试运行
  4. CAN笔记(9) 位填充
  5. leetcode:Single Number【Python版】
  6. Matlab多惯量仿真,两连杆机器鱼的简单建模以及MATLAB仿真
  7. 高斯滤波程序编写 opencv C++ CSU
  8. 大数乘法与大数加法 java实现
  9. discuz admin.php无法登录,Discuz x3.1论坛管理员无法登录后台的各种解决方法总结
  10. 【GIMP】免费开源图像处理软件
  11. Landsat 8卫星波段介绍以及波段组合
  12. c++使用完成端口实现服务器的高性能并发
  13. 十年老码农,现场教你写简历!
  14. 计算机显示应用程序错误窗口,电脑开机后弹出netsh.exe应用程序错误提示的解决方法...
  15. 20145325张梓靖 《信息安全系统设计基础》课程总结
  16. 把英文句子颠倒过来的C语言代码
  17. 微信开启全民付费模式,我们有个共同好友叫“Feed广告”
  18. 服务器芯片市场国产,飞腾发布国产腾云 S2500服务器芯片 2020中国服务器行业市场全景调研...
  19. Win10安装过程中如何跳过创建Microsoft账户
  20. python基础选择题库_智慧树题库Python基础期末答案2020年免费

热门文章

  1. Docker 安装 Portainer
  2. [论文笔记]MAS论文综述
  3. 计算机组成原理实验基本运算器,计算机组成原理-实验一-运算器组成实验
  4. JavaScript知识点复习--思维导图(全)
  5. Jsoncpp解析中国地区编码JSON数据
  6. 微信搜题公众号免费搭建教学
  7. 大学计算机基础 百科园,李瑞海|
  8. 宽带噪声语音信号增强matlab,基于声卡和Matlab平台的语音信号增强处理系统
  9. Loam livox 论文翻译和总结
  10. 信息通信对于城市生活是一柄双刃剑