密码学入门——各类编码的认识(一)ASCII编码

我的密码学入门是从编码开始,逐步认识到各种密码类型,我会逐步总结。
今天先介绍ASCII,base系列等编码

ASCII

计算机的最早发明者是美国人,所以他们首要面临的问题就是如何让机器能够将他们的文字,也就是拉丁字母与二进制相对应,然而在计算机出现早期,各个公司都创建了属于自己的一套编码规则,这给不同计算机之间的数据交换带来了极大困难。
ASCII的标准版本第一次发布于1967年,迄今为止共收录了128个字符,包含了基本的拉丁字母(英文字母)、阿拉伯数字(也就是1234567890)、标点符号(,.!等)、特殊符号(@#$%^&等)以及一些具有控制功能的字符(往往不会显示出来)。
在ASCII编码中,大写字母、小写字母和阿拉伯数字都是连续分布的。

连续分布的ASCII编码为程序员带来了极大方便,例如:当寻找某个字母的位置时,只需要记住A的ASCII编码,然后加上两者之间的间隔。
在这里插入图片描述扩展ASCII打印字符
扩展的ASCII字符满足了对更多字符的需求.增加了128个字符.
即使有了这些更多的字符,许多语言还是包含无法压缩到256个字符中的符号.因此,出现了一些ASCII的变体来囊括地区性字符和符号.
在这里插入图片描述在平时遇到大批量的ASCII编码需要转换时,可进入下列在线网站 :ASCII编码

除此以外,还可以将二进制,十六进制直接转换为ASCII编码(本质上是将其他进制转换为十进制,再将十进制与ASCII编码一一对应)

下面附上python3脚本(将十六进制转换为ASCII)

from binascii import a2b_hex

h =input()
p1 = bytes(h,'utf-8')
p2 = a2b_hex(p1)
print(p2.decode())

下一节我们讲解base系列编码

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值