BugkuCTF-Crypto(1-5)

news2024/11/18 19:20:35

题:抄错的字符

题目作者: Aman
题目描述:老师让小明抄写一段话,结果粗心的小明把部分数字抄成了字母,还因为强迫症把所有字母都换成大写。你能帮小明恢复并解开答案吗:QWIHBLGZZXJSXZNVBZW

分析:

  • 数字和字符可能的转换:l-1, s-5, b-6, z-2, B-8, G-9

1 : l(小写L)、I(大写i)
2 : Z/z
5 : S/s
8 : B
9 : g
0 : O/o

尝试还原字符串,进行base64解码

from base64 import b64decode
from string import printable

# 字母数字对应表
Numlist = {'i': '1', 'l': '1', 'z': '2', 's': '5', 'g': '9', 'o': '0'}


# 分割字符串
def cut(obj, sec):
    return [obj[i:i + sec] for i in range(0, len(obj), sec)]


# 使用递归将字符串还原回所有可能的结果
def decode(str):
    res = []
    if len(str) > 1:
        relist = decode(str[1:])
        Rlist = decode(str[0])
        for i in Rlist:
            for j in relist:
                res.append(i + j)
    else:
        res.append(str[0].lower())
        res.append(str[0].upper())
        if str[0].lower() in Numlist:
            res.append(Numlist[str[0].lower()])
    return res


# 判断base解码后是否是正常的字符
def isbase(str):
    res = b64decode(str)
    for i in res:
        if i not in printable.encode():
            return False
    return True


if __name__ == '__main__':
    enstr = 'QWIHBLGZZXJSXZNVBZW'
    # base64可以切片分别解码,减少运算数量
    enlist = cut(enstr, 4)
    flag = []
    for i in enlist:
        delist = decode(i)
        f = []
        for base in delist:
            base += '=' * (4 - len(base))  # 填充=
            if isbase(base):
                # print(base, end=',')
                f.append(b64decode(base).decode())
        flag.append(f)
        print(f)

在这里插入图片描述
所以结合作者的名字,flag{Aman_very_cool}

题:/.-

题目描述: …-./.-…/.-/–./----.–/-…/…–/…-./-.-./-…/…-./.----/–…/…-./----./…–/----./----./…/-----/…-/-----.-

分析:
点横推测是摩斯密码
在这里插入图片描述得到flag{d3fcbf17f9399504}

题:聪明的小羊

题目描述:一只小羊翻过了2个栅栏 fa{fe13f590lg6d46d0d0}

分析:
根据提示为栅栏密码
在这里插入图片描述
代码为:

import sys
def fence_Passwd_burst(secret):
    res = [step for step in range(2, len(secret)) if len(secret)%step == 0]
    for step in res:
        flag = ''#获取解密结果,以step栏进行遍历获取解密后的flag
        for i in range(step):flag += secret[i::step]
        print('第%s栏: 解密结果:%s' %(str(step), flag))
if(__name__ == '__main__'):
    secret ="fa{fe13f590lg6d46d0d0}"
    fence_Passwd_burst(secret)

得到flag{6fde4163df05d900}

题:ok

描述: Ook.
附件里面全是该字符:
在这里插入图片描述
使用在线工具解密:https://www.splitbrain.org/services/ook
在这里插入图片描述

题:[±<>]

题目描述: +++++ +++++ [->++ +++++ +++<] >++.+ +++++ .<+++ [->-- -<]>- -.+++ +++.< ++++[ ->+++ +<]>+ +++.< +++++ +++[- >---- ----< ]>— ----- —.< +++++ ++[-> +++++ ++<]> +++.< +++++ +[->- ----- <]>-- ----- -.–. ----. --.++ +++++ +.<++ ++++[ ->+++ +++<] >++++ +.++. <++++ ++[-> ----- -<]>- ----- ----. -.<++ +++++ [->++ +++++ <]>+. ----. ++++. <++++ +++[- >---- —<] >---- .+.<+ +++++ ++[-> +++++ +++<] >++++ +++++ ++.<

使用在线工具解密:https://ctf.bugku.com/tool/brainfuck
在这里插入图片描述

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

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

