简单验证码生成器 - Canvas随机字符图片
生成简单数字或字母验证码图片,带干扰线和噪点,适合前端原型测试,不依赖服务端。
UD5工具箱
无模糊字符的安全编码格式 · 广泛应用于比特币地址、IPFS哈希等场景
绿色为包含字符,红色为排除的易混淆字符(已划线)
排除字符:0(数字零)、O(大写O)、I(大写I)、l(小写L)
Base58 是一种基于58个字符的编码方式,专为人类可读性和防抄写错误而设计。它从Base64的字符集中移除了6个容易混淆的字符:数字0(零)、大写字母O、大写字母I、小写字母l(L的小写),以及符号+和/。这使得Base58编码的结果在视觉上更清晰,减少了人工转录时的错误。
Base58编码最著名的应用是比特币钱包地址,同时也广泛应用于IPFS内容标识符、加密货币私钥编码等场景。
Base64 使用64个字符(A-Z, a-z, 0-9, +, /),编码效率更高,但包含容易混淆的字符。在需要人工输入或口述的场景下,Base64容易出错。
Base58 通过牺牲少量编码效率(58 vs 64,约减少9%),换取了更高的可读性和可靠性。特别适合:
Base58 是纯粹的编码算法,将任意字节数据转换为Base58字符串,不包含任何校验机制。
Base58Check 是比特币协议中使用的增强版本,它在数据前添加版本字节(标识数据类型),在数据后附加4字节校验和(SHA-256双重哈希的前4字节),然后对整个数据进行Base58编码。这使得:
本工具实现的是标准Base58编码,不包含版本字节和校验和。如需Base58Check,请使用专门的比特币工具。
Base58编码的核心思想是将输入数据视为一个大整数,然后不断除以58取余数:
11字符解码过程是上述步骤的逆操作。由于涉及大整数运算,JavaScript的BigInt类型非常适合实现该算法。
Base58编码的数据膨胀率约为1.37倍(相比原始字节)。具体来说:
作为对比,Base64的膨胀率约为1.33倍,Base58略高一些,但换来了更好的可读性。
本工具适用于以下场景:
所有计算均在浏览器本地完成,数据不会上传到服务器,确保隐私安全。
生成简单数字或字母验证码图片,带干扰线和噪点,适合前端原型测试,不依赖服务端。
提供原始与修改后的JSON,自动生成符合RFC6902的JSON Patch或RFC7396 Merge Patch。
使用道格拉斯·克罗克福德提出的Base32变体,去除易混淆字符,适合人工输入。
输入键值对,自动生成 Kubernetes ConfigMap YAML,支持文字和多行数据。
上传图标并添加未读数的角标红点或数字,生成带提醒效果的网站Favicon。
随机替换、交换或删除字母生成带有拼写错误的文本,用于测试校对或训练纠错能力。
动画展示环形/循环缓冲区的Enqueue、Dequeue操作以及头尾指针的移动逻辑。
使用Unicode数学字母符号生成纯文本粗体、斜体、粗斜体等风格,无需依赖CSS样式。
对字符串中的特殊字符(如引号、反斜杠等)进行JavaScript/JSON兼容的转义或反转义操作。
加载密文,工具显示字母频率,允许手动拖拽映射字母,实时预览解密进展。
利用Web Speech API将语音实时转换为文字,支持多语言识别,输出结果可复制编辑。
在线摩斯密码转换工具,将英文字母和数字转换为摩斯电码(.和-),也可解码摩斯电码回文本。
使用 LZ-String 算法压缩长文本,展示压缩率和解压速度,适合 localStorage 存储。
输入 IPv6 地址,一键在完整表示、压缩省略零块和混合表示之间转换,方便网络配置。
实时调整焦点轮廓的颜色、粗细和偏移,生成美观且高对比度的焦点样式代码。
拖拽滑块改变CIDR后缀,直观显示划分出的子网范围、主机数和广播地址。
获取设备上所有可用的语音合成音色,试听并比较不同语言和嗓音。
支持生成随机强密码、由单词组成的易记短语密码,以及排除容易混淆字符的密码。
加载棒针文字图解,高亮正在编织的当前行,手动推进,辅助跟解。
经典西蒙游戏,四种颜色随机闪烁,玩家复述序列,长度递增。
生成带虚线的大写或小写字母,供儿童临摹练习,支持打印。
将普通英文文本转换为Leet语(如E→3, A→4),多种替换强度可选,给文字增添极客风格。
生成包含街道、城市、邮编的合理格式虚假国际地址,用于原型测试。
在画布上放置并连接与、或、非门,切换输入观察输出。
生成由随机单词组成的口令短语,或自定义字符集强密码,实时显示强度。
将正常文本转换为难以直接复制选中的展示格式,增加复制难度。
展示当前浏览器的屏幕分辨率、可用字体、插件、Canvas 等指纹信息,了解浏览器唯一性。
选择常见前缀或后缀,显示由它们衍生出的单词列表,掌握构词法。
输入单词和线索,自动排列生成可打印的英文填字游戏网格(小型)。
一个大按钮,每勾完一圈点击计数,并显示当前圈数,防止遗忘。