MISC入门中常用到的编码知识

一、ASCII编码

  • ASCII编码是使用一个8位二进制数来表示一个字符的编码。
  • 数字0—9的ASCII码是从48——57
  • 大写英文字母A——Z的ASCII码是从65——90
  • 小写英文字母a——z的ASCII码是从97——112
  • 以上提到的ASCII码都是经常用到的,为了在做题目时更加的得心应手,应该记住这些常用的ASCII码

二、Base编码

常用到的base编码有base16,base32,base48,base52,base64,base91,base92,base100

1.base64编码

  • base64的编码表是由(大写字母A-Z,小写字母a-z,数字0-9,+,/)64个字符组成的。
  • base64的编码原理:base64在编码过程中,将三个八位二进制数拆分成四个六位二进制数,然后在每一个六位二进制数的最高位添加两个0,得到四个八位二进制数。这就完成了base64的编码。
  • 通常情况下,在经过base64编码后的密文尾部会有两个==符号,这是识别base64编码的技巧。

2.base32编码

  • Base32 编码是一种将二进制数据表示为可读字符串的编码方式。它使用 32 个字符(通常是 A-Z 和 2-7)来表示数据,每个字符代表 5 个比特位。相对于 Base64 编码,Base32 编码不使用大小写字母和常见的特殊字符,因此在一些特殊环境下更适用。

    以下是关于 Base32 编码的一些知识点:

  • 字符表:Base32 编码使用的字符表通常是 A-Z 和 2-7。有些变种字符表使用不同的字符集,但仍然遵循使用 32 个字符的原则。

  • 原理:Base32 将输入数据分成一系列 5 位的组,然后将每个 5 位的组转换为相应的字符。如果输入数据的长度不是 5 的倍数,会进行填充以确保长度符合要求。

  • 填充字符:有时,Base32 编码使用额外的填充字符(通常是等号 "=")来表示输入数据末尾的不完整字节。

  • 用途:Base32 编码常用于需要将二进制数据转换为文本的场景,如电子邮件地址验证、URL 缩短服务、身份验证令牌等。

  • 安全性:Base32 编码并不提供加密或安全性保护,它只是一种表示二进制数据的编码方式。如果需要保护数据的机密性,请使用适当的加密算法。

  • 编码和解码:编码是将二进制数据转换为 Base32 字符串的过程,而解码是将 Base32 字符串还原为原始二进制数据的过程。编码和解码过程可以使用编程语言中的相应函数或库进行操作。

3.base16编码

  • Base16 编码,也称为十六进制编码或者简称为 Hex 编码,是一种将二进制数据表示为十六进制数字的编码方式。它使用 16 个字符(0-9 和 A-F)来表示数据,每个字符代表 4 个比特位。

    以下是关于 Base16 编码的一些知识点:

  • 字符表:Base16 编码使用的字符表是 0-9 和 A-F,共 16 个字符。每个字符对应 4 个比特位的组合。

  • 原理:Base16 将输入数据按照每 4 个比特位一组进行分组,然后将每个 4 位的组转换为相应的十六进制字符。

  • 用途:Base16 编码常用于表示和传输二进制数据,如在计算机文件中表示字节流、表示内存地址、表示网络数据包等。

  • 编码和解码:编码是将二进制数据转换为 Base16 字符串的过程,而解码是将 Base16 字符串还原为原始的二进制数据。编码和解码过程可以使用编程语言中的相应函数或库进行操作。

  • 优点:Base16 编码具有广泛的应用和使用场景,它是一种简单和常见的编码方式,易于理解和实现。

  • 数据长度:Base16 编码会将原始二进制数据扩大一倍。每个字节(8 比特位)在 Base16 编码中被表示为两个十六进制字符。

三、学习感悟

  • 了解并学习常见的编码,并熟记它们的特征才能让我们在CTF比赛中遇到这些编码时才能更得心应手。
  • 但CTF里面还有很多奇奇怪怪的编码是我们很难记住的,但我们还是需要知道,遇到时再快速查阅便可,毕竟打CTF比赛不可能什么都准备好了,当然,准备的越齐全当然越好!

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值