找回密码
 立即注册

QQ登录

只需一步,快速开始

[个人已开发插件] 命令类型插件 - Base64加密

Timothy.Xu 讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2020-12-22 16:35  /   查看:4591  /  回复:0
本帖最后由 Timothy.Xu 于 2020-12-24 09:13 编辑

本插件为服务端命令,使用本插件可以将字符串进行Base64加密/解密操作。

版本更新记录
版本号
更新内容
支持活字格的最低版本
下载地址(鼠标悬停附件上方查看更新日期)
6.0.102.0
第一次发布
6.0.102.0
Base64加密.zip (106.12 KB, 下载次数: 587)


操作步骤
1. 在“版本更新记录”表中,下载对应版本的插件。如何安装或卸载插件?
2.安装插件并重启活字格设计器后,服务端命令中就可以找到刚安装好的“Base64加密”命令。
image.png841112975.png
3.该插件有3个输入和1个输出:
image.png392368163.png

加密或解密输入值 选择编码方式为加密或解密
原字符串输入值传入待加密/解密字符串
分别对每行进行编码输入值是否忽略换行符对多行数据进行编码
返回结果至参数输出值 将加密/解密后的字符串传入一个新的参数中


4.前端页面调用该服务端命令即可。

举例
首先需要准备两个基础类型的的参数(需要从前端传入两个值到服务端命令):
image.png865313110.png

在条件命令下判断参数“是否分别对每行编码”的值是否为1,如果为1,则创建一个“Base64加密”命令,将“加密或解密”选择为“加密”,将“原字符串”选择为参数“原字符串”,勾选“分别对每行进行编码”,“返回结果至参数”设置一个新的参数“编码后字符串”:
image.png647451476.png

将参数“编码后字符串”用返回命令返回到前端:
image.png268134764.png

这样就做好一个可以让用户自行判断是否对多行进行编码的Base64加密服务端命令了。同理,可以复制本服务端命令,将其中的“加密”选项更改为“解密”,就可以实现Base64解密:
image.png104111632.png

在前端,将一个复选框的值传给参数“是否分别对每行编码”,将一个多行文本框的值传给参数“原字符串”,并返回信息至另一个字符串:
image.png400948485.png

实现效果:
1.gif

注意
1.Base64是一种数据编码方式,目的是让数据符合传输协议的要求。标准Base64编码解码无需额外信息即完全可逆,即使您自己自定义字符集设计一种类Base64的编码方式用于数据加密,在多数场景下也较容易破解,因此不能用于加密传输
2.Base64加密有多种编码方式,一般我们常用的有ASCII、UTF-8等,本帖提供的插件使用的是UTF-8编码方式,目的是为了支持中文使用场景。


应用场景
1.邮件
由于rfc821有以下两条限制:
  • 1)邮件的内容必须全部为7-比特的美国ascii码
  • 2)每一行的长度不能超过1000的字符
当邮件中有其他的非ASCII字符或二进制数据时,就需要做转换。这个就叫做Content-Transfer-Encoding,Base64就是其中的一种方法。在firefox你可以设置自己发送邮件的内容传输编码方式。在收到的邮件里,可以查看邮件原文,看看原文的编码。
2.URL
有些应用需要把二进制数据放到URL里,URL只能是特定的一些ASCII字符。这时候,也需要用到BASE64编码。当然这也只是对二进制数据本身的编码,编码后的数据里面可能包含+/,真正放到URL里面时候,还需要URL-Encoding,变成%XX模式。

当然还有很多应用场景,可以按需取用。这边提供了一个示例工程文件,旨在帮助各位更好地使用插件~
Base64加密.fgcc (276.39 KB, 下载次数: 497)

评分

参与人数 1满意度 +5 收起 理由
renho + 5 赞一个!

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部