什么是base64?(base64?)

Base64是一种将任意二进制数据(不仅仅由纯文本字符组成的数据)转换为纯文本消息的方法,然后可以通过计算机网络进行传输。这就是所谓的编码。虽然base64编码消息的输出不是人类容易理解的,但它仍然由64个通用英语字符组成,这就是名称的来源,另外还有一个用于特殊目的的第65个字符。...

Base64是一种将任意二进制数据(不仅仅由纯文本字符组成的数据)转换为纯文本消息的方法,然后可以通过计算机网络进行传输。这就是所谓的编码。虽然base64编码消息的输出不是人类容易理解的,但它仍然由64个通用英语字符组成,这就是名称的来源,另外还有一个用于特殊目的的第65个字符。

The ASCII coding system is known for its adaptability and simplicity.

base64背后的想法产生于通过网络通信(如电子邮件)获取不仅仅是简单文本字符的需求。第一批电子邮件最初是以美国信息交换标准代码(ASCII)中的字符编码的,ASCII是计算机中使用的一种编码方法,用于在显示器或打印机上将英语字母字符表示为文本。由于需要获得额外的二进制信息,开发了新的编码方案。

base64编码方法最初是在多用途Internet邮件扩展(MIME)标准中描述的。MIME标准定义的方法,通过该方法,非ASCII编码的其他字符(如非英语语言使用的字母表)以及其他任意二进制数据也可以编码为ASCII序列,并通过电子邮件进行传输。在MIME标准描述的两种主要编码方式中,base64与另一种称为quoted printable的编码方式共享角色。虽然引用的可打印方法能够将ASCII扩展到其有限的94个可打印字符之外,但base64可以获取任何字节序列并将其转换为ASCII序列。

Base64需要获取不符合ASCII标准的数据字符串,并将其转换为ASCII。为此,编码方法是将数据收集到三个字节的组中,并将其转换为表示相应ASCII字符的四个数字的过程。由于一个字节是8位,其中每个位用1或0表示,因此三个字节端到端链接,整个序列进入24位缓冲区。然后将24个1和0分为四组,每组6位,然后分配与ASCII字符匹配的数字。

由于base64能够对任何二进制数据进行编码,因此任何字节序列都可以通过该过程。然而,在编码的字节数不能被三整除的情况下,有一个缺点,就是这些字节可以放入缓冲区。如果一个字节序列包含,比如说,四个或五个字节,那么仍然需要一些东西来填充缓冲区并组成完整的24位。在这些情况下,每个缺失的字节由8个0表示,并随后在完成的编码中转换为填充字符。这就是前面提到的第65个字符的来源,在编码消息中用等号(=)表示;只有在需要填充时,它才会出现在编码的最后。

尽管base64最初是为通过电子邮件传输二进制数据而设计的,但它的使用已经在MIME之外的许多其他领域发挥了作用。其中一个相当常见的用途是web数据库和应用程序对数据进行编码,以便在web表单上创建统一资源定位器(URL)。可扩展标记语言(XML)还使用了一种变体,允许在XML文档中包含二进制数据,例如小图像。加密方法和其他安全相关技术(如隐藏密码)还存在其他变体。

  • 发表于 2021-12-12 19:21
  • 阅读 ( 86 )
  • 分类:互联网

你可能感兴趣的文章

特里斯(tris)和tris基(tris base)的区别

...们相关的分子而不同。 目录 1. 概述和主要区别 2. 崔丝是什么 3. 什么是Tris Base 4. 并列比较-表格形式的Tris与Tris Base 5. 摘要 什么是特里斯(tris)? 术语tris是指任何含有三羟甲基氨基甲烷基的化合物。通常,三(羟甲基)氨基甲烷...

  • 发布于 2020-09-23 18:43
  • 阅读 ( 901 )

tris基(tris base)和盐酸三氯氢钠(tris hcl)的区别

...化学式和一个额外的HCl分子。 目录 1. 概述和主要区别 2. 什么是Tris Base 3. 什么是Tris HCl 4. Tris碱与Tris-HCl的相似性 5. 并列比较-Tris Base与Tris HCl表格形式 6. 摘要 什么是tris基(tris base)? 术语tris碱用于命名化合物三羟甲基氨基甲烷,...

  • 发布于 2020-10-17 21:50
  • 阅读 ( 1078 )

基本字(base word)和词根(root word)的区别

...而词根词则来自另一种语言。 目录 1. 概述和主要区别 2. 什么是基本词 3. 什么是词根 5. 并列比较-基本词和词根的表格形式 6. 摘要 什么是基本词(a base word)? There are two types of words in the English language: the words that can be broken down into...

  • 发布于 2020-10-24 06:11
  • 阅读 ( 820 )

基础(basis)和基地(bases)的区别

...单数形式的名词,而bases是base或basis的复数形式。 基础是什么意思? 基础是指一个想法、论点或过程的基础支持或基础。换言之,它指的是其他事物建立或基于的东西。依据是指某事物或系统或原则的正当性,根据它进行一项...

  • 发布于 2020-10-28 01:23
  • 阅读 ( 183 )

如何使用libreoffice base创建新数据库

... 不管你最后做了什么,右击那一行并选中下拉菜单中的主键框。如果不选择字段作为主键,则在尝试保存表时,Base将抛出一个错误。 ...

  • 发布于 2021-03-29 12:50
  • 阅读 ( 316 )

弱碱(weak base)和坚实的基础(strong base)的区别

...烈反应;腐蚀性 论有机质; 把红石蕊纸变成蓝色。   什么是弱碱(weak base)? 弱碱在溶液中只部分解离产生离子。 当碱离子化时,它会从水中吸收氢离子,从而留下一个OH-离子。弱碱溶液的H+浓度高于强碱溶液。 水溶液的碱度...

  • 发布于 2021-06-25 17:49
  • 阅读 ( 295 )

基于云的(cloud based)和基于服务器(server based)的区别

...的情况。我们目睹过,也可能做过,但我们不知道到底是什么。我们谈论的是云技术,它已经存在了相当长的一段时间了,我们一直在不知不觉中通过Amazon、Gmail、Google Docs等使用云技术,但我们对它知之甚少。让我们来看看基...

  • 发布于 2021-06-25 18:14
  • 阅读 ( 430 )

酸的(acid)和基础(base)的区别

...一起形成水分子。它们的离子对应物聚在一起形成盐。 什么是酸(an acid)? 根据化学理论,酸的定义有很多种。根据阿伦尼乌斯的定义,酸是一种物质,当它溶解在水中时会增加H+离子的浓度。根据Brønsted-Lowry定义,酸是一种可...

  • 发布于 2021-06-27 11:43
  • 阅读 ( 868 )

坚强的(strong)和弱碱(weak bases)的区别

...从而提供它所具有的一些羟基离子。 覆盖的关键领域 1.什么是强碱-定义、性质、实例反应2.什么是弱碱-定义、性质、实例反应3.强碱和弱碱的区别是什么-关键区别的比较 关键词:酸,离解,离解常数,羟基离子,强碱,弱碱 ...

  • 发布于 2021-06-29 13:55
  • 阅读 ( 469 )

快速以太网(fast ethernet)和千兆以太网(gigabit ethernet)的区别

... 关系 10Base-T以太网的继承者。 快速以太网的后继者。 什么是快速以太网(fast ethernet)? 快速以太网是计算网络中的以太网术语,代表以每秒100mbit的速率进行通信。以太网的通常速度是10mbit/s。1995年,第一次引入了快速以太网...

  • 发布于 2021-07-08 07:27
  • 阅读 ( 672 )
ulwn5194
ulwn5194

0 篇文章

相关推荐