相关文章

数据库管理-第217期 Oracle的高可用-02(20240704)

数据库管理217期 2024-07-04 数据库管理-第217期 Oracle的高可用-02&#xff08;20240704&#xff09;1 GDS简介2 GDS架构2.1 全局数据服务池2.2 全局数据服务域2.3 全局服务管理2.4 全局数据服务目录2.5 Oracle通知服务 3 GDS简图3.1 负载均衡3.2 只读服务失败转移3.3 多主复制…

7.1 动态规划背包问题综述

动态规划中的背包问题是一类经典的优化问题&#xff0c;主要涉及到在给定的限制条件下&#xff08;如背包容量&#xff09;&#xff0c;如何选择物品集合以达到某种最优目标&#xff08;如价值最大&#xff09;。这类问题通常可以细分为几种类型&#xff0c;包括0-1背包问题、完…

Android的图书交易APP-计算机毕业设计源码25753

摘 要 在数字化与移动互联网迅猛发展的今天&#xff0c;人们对于图书的需求与消费方式也在悄然改变。为了满足广大读者对图书的热爱与追求&#xff0c;我们倾力打造了一款基于Android平台的图书交易APP。这款APP不仅汇聚了海量的图书资源&#xff0c;提供了便捷的交易平台&…

.Net Core + DDD基础分层

基础设施层 基础设施层使用的相关知识&#xff1a;Code First &#xff0c;EF Core&#xff0c;Autofac依赖注入&#xff0c;仓储模式的实现接口&#xff0c;领域服务的实现接口&#xff0c;缓存&#xff0c;以及各种基础工具类 一&#xff0c;Code First&#xff1a;使用Cod…

大学生竞赛管理系统-计算机毕业设计源码37276

大学生竞赛管理系统的设计与实现 摘 要 随着教育信息化的不断发展&#xff0c;大学生竞赛已成为高校教育的重要组成部分。传统的竞赛组织和管理方式存在着诸多问题&#xff0c;如信息不透明、效率低下、管理不便等。为了解决这些问题&#xff0c;提高竞赛组织和管理效率&#x…

新书速览|UML 2.5基础、建模与设计实践

《UML 2.5基础、建模与设计实战》 本书内容 UML是以面向对象图形的方式来描述任何类型的系统&#xff0c;应用领域非常广泛&#xff0c;其中常用的是建立软件系统的模型。《UML 2.5基础、建模与设计实践》基于draw.io开源免费软件&#xff0c;全面讲解UML 2.5的基本概念和建模…

SpringCloud集成Oauth2.0看完这个基本就理解原理了

目录 1.技术栈准备工作 2. 模块架构介绍 3.网关模块&#xff08;gateway&#xff09; 3.1 网关模块(gateway) 3.2 附上主要依赖包 3.3 bootstrap 相关配置 3.4 gateway.yaml 3.5 UserAuthGlobalFiter 全局拦截器配置 4.授权认证模块(auth) 4.1 启用web安全认证&#xff…

移动硬盘传输中断后无法识别:深度解析与数据救援指南

在日常的数据存储与传输过程中&#xff0c;移动硬盘凭借其大容量、便携性成为众多用户的首选。然而&#xff0c;当我们在复制或移动大量数据时遭遇传输中断&#xff0c;随后发现移动硬盘无法被电脑识别&#xff0c;这无疑是一场数据安全的紧急警报。此情此景&#xff0c;不仅影…

RestTemplate、MockMVC、Swagger

rest代码风格 硬编码的部分在实际开发中都是会替换成枚举对象 SpringMVC会自动把json格式的post请求转化为对应接收的 对象 响应请求时&#xff0c;也会自动把 对象转化为 json格式的 RestTemplate 浏览器的地址栏只能提供get请求访问后端&#xff0c;如果要使用post方式发送…

400G SR4和800G SR8光模块在AI集群中的应用

人工智能&#xff08;AI&#xff09;技术的快速发展下&#xff0c;AI集群的计算能力和数据传输需求不断提升。为了满足这一需求&#xff0c;光模块技术也在不断进步。高速率光模块作为新一代高速光通信解决方案&#xff0c;正在逐步应用于AI集群中&#xff0c;为其提供更高效、…

