编码之Base64编码

2023-10-31

Base64编码 是一种基于 64 个可打印字符来表示二进制数据的方法。目前 Base64 已经成为网络上常见的传输 8 位二进制字节代码的编码方式之一。

为什么会有 Base64 编码呢?因为有些网络传送渠道并不支持所有的字节,例如:传统的邮件只支持可见字符的传送,像 ASCII 码的控制字符就不能通过邮件传送。这样用途就受到了很大的限制。

图片的二进制流的每个字节不可能全部是可见字符,这就导致图片的二进制流无法传送。最好的解决方式就是在不改变传统协议的情况下,做一种扩展方案来支持二进制文件的传送。即把不可打印的字符也能用可打印字符来表示,问题就解决了。

Base64 编码就是为了实现这一方案而设计的编码格式。

Base64 就是一种基于 64 个可打印字符来表示二进制数据的表示方法

它的编码过程如下:

  • 将待转换的字符串每三个字节分为一组,每个字节占 8 个二进制位,那么共有 24 个二进制位。

  • 将第(1)步得到的每 24 个二进制位分为每 6 个一组,则每 3 个字节可分为 4 组。

  • 在每组前面添加两个 0 ,每组由 6 个二进制位变为 8 个二进制位,总共 32 个二进制位,即四个字节。

  • 根据 Base64编码对照表(见下表)获得对应的值。

大多数编码都是由字符串转化成二进制的过程,而 Base64 的编码则是从二进制转换为字符串。与常规恰恰相反,Base64 编码主要用在传输、存储、表示二进制领域,不能算得上加密,只是无法直接看到明文。也可以通过打乱Base64 编码来进行加密。中文有多种编码(比如:utf-8、gb2312、gbk等),不同编码对应Base64编码结果都不一样。

补充

挺多人会误以为 Base64 是加密算法,喜欢在数据传输不安全的时候来一句:使用 Base64 加密一下呗。

我们先来看一下加密的定义:在密码学中,加密(英语:Encryption)是将明文信息改变为难以读取的密文内容,使之不可读的过程。只有拥有解密方法的对象,经由解密过程,才能将密文还原为正常可读的内容。

所谓加密算法就是加密的方法。

如果你使用  Base64  进行 "加密" ,第三方拿到数据可以瞬间解密,根本无法实现你想要的 加密 效果。因此,Base64 不能说是 加密算法,只能说是 编码

Tips

如果你需要在网络上留下你的 微信号、邮箱、QQ 、手机号等具有隐私信息的时候,你不妨留下它们对应的 Base64 编码信息。一方面,想要联系你的人需要进行解码操作,可以过滤一部分需求没那么强烈的人;另外一方面也可以形成 简单的反爬虫 操作,不容易被爬虫收集到你的隐私信息。

 

我是在php的期末作业时候用到这个玩意,我们对图片进行了base64编码

