3个不稳定版本
0.4.0 | 2024年3月15日 |
---|---|
0.3.3 | 2023年6月6日 |
0.3.2 | 2023年6月6日 |
1781 在 编码 中排名
3,385 每月下载量
在 3 个crate(2 个直接) 中使用
27KB
308 行
面向用户的二进制数据格式。Tagged Base64旨在用于用户界面,包括URL和可复制粘贴的文本,无需额外的编码,例如引号或转义序列。包含校验和,以便在不了解二进制数据结构的情况下捕获常见问题,如意外删除或打字错误。
为了进一步减少混淆,值前缀有一个用于消除歧义的标签。虽然这不是必需的,但开发人员和用户可能会发现有一个使用提示很方便,使他们能够一眼看出某物是交易ID还是账本地址等。
例如,
KEY~cHVibGljIGtleSBiaXRzBQ
TX~dHJhbnNhY3Rpb24gaWRlbnRpZmllciBnb2VzIGhlcmUC
Zg~Zgg
mytag~bXl0YWd7
与base64值一样,标签也仅限于URL安全的base64字符集。
注意:标签可以是空字符串。base64部分不能为空;至少,它将编码一个字节的校验和。
标签和分隔符有助于避免将二进制值解析为数字时出现的问题。由于范围和表示,大型的二进制值不适合JavaScript数字。这意味着可以表示的最大无符号整数是2^53 - 1。此外,很容易不小心将看起来像数字的字符串强制转换为JavaScript数字,从而运行精度丢失的风险,即损坏。因此,值以base64编码,以便在JavaScript中安全地传输和接收,包括在URL中以及用户界面中的显示和输入。
依赖项
~2.7–6MB
~112K SLoC