这个工具适合做什么
Ed25519是一种基于椭圆曲线的数字签名算法,由Daniel J. Bernstein等人设计,和现有的任何椭圆曲线算法都完全独立。它以其高安全性、快速执行和较小的签名大小而被越来越多的新应用所使用。
在线Ed25519签名和验证工具可对输入的消息内容使用私钥进行签名,或使用公钥对已有的签名结果进行验证。本工具输入私钥长度为32字节,如果输入为64字节将截取前32字节作为私钥。签名结果为64字节的Base64编码字符串。本工具可以脱机使用,并且不传输密钥,签名和验证是在浏览器中本地完成的。
它适合用于接口签名调试、应用协议联调、消息完整性验证以及检查一组公私钥是否匹配。因为所有计算都在本地完成,所以处理敏感密钥时也更方便做快速验证。
输入要求
- 签名侧接受 Base64 私钥输入,解码后应为 32 字节;如果输入为 64 字节,将按工具当前规则截取前 32 字节作为私钥。
- 验签侧需要与之匹配的 Base64 公钥,公钥解码后应为 32 字节。
- 签名结果为 64 字节的 Base64 编码字符串,消息内容按文本原文参与签名与验证。
典型使用流程
- 输入消息和私钥,先生成签名结果。
- 将相同消息、公钥和签名填入验签区域。
- 如果公私钥匹配且消息未被修改,验证就会通过;只要消息、公钥或签名任一项变化,验证结果就会不同。
使用时要注意
- 验签失败时,最常见的问题不是算法本身,而是消息内容、换行、空格、编码或密钥来源不一致。
- Ed25519 页面这里强调的是原始消息签名与验证,不包含证书封装、证书链或其他 PKI 流程。
- 如果你是先在别处生成签名再来本页验证,务必确认对方系统使用的也是兼容的 Ed25519 原始签名流程。
常见问题
为什么签名通过后,稍微改一点消息就验签失败?
因为数字签名保护的是完整消息内容。哪怕只改动一个字符、一个空格或一个换行,重新验证时都会被视为不同消息,结果自然不再匹配。
私钥为什么要求 32 字节?
当前工具按 Ed25519 常见种子形式处理私钥输入,因此要求 Base64 解码后符合对应长度。若你拿到的是其他封装形式,先确认其真实字节结构再导入。
这个工具会上传我的密钥吗?
不会。原有说明里的本地处理特性仍然保留,签名和验证在浏览器中完成,适合做离线调试和敏感材料检查。
相关工具
如果你还没有现成的 Ed25519 公私钥,可以先到下面这个页面生成:
- Ed25519密钥对生成器:在线生成随机的Ed25519公钥和私钥