B@se-还原错误字母表转码的base64编码

news/2025/1/13 11:03:14/文章来源:https://www.cnblogs.com/Draina/p/18668219

题目:

密文:MyLkTaP3FaA7KOWjTmKkVjWjVzKjdeNvTnAjoH9iZOIvTeHbvD==
JASGBWcQPRXEFLbCDIlmnHUVKTYZdMovwipatNOefghq56rs****kxyz012789+/oh holy shit, something is missing...

第一行是密文,有明显的Base64编码特征(等号结尾)

第二行是大小写字母、数字、+、/,有明显的Base64编码表特征,但是多了四个星号,这个可以和标准编码表对比找到缺失部分,四个星号分别代表j、u、3、4,但顺序未知。

标准编码表:

standard_alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'

接下来只需要将题目中的“密文”转化为使用正确编码表编码的“密文”,再转码为明文可得flag。脚本如下:

import base64
import itertoolsencoded_str="MyLkTaP3FaA7KOWjTmKkVjWjVzKjdeNvTnAjoH9iZOIvTeHbvD=="
standard_alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
chars=['j','u','3','4']
for comb in itertools.product(chars,repeat=4):wrong_alphabet_guess='JASGBWcQPRXEFLbCDIlmnHUVKTYZdMovwipatNOefghq56rs'+''.join(comb)+'kxyz012789+/'mapping = {wrong_alphabet_guess[i]: standard_alphabet[i] for i in range(len(wrong_alphabet_guess))}corrected_str = ''.join(mapping.get(c, c) for c in encoded_str)decoded_bytes = base64.b64decode(corrected_str)print(decoded_bytes)

找到最像的一个

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

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

相关文章

打开浏览器Chrome跳转指定页面并全屏打开

办法来源于https://blog.csdn.net/shaofengzong/article/details/119928096 主要用于大屏数据可视化的项目,设置电脑自启动后,打开浏览器的同时默认跳转指定页面并全屏打开。、 办法通过增加谷歌浏览器的启动参数进行实现。 两种方式实现,需要根据需求进行选择默认全屏打开指…

板栗看板:让供应商全生命周期管理变得如此简单

供应商全生命周期管理(Supplier Lifecycle Management,SLM)是一个结构化、全流程的供应商闭环管理过程,旨在优化供应商关系,提高供应链的整体效率和可持续性。以下是对供应商全生命周期管理的详细阐述供应商全生命周期管理(Supplier Lifecycle Management,SLM)是一个结…

协作管理工具在多部门协作中的优势与应用

一、跨职能团队协作的挑战 跨职能团队的协作面临多个方面的挑战,这些挑战往往会影响团队的工作效率、项目的推进速度以及最终的项目质量。 1.1 信息传递不畅在跨职能团队中,成员来自不同的部门,各自拥有不同的背景、职责和目标。因此,团队成员之间的沟通可能不够顺畅,信息…

side channel

‌Side Channel‌,中文称为“边信道”,是指通过加密软件或硬件运行时产生的各种泄漏信息来获取密文信息的攻击方式。在狭义上,边信道攻击特指针对密码算法的非侵入式攻击,通过分析加密电子设备在运行过程中的边信道信息泄露来破解密码算法。常见的边信道攻击包括计时攻击、…

RocketMQ工具的使用方法

RocketMQ简介 启动rocketmq-Dashboard项目 输入 http://localhost:8888/#/ 即可到rocketmq界面 整体横向菜单分为八个部分:OPS(运维):主要是设置nameserver和配置vipchannel Dashboard(驾驶舱):控制台的dashboard,可以分别按broker和主题来查看消息的数量和趋势。 Cluster(…

【docker】docker desktop换国内源时 apply按钮为灰色or换源失败 解决方法

配docker环境时复制进去国内镜像源后,发现apply按钮为灰色,点不了,如下图解决方法:往下滑,找到下图圈住的选项打勾再回到Docker Engine界面,发现可以点apply按钮了在文本框中添加"registry-mirrors": ["http://mirrors.ustc.edu.cn","http://mi…

ElasticSearch在Windows环境搭建测试

引子 也持续关注大数据相关内容一段时间,大数据内容很多。想了下还是从目前项目需求侧出发,进行相关学习。Elasticsearch(ES)是位于 Elastic Stack(ELK stack) 核心的分布式搜索和分析引擎。Logstash 和 Beats 有助于收集、聚合和丰富您的数据并将其存储在 Elasticsearch…

科研绘图系列:python语言绘制SCI图合集

介绍 科研绘图系列:python语言绘制SCI图合集 加载python import numpy as np import pandas as pd import matplotlib.pyplot as plt import matplotlib.patches as mpatches import seaborn as snsfrom statsmodels.stats.multitest import multipletests# Setup for local r…

Postman相关

postman打开控制台的快捷键alt+ctrl+c1、工具栏 New: 新建,可以新建Request请求,Collection请求集,环境等等 Import: 导入,可以导入别人导出的请求集 Runner: 运行一个请求集(批量执行) Invite: 邀请(需要注册,邀请进行协作) 同步图标: (需要注册,同步你的项目到云…

TorchOptimizer:基于贝叶斯优化的PyTorch Lightning超参数调优框架

超参数优化是深度学习模型开发过程中的一个核心技术难点。合适的超参数组合能够显著提升模型性能,但优化过程往往需要消耗大量计算资源和时间。本文介绍TorchOptimizer,这是一个基于贝叶斯优化方法的超参数优化框架,专门用于优化PyTorch Lightning模型的超参数配置。TorchOp…

深入理解ASP.NET Core 管道的工作原理

在 .NET Core 中,管道(Pipeline)是处理 HTTP 请求和响应的中间件组件的有序集合。每个中间件组件都可以对请求进行处理,并将其传递给下一个中间件组件,直到请求到达最终的处理程序。管道的概念类似于流水线,每个中间件组件都是流水线中的一个步骤。1. 管道的基本概念 在 …

svn检出has encountered a problem cannot checkout

报错信息:"svn检出has encountered a problem Cannot checkout" 表示 Subversion(SVN)在尝试检出(即下载)版本控制仓库的时候遇到了问题。 解释: 这个错误通常意味着 SVN 客户端无法完成检出操作,可能的原因有多种,包括网络问题、权限问题、URL错误、服务器不…