你知道世界上最遥远的距离吗?——一步之遥

本文介绍了一次解密挑战,其中涉及到Base64编码的使用。通过给定的cipher.txt内容,作者提示需要将字符串解码以找到flag。内容中展示了如何通过减1操作解码Base64字符串,并解释了Base64、Base16和Base32编码的区别。最后,提供了Python代码示例进行Base64解码。这是一篇关于网络安全和编码技术的实践分享。
摘要由CSDN通过智能技术生成

1.解压得到cipher.txt,里面内容为

小明说b3W6f3FzOHKkZ3KiN{B5NkSmZXJ5[ERxNUZ5Z3ZyZ{Gn[kWigR>>
说完,然后他就以64m每秒的速度溜了。 flag格式为SeBaFi{xxx}

在这里插入图片描述在这里插入图片描述
2.由b3W6f3FzOHKkZ3KiN{B5NkSmZXJ5[ERxNUZ5Z3ZyZ{Gn[kWigR>>可以联想到-1得到a2V5e2EyNGJjY2JhMzA4MjRlYWI4ZDQwMTY4Y2YxYzFmZjVhfQ==,通过64km/h或得到的base64密问根据其特征联想到base64解密

a="b3W6f3FzOHKkZ3KiN{B5NkSmZXJ5[ERxNUZ5Z3ZyZ{Gn[kWigR>>"
s=[""]*len(a)
for i in range(len(a)):
    s[i]=chr(ord(a[i])-1)
print ("".join(s))

Base64的索引与对应字符的关系

Base16编码是将二进制文件转换成由16个字符组成的文本 。

Base32的编码表是由(A-Z、2-7)32个可见字符构成,“=”符号用作后缀填充。

Base64的编码表是由(A-Z、a-z、0-9、+、/)64个可见字符构成,“=”符号用作后缀填充。

在这里插入图片描述
3.通过下面最简单的代码将其解码或通过在线base64解码

import base64
s = input()
print (base64.b64decode(s))

在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值