365beat-beat365官方网站手机版-365账号无法登陆

全网最优质的Base64 编码和解码教程,附6个示例!

base64 编码可以将二进制数据转换为文本格式,并且能够在任何通信介质上传输数据。 这个编码应用场景非常多,比如电子邮件的加密等。 Base64

全网最优质的Base64 编码和解码教程,附6个示例!

base64 编码可以将二进制数据转换为文本格式,并且能够在任何通信介质上传输数据。

这个编码应用场景非常多,比如电子邮件的加密等。

Base64 方法通常是一种二进制到文本编码方案,它表示 8 字节二进制数据到 ASCII 字符串格式,在各种媒体之间传输或引导数据时,有很多优点,特别是对于文本的支持。

根据 Base64 表示表,二进制数据可以转换为 64 种不同的 ASCII 字符,这种转换易于传输和打印。

使用字母 A 到 Z、a 到 Z、0 到 9 和 + 和 /,总共 64 个 ASCII 字符来表示从 000000 到 111111 的二进制,每个非最终 Base64 数字正好代表 6 位数据。

Bash base64 编码和解码

语法

base64 [参数] [输入文件] [输出文件]

参数:参数如下。

输入文件:可以从标准输入(如命令行)或文件中获取输入。

输出文件:可以将输出重定向到标准输出,如终端或文件。

(1)参数 -e 或 –encode :

用于对来自标准输入或任何文件的任何数据进行编码,是默认选项。

(2)参数 -d 或 –decode :

用于解码来自标准输入或任何文件的任何编码数据。

(3)参数 -n 或 –noerrcheck

默认情况下,base64 在解码任何数据时都会检查错误,可以使用 –n 或 –noerrcheck 选项在解码时忽略检查。

(4)参数 -i 或 –ignore-garbage

用于在解码时忽略非字母字符。

(5)参数 -u 或 -help

用于获取有关此命令的用法的信息。

示例 1 – 基本编码

在 Linux 中,默认安装 base64 包,因此,您可以轻松地在命令行使用它,要简单地对字符串或文本进行编码,可以通过管道将其传递到命令行并获取编码后的文本。

在下面示例中,字符串 wljslmz.cn 被编码为 base64。

echo "wljslmz.cn" | base64

输出:

d2xqc2xtei5jbgo=

解释

编码方法使用几个步骤来转换输入:

输入字符被转换为 8 位二进制值

整组二进制字符串拆分为 6 位二进制值

转换为十进制

每个十进制值都通过 base64 索引表转换为 base64 字符

示例 2 – 基本解码

要解码字符串,只需使用参数 –decode 将编码值传递给 base64,它解码刚刚输入的字符串。

echo "d2xqc2xtei5jbgo=" | base64 --decode

示例 3 – 编码文本文件

可以使用相同的命令对文本文件进行编码并将输出重定向到另一个文本文件:

base64 wljslmz.txt > wljslmz-encode.txt

示例 4 – 解码文本文件

要解码使用 base64 编码的文本文件,只需使用 –decode 或 -d 开关并传递文本文件名。

base64 -d wljslmz-encode.txt

示例 5 – 对来自用户的自定义输入进行编码

使用 bash shell 编程,您可以通过终端从用户那里获取输入并对其进行编码,但是为此您需要编写一个简单的 shell 脚本并在授予可执行权限后执行它。

以下例子可以做参考:

#!/bin/bash

#欢迎来到运维漫谈!!!

#可以输入wljslmz.cn

echo "请输入需要base64编码的字符::"

read input_text

output_text=`echo -n $input_text | base64`

echo "Base64编码后字符: $output_text"

示例 6 – 使用 base64 的简单身份验证

使用上面的编码和解码方法,就可以实现一个简单的认证系统。

您可以要求用户输入密码或密码,然后将密码存储到文件中或进行动态比较,如果存储的编码字符串与用户输入的编码文本匹配,则用户通过身份验证。

这是一种非常简单的验证身份验证方式,有时对于简单的商业案例很有用。

#!/bin/bash

#欢迎来到运维漫谈,这是一个简单的脚本,用base64编码

#使用debugpoint.cn为例

echo "验证你的密码"

read pwd1

decoded_text=`echo 'd2xqc2xtei5jbg==' | base64 --decode`

if [[ $pwd1 == $decoded_text ]]

then

echo "主人你好!"

else

echo "你是坏人,验证不通过!!!"

fi

下面来试试这个脚本:

总结

以上我们通过几个例子给大家详细介绍了base64编码的原理与使用,想必只要好好看上文,一定会有所收获,心动不如手动,下面大家就打开命令行,疯狂的敲吧。

← 上一篇: 诏翔名字寓意及打分
下一篇: 帮助指南 →

相关推荐

魔域亡灵巫师怎么玩?全方位玩法攻略在此!- 魔域 亡灵巫师 玩法攻略

魔域亡灵巫师怎么玩?全方位玩法攻略在此!- 魔域 亡灵巫师 玩法攻略

魔域亡灵巫师怎么玩?全方位玩法攻略在此!- 魔域 亡灵巫师 玩法攻略 1946 1 2025-05-24 2025-06-22 在《魔域》这款充满奇幻与挑战的游戏中,亡灵巫

如何使用新购买的U盘(U盘的基本操作及常见问题解答)

如何使用新购买的U盘(U盘的基本操作及常见问题解答)

在现代科技快速发展的时代,U盘已经成为我们日常生活和工作中不可或缺的重要存储设备之一。然而,对于刚刚购买U盘的用户来说,可能会面

我们来了

我们来了

《偶像来了》第一季于2015年首播后,取得了不俗的收视与反响,制作单位遂决定于2016年制作该节目的第二季。但由于“偶像来了”的商标在节

OPPO A59s全方位测评,揭秘这款“2000元以下最美旗舰”手机的表现

OPPO A59s全方位测评,揭秘这款“2000元以下最美旗舰”手机的表现

导读本文将为您详细介绍OPPOA59s手机的性能和外观,一起来看看这款备受期待的“2000元以下最美旗舰”手机的表现如何吧。 本文将为您详细介绍

新手必看:佳能相机使用指南与技巧分享

新手必看:佳能相机使用指南与技巧分享

佳能怎么用 (How to Use Canon) 佳能(Canon)是一家全球知名的影像和打印设备制造商,其产品涵盖了从入门级相机到专业级单反相机、镜头、打印机

失联333天回归,即刻的最大对手是自己?

失联333天回归,即刻的最大对手是自己?

编者按:本文来自微信公众号“Tech星球”(ID:tech618),作者:李晓蕾,36氪经授权发布。 从服务器被关停到宣布回归、在应用商店重新上架,