javascript - 如何在javascript中使用具有短签名的密钥对数据进行签名
问题描述
如何在javascript中签署具有私钥的数据?
我找到了一个很好的例子:example。在这个例子中,虽然签名真的很长。有没有可能变短?例如 6 个字符?
拥有签名短片确实是一种奖励。我如何首先在javascript中做到这一点?
谢谢!
解决方案
您指向的页面已经显示了 JavaScript 中的示例。
但是,您不能拥有由 6 个字符组成的非对称签名,因为它太小而无法在加密上是安全的。对于 6 个字符,有人简单地猜测签名的机会太大了。
您可以使用现有软件做的最好的事情可能是 64 字节 ECDSA 签名,用于 256 位素数曲线,例如 P256 / secp256r1 - 由 NIST 标准化。有一些方法可以将其降低到 32 个字节,但仅此而已。
如果您的问题允许对称加密,那么您可以使用 6 字节 MAC 而不是签名。六个完整字节对于 MAC 来说也太短了,但在某些情况下它可能已经足够好了。
推荐阅读
- eclipse - eclipse在启动时崩溃(opensuse linux)
- dialogflow-es - 如何在 Dialogflow 中重新排序 Intent 响应消息或自动链接 Intent?
- python - 在 Python 中从一个单元格到另一个单元格的 Google Sheet 超链接
- google-apps-script - 用于更改复选框选中按钮单击的行的脚本
- algorithm - TimSort:识别给定单个块内自然运行的最佳算法
- visual-studio-code - 无法开始调试。命令“-Enviroment-cd”的意外 GDB 输出
- algorithm - 允许连续买卖时买卖股票的最佳时机
- mysql - 在 MySQL 中使用 ADDTIME() 函数
- swiftui - SwiftUI - NavigationLink 返回上一个视图
- excel - POI 无法保存到同一目录