buuctf crypto 【[HDCTF2019]basic rsa】解题记录

news2025/2/1 12:00:41

1.打开文件

2.套用脚本

import random
from binascii import a2b_hex,b2a_hex
p = 262248800182277040650192055439906580479
q = 262854994239322828547925595487519915551
n = p * q
def multiplicative_inversr(a,b):
    x = 0
    y = 1
    lx = 1
    ly = 0
    oa = a
    ob = b
    while b != 0:
        q = a // b
        (a, b) = (b, a % b)
        (x, lx) = ((lx - (q * x)), x)
        (y, ly) = ((ly - (q * y)), y)
    if lx < 0:
        lx += ob
    if ly < 0:
        ly += oa
    return lx
def gcd(a,b):
    while b != 0:
        a, b = b, a % b
    return a
def generate_keypair(p,q):
    n = p * q
    phi = (p - 1) * (q -1)
    e = 65533
    g = gcd(e, phi)
    while g != 1:
        e = random.randrange(1, phi)
        g = gcd(e, phi)
    d = multiplicative_inversr(e, phi)
    return ((e,n),(d,n))
def encrypt(pk, plaintext):
    key, n = pk[0]
    print(b2a_hex(plaintext.encode()))
    cipher = pow(int(b2a_hex(plaintext.encode()),16), key , n)
    return cipher
def decrypt(pk, cipher):
    key, n = pk[1]
    cipher = pow(cipher, key ,n)
    cipher = a2b_hex(hex(cipher).split('0x')[1])
    return cipher
pk = generate_keypair(p,q)
cipher = 27565231154623519221597938803435789010285480123476977081867877272451638645710
plaintext = decrypt(pk, cipher)
print(plaintext)

3.运行,得到flag

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/999835.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python项目开发:Flask基于Python的天气数据可视化平台

目录 步骤一&#xff1a;数据获取 步骤二&#xff1a;设置Flask应用程序 步骤三&#xff1a;处理用户输入和数据可视化 步骤四&#xff1a;渲染HTML模板 总结 在这个数字化时代&#xff0c;数据可视化已经成为我们理解和解释信息的重要手段。在这个项目中&#xff0c;我们…

干了三年的功能测试,让我女朋友跑了,太难受了...

简单概括一下 先说一下自己的情况&#xff0c;普通本科&#xff0c;19年通过校招进入深圳某软件公司&#xff0c;干了3年多的功能测试&#xff0c;21年的那会&#xff0c;因为大环境不好&#xff0c;我整个人心惊胆战的&#xff0c;怕自己卷铺盖走人了&#xff0c;我感觉自己不…

解疑答惑:独立部署类型的商城系统有哪些优势?

数字化时代&#xff0c;电子商务已成为企业蓬勃发展的重要组成部分。 为了满足不断增长的在线购物需求&#xff0c;企业需要一个强大而可靠的商城系统。独立部署类型的商城系统因其独特的优势而备受青睐。下面就独立部署商城系统的优势作一些简单介绍&#xff0c;并解释为什么它…

Python中使用item()方法遍历字典的例子

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 这篇文章主要介绍了Python中使用item()方法遍历字典的例子, for…in这种是Python中最常用的遍历字典的方法了,需要的朋友可以参考下 Python字典的遍历方法有好几种&#xff0c;其中一种是for…in&#xff0c;这个我就…

修改图片尺寸的几个简单方法

修改图片尺寸的几个简单方法~~图片&#xff0c;是我们常用的文件格式&#xff0c;也是日常生活与工作中重要的文件。图片记录了非常多的元素和内容&#xff0c;其中不乏有工作上的内容&#xff0c;也有对一些日常生活的记录。所以说&#xff0c;图片文件对我们来说是非常重要的…

使用轻薄款电子价签,有什么样的改价体验?

在数字化的潮流之中&#xff0c;「轻薄」逐渐成为ESL电子标签的强大优势&#xff0c;让商品管理更高效&#xff0c;货架保持统一高端的形象。云里物里最新发布了一款纤薄ESL电子标签&#xff0c;DS029厚度仅有9.8mm&#xff0c;在36g的轻巧身躯上融入了强大功能&#xff0c;将为…

FirmAFL

FirmAFL使用并改进了Firmdyne模拟方式&#xff0c;并利用AFL对IoT固件实施高通量灰盒Fuzzing。 一、项目简介 FIRM-AFL 是 第一个针对物联网固件的高吞吐量灰盒模糊测试器。 支持mipsel、mipseb和armel三种CPU架构 &#xff0c;涵盖Firmadyne数据库中90.2%的固件。 FIRM-AFL 解…

学习笔记-配置备份静态路由及优先级

上一个笔记&#xff1a;学习笔记-静态路由配置有来无回导致无法访问目标IP 拓扑图&#xff1a; 书接上回。 模拟R2至R3之间的链路中断&#xff0c;配置备份路由通过R1访问R3。 shutdown掉R2的gi0/0/2端口&#xff0c;模拟链路中断。pingR3的gi0/0/0和R3的loopback0&#xff…

