【发布时间】:2021-01-25 13:21:23
【问题描述】:
我正在使用FastSpring 的许可证生成器,他们的文档很差,尤其是在JavaScript 函数dsaSign(arg1, arg2) 上,解释如下:
dsaSign(arg1, arg2):
arg1 是一个 512 或 1024 字节的 PEM 格式的 DSA 密钥。 arg2 是要签名的字符串。返回一个 Base64 字符串。
我访问了https://8gwifi.org/dsafunctions.jsp,创建了一个测试 DSA 1024 私钥,例如:
-----BEGIN DSA PRIVATE KEY-----
MIIBuwIBAAKBgQC+4a7B9iSKIW262/R/2+St9j1CWoyWXEAHphzSFXSVNbSPWUvW
bsX43B6wFW+r1bSOU9bNnArvh8PZnRWC9+kg+WbXoJPIbpkU/rjA4D9VkrcI3HcH
VlbNDGxCbue8MpLPOks8QMzY+eaNI+Uvwpf5fdSR+AfEIitcL51alWXrzwIVAMc1
fiVC76ZinbyCC5+o6nZBx6SVAoGABmXB1tE2dZy2Ck9d64rljX293OQianF6ZH/V
zNND8KPhq+NnMF3X7hC+39MF9/KSitvuTK3tlj9zuPZlooKQSGjlUSxWIDWYz1/W
Ogt5/rxS3CGlu8NIXd2IFIaiQJq8vAoTD+wYqPPZn6UkEwwD3Zqnk9f/KDz3LW3P
HQd0yekCgYBHn8n0MYPK3NzNk05SsiXsz4GZhNvU/Q0MqP9fF7fmNCS2e4Ri4LJI
qFg65dpkB0BKhnuEwN26QipGnY952gBOf9ut4HBoTGIu+uK1ae2cf5V2BmR0/ZV6
V1Aui3hZ65/itto9P3waSciyD2Mtql7G11DQIgjyJ/g+hv9Os+14TwIVAJKBsT8T
Pj2rxwbMOOBerrI2w+L3
-----END DSA PRIVATE KEY-----
这是我的示例代码:
var key = "MIIBuwIBAAKBgQC+4a7B9iSKIW262/R/2+St9j1CWoyWXEAHphzSFXSVNbSPWUvWbsX43B6wFW+r1bSOU9bNnArvh8PZnRWC9+kg+WbXoJPIbpkU/rjA4D9VkrcI3HcHVlbNDGxCbue8MpLPOks8QMzY+eaNI+Uvwpf5fdSR+AfEIitcL51alWXrzwIVAMc1fiVC76ZinbyCC5+o6nZBx6SVAoGABmXB1tE2dZy2Ck9d64rljX293OQianF6ZH/VzNND8KPhq+NnMF3X7hC+39MF9/KSitvuTK3tlj9zuPZlooKQSGjlUSxWIDWYz1/WOgt5/rxS3CGlu8NIXd2IFIaiQJq8vAoTD+wYqPPZn6UkEwwD3Zqnk9f/KDz3LW3PHQd0yekCgYBHn8n0MYPK3NzNk05SsiXsz4GZhNvU/Q0MqP9fF7fmNCS2e4Ri4LJIqFg65dpkB0BKhnuEwN26QipGnY952gBOf9ut4HBoTGIu+uK1ae2cf5V2BmR0/ZV6V1Aui3hZ65/itto9P3waSciyD2Mtql7G11DQIgjyJ/g+hv9Os+14TwIVAJKBsT8TPj2rxwbMOOBerrI2w+L3";
var license = dsaSign(key, "Foo");
我收到了没有进一步的解释:
-- ERROR --
Script is invalid
Error :Wrapped java.lang.RuntimeException: DSA sign error: null (#3)
有谁知道我做错了什么?
【问题讨论】:
标签: javascript dsa