拿到一个pyc反编译,分析了一下,要求t1,t2,t3

from flag import t1, t2, t3
N = 91080783459224114417419735848141602413276894709356670475166857901383529276788422992031159L
s1 = 11411269144987772222786703496950992585276983184692849555141859373112423610294869112786252L
s2 = 58599619676130565690598871824198278116020685570207351127154648707502599199944142046246402L
s3 = 65974795812758987659130564760412992885703783478354682873750151867682024151063561297876490L
if s1 * t1 % N != 1:exit()
if s2 * t2 % N != 1:exit()
if s3 * t3 % N != 1:exit()
flag = hex(t1 + t2 + t3)[2:-1].decode('hex')
print flag

已知s1*t1%N==1,求t1,这其实是个数论问题,t1=ModReverse(s1,N)
链接:https://blog.csdn.net/CosmopolitanMe/article/details/78948011
解题代码:

def gcd(a, b):while a != 0:a, b = b % a, areturn bdef findModReverse(a, m):if gcd(a, m) != 1:return Noneu1, u2, u3 = 1, 0, av1, v2, v3 = 0, 1, mwhile v3 != 0:q = u3 // v3v1, v2, v3, u1, u2, u3 = (u1 - q * v1), (u2 - q * v2), (u3 - q * v3), v1, v2, v3return u1 % mt1=0
t2=0
t3=0
N = 91080783459224114417419735848141602413276894709356670475166857901383529276788422992031159L
s1 = 11411269144987772222786703496950992585276983184692849555141859373112423610294869112786252L
s2 = 58599619676130565690598871824198278116020685570207351127154648707502599199944142046246402L
s3 = 65974795812758987659130564760412992885703783478354682873750151867682024151063561297876490L
t1=findModReverse(s1,N)
t2=findModReverse(s2,N)
t3=findModReverse(s3,N)flag = hex(t1 + t2 + t3)[2:-1].decode('hex')
print flag

ctf之py反编译求p*q%n==1相关推荐

  1. jadx重新打包_Android反编译看看手Q口令红包的实现原理

    首篇作为开始,先讲讲简单的反编译.反编译通常有几种目的:互相学习.借来用用.嘿嘿(干你,又分为小干干类似微信红包,和大干干改别人的apk帮他上架). 因为没带kvm回来,mbpr屏幕太小,所以下文环境 ...

  2. Android逆向分析(1) 反编译看看手Q口令红包的实现原理

    前言 本篇文章是作者MarkZhai的逆向分析系列的第一篇,已授权发布,并计划之后该系列的更新会第一时间发布在本公号上,敬请关注! 原文 本系列文章是<Android软件安全与逆向分析>的 ...

  3. Android逆向分析(一) - 反编译看看手Q口令红包的实现原理

    原文:http://blog.zhaiyifan.cn/2016/02/09/android-reverse-1/ 本系列文章是<Android软件安全与逆向分析>的实践笔记(一些工具的版 ...

  4. python反编译加密文件_python打包的二进制文件反编译

    简介 Pyhton是一个脚本语言,在运行Python代码时,最终由Python解释器来执行.解释器就是Python的运行环境,但是除了开发人员,大部分人在使用时并不会安装Python.所以官方就提供了 ...

  5. python编译反编译,你不知道的心机与陷阱

    谈到python的文件后缀,说眼花缭乱也不为过.来看看你遇到过哪些类型! .py 如果这个不知道,呵呵-那请出门左拐,你还是充钱那个少年,没有一丝丝改变.接着打游戏去吧- .pyc 这个后缀应该算是除 ...

  6. 【干货】Python文件打包 .exe文件反编译

    一.Python文件 打包 成 .exe 可执行文件 第一步:安装pyinstaller 首先安装pyinstall,使用命令:pip3 install pyinstaller,当然有可能报错,如下图 ...

  7. python编译成exe和exe反编译成python

    先看文章概要.再看左侧目录,可准确找到需要内容 文章概要:python文件可编译成exe文件,exe文件也可通过反编译恢复为python文件.下面简单介绍如何生成exe和恢复python python ...

  8. pyinstall 打包python3.7.1的exe反编译

    pyinstall 打包python3.7.1的exe反编译 由于 pyinstall打包的EXE文件,被360认为可能有木马病毒,首先怀疑计算数机系统有毒.用360杀毒,病毒倒是查处了十几个,对于一 ...

  9. 什么是pyc文件,把python的py文件编译成pyc文件,把pyc文件反编译成py文件。以及python编译的如何设置不生成pyc文件

    文章目录 1 什么是pyc文件 1.1 什么是pyc文件 1.2 pyc文件是怎么生成的,有什么好处 2 把python的py文件编译成pyc文件 2.1 使用python内置库py_compile把 ...

最新文章

  1. 辨异 —— 冠词(定冠词、不定冠词、零冠词)
  2. 用完成端口开发大响应规模的Winsock应用程序
  3. 【JavaSE02】Java基本语法-思维导图
  4. python软件开发规范
  5. C#.Net工作笔记019---葡萄城控件FlexGrid自定义风格_比如给某列设置某个颜色_该颜色不受选择行的影响
  6. [转]Android编程之BitmapFactory.decodeResource加载图片缩小的原因及解决方法
  7. 单片机c语言赚钱,单片机C语言程序设计实训100例(从初级入手).pdf
  8. Altium差分布线和等长方法
  9. php一键集成环境安装包,APMXN集成环境一键安装包(php环境一键安装包)V1.0.2 最新版...
  10. 安全合规/法案--30--《网络安全审查办法》原文及解读
  11. 快读快写模板【附O2优化】
  12. 洛谷P1000 超级玛丽游戏c语言基础
  13. 2021:Check it again:Progressive Visual Question Answering via Visual Entailment通过视觉暗示进行渐进式视觉问答
  14. git 常用的命令行
  15. FastAPI简单示例
  16. java数据回填_快逸数据回填的实现方法
  17. 视频加密后的录屏行为怎么做防范?
  18. EXCEL——排序sumproduct函数
  19. Android热更新技术的研究与实现Sophix
  20. ArcCatalog和ArcSDE

热门文章

  1. BC:带你温习并解读《中国区块链技术和应用发展白皮书》—区块链标准体系框架
  2. TF之pix2pix之dataset:基于TF利用自己的数据集训练pix2pix模型之DIY自己的数据集
  3. Microsoft .NET:Microsoft .NET之.net4.5.1简介、安装、使用方法之详细攻略
  4. Python之pyspark:pyspark的简介、安装、使用方法之详细攻略
  5. 05-配置数据库的远程连接 创建hive数据库的时候要选择latin1
  6. window 日志清除
  7. python中多进程+协程的使用以及为什么要用它
  8. Maven快速导出maven工程的依赖包
  9. Html5元素及基本语法
  10. [数据结构-划分树小结]