[柏鹭杯 2021]试试大数据分解?

题目:(NSSCTF | 在线CTF平台)

题目就是如此,我没看到有5个不同的文本,其中最后一个文本以pem后缀,所以我们先来了解一下什么是pem格式。

PEM 格式

PEM格式通常用于数字证书认证机构(Certificate Authorities,CA),扩展名为.pem, .crt, .cer, and .key。内容为Base64编码的ASCII码文件,有类似"-----BEGIN CERTIFICATE-----" 和 "-----END CERTIFICATE-----"的头尾标记。服务器认证证书,中级认证证书和私钥都可以储存为PEM格式(认证证书其实就是公钥)。Apache和类似的服务器使用PEM格式证书。

解密脚本

from Cryptodome.PublicKey import RSA
from Cryptodome.Util.number import *
from gmpy2 import *
from base64 import b64decode
# 打开文件
key_file = open('C:/Users/liyunfei/Desktop/public.pem')
key = (key_file.read())
key_file.close()
# 获取n,e
r = RSA.import_key(key)
# print(r.n,r.e,sep='\n')# 使用http://factordb.com/,进行大数分解
q=948539437740472240970258995719507356652939947
p=1033916782753483187367063564275935620987269651
# 打开密文
def get_m(file_name):m_file=open(file_name,'rb')m = bytes_to_long(b64decode(m_file.read()))m_file.close()return mfileList = ['C:/Users/liyunfei/Desktop/flag.enc1','C:/Users/liyunfei/Desktop/flag.enc2','C:/Users/liyunfei/Desktop/flag.enc3','C:/Users/liyunfei/Desktop/flag.enc4']# 解密+字符串处理
phi=(p-1)*(q-1)
d=invert(r.e,phi)
flag=[]
for i in fileList:m = get_m(i)if i=='C:/Users/liyunfei/Desktop/flag.enc4':flag.append(long_to_bytes(pow(m,d,q*p))[-20:])else:flag.append(long_to_bytes(pow(m,d,q*p))[-22:])
nss=b''.join(flag)
# 进行16进制转换
# nss = ''
# for i in range(0,len(strs),2):
#     nss+=chr(int(strs[i:i+2],16))print(bytes.fromhex(nss.decode()))

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】SQL优化

SQL优化 插入数据 insert 一次插入数据和批量插入数据 insert into tb_test (id, name) values (1,Tom); insert into tb_test (id, name) values (1,Tom),(2,Jack),(3,Jerry);优化方案: 手动控制事务,且按主键顺序插入。start transaction; insert …

我独自升级崛起怎么下载 一文分享我独自升级崛起游戏下载教程

我独自升级崛起怎么下载 一文分享我独自升级崛起游戏下载教程 我独自升级:崛起是一款由韩国漫画改编而成的热门多人网络在线联机游戏,这款游戏是一款的角色扮演类型游戏,游戏有着独一无二的剧情模式。小伙伴们在游戏中可以体验到独特的成长系…

哈希表详解

目录 1.unordered系列关联式容器 2.哈希 3.unordered_map和unordered_set哈希实现 4.代码总和 1.unordered系列关联式容器 1.1unordered系列 c98的STL里面提供了底层为红黑树的关联式容器(set和map); 但是在结点数目很多的时候查询的效率就低了, 所以c11里STL又提供了四个…

SFP、SFP+、SFP28 与 QSFP28 收发器之间的差异:兼容性和性能

近年来,网络技术发展迅速,因此,计算专业人员面临着越来越令人困惑的术语和缩写词。 管理数据中心时必须了解的一个关键领域是收发器,特别是 SFP (1550nm/1310nm)、SFP (850nm) 和 QSFP28 (4x25G) 之间的差异。 这些型号在兼容性方…

绿联 安装Tomcat服务器

绿联 安装Tomcat服务器以及反代说明 1、tomcat版本 镜像名,根据项目决定选择哪个版本以及对应的JDK tomcat8.x.x: tomcat:8-jdk8 tomcat:8-jdk11 tomcat:8-jdk17 tomcat:8-jdk21 tomcat9.x.x: tomcat:9-jdk8 tomcat:9-jdk11 tomcat:9-jdk17 …

扫描工具nmap

介绍 说到黑客,知识就是力量。您对目标系统或网络的了解越多,可用的选项就越多。因此,在进行任何利用尝试之前,必须进行适当的枚举。 假设我们获得了一个 IP(或多个 IP 地址)来执行安全审计。在我们做任何…

《自动机理论、语言和计算导论》阅读笔记:p261-p314

《自动机理论、语言和计算导论》学习第 10 天,p261-p314总结,总计 48 页。 一、技术总结 1.generating & reachable 2.Chomsky Normal Form(CNF) 乔姆斯基范式。 3.pumping lemma 泵作用引理。引理:引理是数学中为了取得某个更好的…

FloodFill算法简介(用BFS、DFS算法解决)

FloodFill算法中文名:洪水灌溉 FloodFill通常是这样一类问题,如下图: 负数表示凹陷的土地,正数表示凸起的土地,发洪水/下雨会淹没凹陷的地方 通常会问这几种问题: 1.被淹没的区域有几块 2.被淹没的最大…

Transformer中的位置编码详解

什么是位置编码 位置编码概述 位置编码的目的是为了补充序列的位置信息,这是因为自注意力机制本身不包含位置的概念(例如顺序信息)。位置编码的具体作用是,对于不同的输入序列成分,赋予其不同的位置标识,确…

❤️新版Linux零基础快速入门到精通——第三部分❤️

❤️新版Linux零基础快速入门到精通——第三部分❤️ 非科班的我!Ta!还是来了~~~3. Linux权限管控3.1 认知root用户3.1.1 Switch User——su3.1.2 sudo命令3.1.3 为普通用户配置sudo认证 3.2 用户和用户组3.2.1 用户、用户组3.2.2 用户组管理3.2.3 用户管…

人工智能大模型培训老师叶梓 探索知识库问答中的查询图生成:处理多跳复杂问题的新方法

在人工智能领域,基于知识库的问答(KBQA)技术正变得越来越重要。它使得机器能够理解自然语言问题,并从结构化的知识库中检索答案。然而,面对多跳复杂问题,传统的KBQA方法往往力不从心。近期,研究…

网工不能不知道这10个工具,全都很好用!

你们好,我的网工朋友。 有阵子没做网工工具合集了,不少朋友私信我说“老杨怎么不一次性多放点安装包”。 所以有了今天这篇10个好用工具安利,这次尽可能把有的安装包都给你安排上了。 它们涵盖了从基础的网络监控、故障排查到高级的网络安…