Python函数缺省参数的 “ 坑 ” (与C++对比学习)

我们都知道Python函数的缺省参数可以降低我们调用函数的成本&#xff0c;但是一般我们的缺省参数都是不可变对象&#xff0c;如果是可变对象&#xff0c;我们对其多次调用会发生什么呢&#xff1f; def func(arr[]):arr.append(Hello)print(arr)func() func() func() 这貌似…

phpcms 升级php8.3.8

windows 2008 server 不支持php8.3.8,需升级为windows 2012 1.下载php8.3.8 PHP8.3.9 For Windows: Binaries and sources Releases 2.配置php.ini (1.)在php目录下找到php.ini-development文件&#xff0c;把它复制一份&#xff0c;改名为php.ini (2.)修改php安装目录 根…

盘点2024年六大好用的安全管理软件!

“安全管理”始终是国家和社会关注的焦点&#xff0c;因为安全管理包括了人身安全、企业运营安全、设备稳定以及社会和谐等多个维度。在当前的社会和技术背景下&#xff0c;企业为追求降本增效且能更加高效的管理安全问题&#xff0c;也在不断探索和尝试各种安全管理软件。我凭…

游戏AI的创造思路-技术基础-计算机视觉

让游戏的AI具备“眼睛”和“视觉”&#xff0c;就是通过计算机视觉的方法进行的。现在&#xff0c;越来越多的游戏&#xff0c;特别是动捕类游戏都在使用这个方法。当然&#xff0c;计算机视觉不仅仅用于游戏&#xff0c;越来越多的应用使用到这个技术 目录 1. 定义 2. 发展历…

【面向就业的Linux基础】从入门到熟练,探索Linux的秘密(九)-git(1)

Git是一个版本管理控制系统&#xff08;缩写VCS&#xff09;&#xff0c;它可以在任何时间点&#xff0c;将文档的状态作为更新记录保存起来&#xff0c;也可以在任何时间点&#xff0c;将更新记录恢复回来。 文章目录 前言 一、git是什么 二、git基本概念 三、git基本命令 总结…

02-android studio实现下拉列表+单选框+年月日功能

一、下拉列表功能 1.效果图 2.实现过程 1&#xff09;添加组件 <LinearLayoutandroid:layout_width"match_parent"android:layout_height"wrap_content"android:layout_marginLeft"20dp"android:layout_marginRight"20dp"android…

vue配置sql规则

vue配置sql规则 实现效果组件完整代码父组件 前端页面实现动态配置sql条件&#xff0c;将JSON结构给到后端&#xff0c;后端进行sql组装。 这里涉及的分组后端在组装时用括号将这块规则括起来就行&#xff0c;分组的sql连接符&#xff08;并且/或者&#xff09;取组里的第一个。…

细说MCU的ADC模块单通道连续采样的实现方法

目录 一、工程依赖的硬件及背景 二、设计目的 三、建立工程 1、配置GPIO 2、选择时钟源和Debug 3、配置ADC 4、配置系统时钟和ADC时钟 5、配置TIM3 6、配置串口 四、代码修改 1、重定义TIM3中断回调函数 2、启动ADC及重写其回调函数 3、定义用于存储转换结果的数…

30斤用什么快递便宜?大件物品怎么寄划算省钱?

大学生小李最近因为毕业要搬家&#xff0c;不得不把一堆书籍、衣服和一些生活用品寄回家。作为一个精打细算的“穷学生”&#xff0c;小李可是不愿意在快递费上花冤枉钱的。于是&#xff0c;他开始研究各种寄快递省钱的方法&#xff0c;今天我们就来看看小李是怎么操作的。一、…

【Python画图-seaborn驯化】一文学会seaborn画散点图scatterplot、swarmplot技巧

【Python画图-seaborn驯化】一文学会seaborn画散点图scatterplot、swarmplot 本次修炼方法请往下查看 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合&#xff0c;智慧小天地&#xff01; &#x1f387; 免费获取相关内…