background-image: url("data:image/png;base64,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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

编码之Base64编码 的相关文章

  • 使用 PHP 从 Mongo 解码 JSON

    我已经看过这个线程 PHP 解码嵌套 JSON https stackoverflow com questions 3555335 php decode nested json并没有设法用它来解决我的问题 我目前正在从 Mongo 获取 J
  • 如何在 Python 中追加到 JSON 文件?

    我有一个 JSON 文件 其中包含 67790 1 kwh 319 4 现在我创建一个字典a dict我需要将其附加到 JSON 文件中 我尝试了这段代码 with open DATA FILENAME a as f json obj js
  • GitHub Actions:如何将 toJSON() 结果传递给 shell 命令

    因此 我正在与 Github Actions 合作进行端到端测试 我正在查看的设置是让一项作业检索要测试的 url 列表 而我的第二项作业使用该列表创建一个矩阵并测试所有这些 我的问题是 当我实际运行测试脚本时 必须从命令行完成 因为我使用
  • 将 List 转换为 JSON

    Hi guys 有人可以帮助我 如何将我的 HQL 查询结果转换为带有对象列表的 JSON 并通过休息服务获取它 这是我的服务方法 它返回查询结果列表 Override public List
  • 如何循环遍历 JSON 数组?

    我有一些 JSON 代码 其中包含多个对象 MNGR NAME Mark MGR ID M44 EMP ID 1849 MNGR NAME Steve PROJ ID 88421 PROJ NAME ABC PROJ ALLOC NO 49
  • 将 JSON 文件读入 Spark 时出现 _corrupt_record 错误

    我有这个 JSON 文件 a 1 b 2 这是通过Python json dump方法获得的 现在 我想使用 pyspark 将此文件读入 Spark 中的 DataFrame 根据文档 我正在这样做 sc SparkContext sql
  • Spring REST 控制器返回带有空数据的 JSON [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我有一个简单的 Spring Boot Web 应用程序 我正在尝试从服务器接收一些数据 控制器返回一个集合 但浏览器收
  • 使用 TestRestTemplate 和 MockRestServiceServer 时,解析异常而不是实体列表不起作用

    我有一个简单的控制器 CODE https github com joergi tryouts blob main kotlin mockrestserver src main kotlin io joergi kotlinmockrest
  • 在 JSON 对象中存储和发送原始文件数据

    我正在寻找一种方法来传输任何文件类型的原始文件数据和任何可能的内容 我的意思是文件和文件内容都是用户生成的 在 Backbone 前端中使用 xhr ajax 调用两种方式针对 Django 后端 编辑 也许问题仍然不清楚 如果您在 IDE
  • 读取完 JSON 内容和意外标记后遇到的其他文本(在我的 json 中)

    我使用 JSON Net 创建的 json feed 遇到一些问题 当我尝试解析它时 它给了我 读取完 JSON 内容后遇到的附加文本 路径 第 17 行 位置 4 我尝试用以下方法验证它http json parser online fr
  • 如何阅读网站内容?

    我是使用 python 2 7 的网络爬虫的新手 一 背景 现在 我想收集有用的数据AQICN org http aqicn org city shenyang usconsulate 这是一个很棒的网站 提供世界各地的空气质量数据 我想用
  • Twitter api 文本字段值被截断

    为什么文本字段值被截断以及如何获得完整的值 截至目前 我正在尝试获取如下所示的文本字段值 do if let responseObject try NSJSONSerialization JSONObjectWithData respons
  • 使用 JSON 文件动态更新 HTML 内容?

    我想创建一个 JS 循环 使用 jQuery 来查看 JSON 文件 并根据是否 div ids 与 JSON id 值匹配 这需要易于扩展并且无论有多少人都可以工作 div 添加了盒子 我有一个 HTML 文件 设置如下 div clas
  • json 具有自动完成功能?

    我在用Jquery 自动完成 http docs jquery com Plugins Autocomplete autocomplete url or dataoptions 我也在使用 formatItem 我希望输出是
  • 在 Django 模板中通过键访问字典

    我正在将字典从我的视图传递到模板 所以 key1 value1 key2 value2 传入并循环键 值对很好 但是我还没有找到从特定键直接在视图中访问的优雅解决方案 例如 key1 例如 bu json items key1 我可以使用一
  • 从响应中获取标头(Retrofit / OkHttp 客户端)

    我正在使用 Retrofit 与 OkHttp 客户端和 Jackson 进行 Json 序列化 并希望获取响应的标头 我知道我可以扩展 OkClient 并拦截它 但这发生在反序列化过程开始之前 我基本上需要的是获取标头以及反序列化的 J
  • 将MongoDb atlas数据库导出到本机Mongo compass

    我在 Atlas 中有一个名为 test 的远程数据库 我想将集合名称 image table 下载为 JSON 文件 在 Mac 终端中 mongoexport db test collection image table image j
  • 如何在谷歌地图android上显示多个标记

    我想在谷歌地图android上显示带有多个标记的位置 问题是当我运行我的应用程序时 它只显示一个位置 标记 这是我的代码 public class koordinatTask extends AsyncTask
  • 使用 AsyncTask 传递值

    我一直在努力解决这个问题 但我已经到了不知道该怎么办的地步 我想做的是使用一个类下载文件并将其解析为字符串 然后将该字符串发送到另一个类来解析 JSON 内容 所有部件都可以单独工作 并且我已经单独测试了所有部件 我只是不知道如何将值发送到
  • 使用 Ajax 请求作为源数据的 Jquery 自动完成搜索

    我想做的事 我想使用 jquery 自动完成函数创建一个输入文本字段 该函数从跨域curl 请求获取源数据 结果应该与此示例完全相同 CSS 在这里并不重要 http abload de img jquerydblf5 png http a

随机推荐

  • KubeVela 再升级:交付管理一体化的云原生应用平台

    11月3日 2022 杭州 云栖大会上 阿里云智能云原生应用平台总经理丁宇宣布 KubeVela 面向四大核心方向能力升级 打造交付管理一体化的云原生应用平台 本次升级是 KubeVela 从应用交付到应用管理不断量变形成的一次质变 同时也
  • 用python读写.mat文件——使用scipy库的scipy.io和h5py库

    python 中的scipy库和h5py库 1 读 mat文件 1 1 用scipy io读取 在用python处理matlab的mat文件时 发现数据量较小的文件可以直接通过scipy库的scipy io读取 import scipy i
  • linux 安装 yum etcd,安装etcd - Go语言中文网 - Golang中文社区

    etcd是一个golang编写的分布式 高可用的一致性键值存储系统 用于提供可靠的分布式键值 key value 存储 配置共享和服务发现等功能 etcd可以用于存储关键数据和实现分布式调度 在现代化的集群运行中能够起到关键性的作用 etc
  • VSCode官网无法下载

    因为不是国内的服务器 所以有可能无法下载或者下载失败 将下载地址https stable之间的部分更改为vscode cdn azure cn 重新复制地址下载就可以
  • 语音信号加噪频域分析与滤波处理(MATLAB GUI)

    语音信号加噪频域分析与滤波处理 MATLAB GUI 文章目录 语音信号加噪频域分析与滤波处理 MATLAB GUI GUI功能界面如图所示 部分代码展示 IIR高通滤波结果 IIR带通滤波结果 联系方式 email Jaceshuai j
  • python重复执行_python scrapy重复执行实现代码详解

    这篇文章主要介绍了python scrapy重复执行实现代码详解 文中通过示例代码介绍的非常详细 对大家的学习或者工作具有一定的参考学习价值 需要的朋友可以参考下 Scrapy是一个为了爬取网站数据 提取结构性数据而编写的应用框架 我们只需
  • windows使用rdp远程连接deepin

    deepin版本是截止目前最新的15 11 可以安装xrdp和x11vnc来使用windows可以远程连接 首先开启ssh sudo apt get install openssh server 开启服务 sudo systemctl st
  • 云计算 第七章 云安全(3)概述 云计算面临的安全问题 云安全问题的深层原因 云安全关键技术 云计算信息安全的国内外标准化

    关注公众号凡花花的小窝 收获更多的考研计算机专业编程相关的资料 加密与解密 目前 云服务提供商般采用密码学中的技 术来保证数据安全 常用技术之一就是对数招进1加8和联名密码技术不仅服务于信息的加密和解密 也是身份认证 访问控制和数排签名等多
  • 根据E-R图设计数据库表

    上图是一个E R图 一共有三个实体 司机 车辆 车队 并且这几个实体之间互相具有一定的联系 我们首先把所有实体的表写出来 数据类型的选择请参考文章 https blog csdn net qq 61659383 article detail
  • 最完整梳理:SSL证书的诞生和历史

    HTTPS加密已经成为主流的网络传输协议 但是 SSL证书的诞生和历史你了解吗 跟着本文一起了解一下SSL证书的进化史 SSL TLS协议进化史 SSL协议 Secure Sockets Layer 安全套接层 是一套网络通信安全协议 具有
  • Nginx(二十一)nginx配置python

    一 scgi wsgi uwsgi 1 scgi gt 了解 SCGI是一种 与语言无关 的连接 web服务器 和 web应用程序 的方法 2 wsgi gt 协议 wsgi 一种 实现python解析 的通用 接口标准 协议 实现了 py
  • nginx的简单介绍 什么是nginx,为什么使用nginx,nginx的优点

    一 什么是nginx 1 Nginx是一款轻量级的Web 服务器 反向代理服务器及电子邮件 IMAP POP3 代理服务器 在BSD like 协议下发行 其特点是占有内存少 并发能力强 事实上nginx的并发能力在同类型的网页服务器中表现
  • Java高级面试题解析(二):百度Java面试题前200页(精选)

    基本概念 操作系统中 heap 和 stack 的区别 heap是堆 stack是栈 是两种不同的数据结构 堆是队列优先 先进先出 栈是先进后出 在java多线程中 每个线程都有自己的栈 不同的线程共享一个堆 在java内存中 栈中存放的大
  • 国庆在家写了个简易版的在线简历网站

    一个可在线编辑的简历页面 放在github Page上托管 在线编辑 可生成PDF 从此跑路没烦恼 目录 一 GitHub Page托管简历 二 修改简历 三 简历下载 一 GitHub Page托管 1 页面样式 这个简历单纯页面技术含量
  • tcpclient和tcplistener通信

    服务器和客户端的代码都在在vs中编写并运行的 功能上实现了一个客户端和服务器互发消息 如果哪位大神知道多个客户端怎么搞 请留个思路给我 感谢 服务器的代码 using System using System Collections Gene
  • Git commit格式 详解

    我们在使用git进行版本控制的时候 commit的格式是有要求的 我们可以先去看一些顶级项目他们的commit的格式是怎样的 angular在github上的commit信息 我们可以发现 commit都有一些前缀 比如说 feat tes
  • VRTK简要说明

    1 导入VRTK开发包 下方三个为基础控件 用于识别硬件设备以及相关配置 2 移动功能简介 3 ui交互事件 将VRTK UICanvas 组件添加到Canvas下可用ui所有事件 1 问题容易出现ui穿透 所以在做的时候要防止穿透 最好不
  • sqli-labs通关大全(更新至Less60)

    sqli labs通关 less1 less10 箭雨镜屋 CSDN博客 sqli labs通关 less11 less20 箭雨镜屋 CSDN博客 sqli labs通关 less21 less30 箭雨镜屋 CSDN博客 sqli la
  • config:fail,Error: 系统错误,错误码:63002,invalid signature

    经过半天的尝试 终于把这个解决了 本文章比较是和 前端用 hash分享下这个问题吧 看了好多文章都没解决了我的问题 直接上干货 1 首先出一张基本的问题图 2 针对上面这个图第2点内 hash 做个讲解 因为我前端用的 hash模式 一般网
  • 编码之Base64编码

    Base64编码 是一种基于 64 个可打印字符来表示二进制数据的方法 目前 Base64 已经成为网络上常见的传输 8 位二进制字节代码的编码方式之一 为什么会有 Base64 编码呢 因为有些网络传送渠道并不支持所有的字节 例如 传统的