CTF CRYPTO 密码学-1

题目名称:enc

题目描述:

压缩包中含两个文件:一个秘钥d.dec,一个密文flag.enc

解题过程:

Step1:这题是一个解密他题目,尝试openssl去ras解密

工具简介

在Kali Linux系统中,openssl 是一个强大的命令行工具,用于处理SSL/TLS协议。openssl pkeyutl 是 openssl 工具集中的一个命令,用于处理私钥文件。

参数解释

openssl pkeyutl:这是执行私钥操作的命令。

-decrypt:这个选项告诉 openssl 执行解密操作。

-inkey d.dec:指定用于解密的私钥文件。这里的 d.dec 是私钥文件的名称。

-in flag.enc:指定包含加密数据的文件。这里的 flag.enc 是加密数据文件的名称。

-out 1:这个参数指定了输出文件的名称。在这里,输出文件被命名为 1。

Step2:解出来后有一串乱码,所以用Mousepad打开修改编码,再次查看

Mousepad简介

Mousepad 是一个简单且轻量级的文本编辑器,它通常预装在 Kali Linux 和其他基于 Debian 的 Linux 发行版中。Mousepad 旨在提供基本的文本编辑功能,没有过多的复杂性,非常适合快速编辑或查看文本文件。

Step3:在Python中计算二进制字符串是否为8的倍数

分析

计算后得出是7的倍数,所以需要再每7位二进制数前加上0,补足8位后再转换为ASCII码

知识点补充
  • ASCII(美国标准信息交换码)是一种用于表示文本的编码系统,它为每个字符(包括字母、数字、标点符号等)分配了一个唯一的数字代码。ASCII 码表中,每个字符对应一个7位的二进制数(实际上,ASCII 码表只用到了前128个位置,所以每个字符只需要7位,但为了与后来的扩展ASCII兼容,通常使用8位表示,即一个字节)。

  • 二进制是一种数制系统,它只使用两个数字:0和1。在计算机中,所有的数据,包括文本、图像、音频等,最终都会被转换成二进制形式,因为计算机的基本存储和处理单元是二进制位(bit)。

  • ASCII和二进制的关系在于,ASCII 码表中的每个字符都是用二进制数来表示的。例如,ASCII 码表中的大写字母 'A' 对应的二进制数是 01000001。这个二进制数可以被计算机直接读取和处理。

Step4:编写一个脚本,目的是补足8位二进制,每7位前面补足0

python 复制代码
# 补足8位二进制
s = "11001101101100110000111001111111011011001001100111000000010001101101001100100111010010001011011001100011011100101110100100001010001111110011110011101000011111101"
result = [chr(int("0" + s[i:i+7],2))  for i in range(0, len(s), 7)]  
print(result)
python 复制代码
# 将数组转换为字符串
s=['f', 'l', 'a', 'g', '{', '2', '3', '@', '#', '4', 'd', 't', 'E', 'Y', 'F', 'r', 't', 'B', 'G', 's', 'g', '!', '}']
>>> r=''.join(s)
>>> print(r)

相关资源

链接:https://pan.baidu.com/s/1FHvPaeMjMMWfRwf0vlefUA

提取码:200y

相关推荐
未完结的牵挂3 小时前
高质量代理池go_Proxy_Pool
网络安全
HackKong4 小时前
小白怎样入门网络安全?
网络·学习·安全·web安全·网络安全·黑客
澜世5 小时前
2024小迪安全基础入门第三课
网络·笔记·安全·网络安全
vortex56 小时前
信息收集系列(六):路径爬取与目录爆破
网络安全·渗透·信息收集
.Ayang7 小时前
tomcat 后台部署 war 包 getshell
java·计算机网络·安全·web安全·网络安全·tomcat·网络攻击模型
星竹7 小时前
upload-labs-master第12关详细教程
网络安全
饮长安千年月8 小时前
浅谈就如何解出Reverse-迷宫题之老鼠走迷宫的一些思考
python·网络安全·逆向·ctf
东方隐侠安全团队-千里8 小时前
网安瞭望台第3期:俄黑客 TAG - 110组织与密码攻击手段分享
网络·chrome·web安全·网络安全
SunsPlanter8 小时前
密码学11
密码学