想修复Windows 10屏幕分辨率问题?这里有5种方法供你选择!

​一般来说,如果你愿意,你可以很容易地更改Windows 10计算机的屏幕分辨率。如果你发现你无法在Windows 10中更改分辨率,你可以查看下面的解决方案来解决这个问题。 检查和更改Windows 10屏幕分辨率上 一、你可以右键单击桌面的黑色空间,然后选择“显示设置”。单击“分辨…

循环购模式:美业的新机遇和新挑战

美业是一个高频消费的行业&#xff0c;每个人都想要拥有美丽的容颜和健康的身体。但是&#xff0c;美业的消费门槛往往较高&#xff0c;很多人会觉得美容美发等服务太贵&#xff0c;不敢轻易尝试。如果有一种模式&#xff0c;能够让消费者在享受美业服务的同时&#xff0c;还能…

pdf.js 微信公众号不显示问题

问题1&#xff1a; 在浏览器中能够正常显示&#xff0c; 但是在微信浏览器中不行&#xff01;解决&#xff1a; 这个是pdf.js 版本问题&#xff0c; 用2.4版本&#xff0c;微信打开就没问题了 问题2&#xff1a; 如何关闭侧边栏&#xff1f; 修改这个地方&#xff0c; 将 -1 改…

Macronix MX25L25645G NOR Flash无法擦除问题分析

1. 问题现象描述 处理器使用的 SAM9X60, 使用的内核版本是 5.10.80&#xff0c;在调试 Macronix MX25L25645G NOR Flash时&#xff0c;发现flash驱动加载成功后&#xff0c;使用 mtd_debug 工具 erase flash时&#xff0c;擦除一整片flash区域时&#xff0c;命令执行速度很快&a…

十 动手学深度学习v2 ——卷积神经网络之NiN + GoogLeNet

文章目录 网络中的网络&#xff08;NiN&#xff09;InceptionGoogLeNet总结&#xff1a; 网络中的网络&#xff08;NiN&#xff09; NiN块使用卷积层加两个1x1卷积层 后者对每个像素增加了非线性性 NiN使用全局平均池化层来替代VGG和AlexNet中的全连接层 不容易过拟合&#xf…

win10CPU占用率高达100%怎么办

很多小伙伴在打开任务管理器的时候会发现win10CPU的占用率高达了100%&#xff0c;这使得我们的电脑用起来十分的卡顿&#xff0c;那么这个问题该怎么解决呢&#xff0c;这里小编就给大家带来win10CPU占用率高达100%的解决方法&#xff0c;有需要的小伙伴快来看看吧。 win10CPU占…

电子行业云MES解决方案

电子行业MES解决方案主要是针对目前电子生产制造企业面临的产品迭代升级中多品种小批量混线生产、存呆滞问题多;质量检查标准多、售后问题难追溯&#xff1b;生产进度难追踪、车间物料难管控、实际成本难计算等问题&#xff0c;提出的一种切实可行且能降低成本、提高效率的有效…

【视觉检测】电源线圈上的导线弯直与否视觉检测系统软硬件方案

 检测内容 线圈上的导线弯直与否检测系统。  检测要求 检测线圈上的导线有无弯曲&#xff0c;弯曲度由客户自己设定。检测速度5K/8H625PCS/H。  视觉可行性分析 对样品进行了光学实验&#xff0c;并进行图像处理&#xff0c;原则上可以使用机器视觉进行测试测量…

手把手教你maven的安装与配置(windows)

手把手教你maven的安装与配置 一、Maven 是什么二、Maven 的安装1. 下载2. 环境配置 三、Maven 的配置文件1. 本地仓库2. 远程仓库3. 代理服务器4. 服务器认证5. 其他选项6. 配置示例 四、对接IDEA 提起Maven&#xff0c;相信大家并不陌生&#xff0c;对于一些java开发者&#…

C#获取屏幕的分辨率、工作区分辨率

运行结果如下; 由于屏幕的任务栏在侧面所以屏幕宽度变化。 代码如下 private void Form1_Load(object sender, EventArgs e){int SH Screen.PrimaryScreen.Bounds.Height; //1080int SW Screen.PrimaryScreen.Bounds.Width; //1920System.Drawing.Rectangle rec Screen.Get…

从零开始搭建Apache服务器并使用内网穿透技术实现公网访问

Apache服务安装配置与结合内网穿透实现公网访问 文章目录 Apache服务安装配置与结合内网穿透实现公网访问前言1.Apache服务安装配置1.1 进入官网下载安装包1.2 Apache服务配置 2.安装cpolar内网穿透2.1 注册cpolar账号2.2 下载cpolar客户端 3. 获取远程桌面公网地址3.1 登录cpo…

【hive】—原有分区表新增加列(alter table xxx add columns (xxx string) cascade;)

项目场景&#xff1a; 需求&#xff1a;需要在之前上线的分区报表中新增加一列。 实现方案&#xff1a; 1、创建分区测试表并插入测试数据 drop table test_1; create table test_1 (id string, score int, name string ) partitioned by (class string) row format delimit…