Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jsrasign,将公钥加载到RSAKey()中?_Javascript_Cryptography_Public Key - Fatal编程技术网

Javascript Jsrasign,将公钥加载到RSAKey()中?

Javascript Jsrasign,将公钥加载到RSAKey()中?,javascript,cryptography,public-key,Javascript,Cryptography,Public Key,我有一个pem格式的公钥,我不知道如何对其进行编码以将其加载到RSAKey()对象中。该库提供了3种公钥读取方法:readCertPubKeyHex、readPKCS5PubKeyHex、readPKCS8PubKeyHex,但我不知道如何为这些方法编码pem文件,我尝试使用pem文件的base64编码体并将其转换为十六进制,但最终出现以下错误之一:非ASN.1十六进制字符串,非PKCS8 RSA公钥或PKCS的错误十六进制#5公钥 let rsa = new RSAKey(); rsa.rea

我有一个pem格式的公钥,我不知道如何对其进行编码以将其加载到
RSAKey()
对象中。该库提供了3种公钥读取方法:
readCertPubKeyHex、readPKCS5PubKeyHex、readPKCS8PubKeyHex
,但我不知道如何为这些方法编码pem文件,我尝试使用pem文件的base64编码体并将其转换为十六进制,但最终出现以下错误之一:
非ASN.1十六进制字符串
非PKCS8 RSA公钥
PKCS的错误十六进制#5公钥

let rsa = new RSAKey();
rsa.readCertPubKeyHex("?? Ansi Hex ??");
let verified_config = rsa.verifyStringPSS(message, signature, "SHA512", 2);

如果需要,我愿意重新生成公钥/私钥对

我忽略了一些非常有用的UTIL来为您实现这一点,代码应该是这样的:

let rsa = KEYUTIL.getKey("-----BEGIN PUBLIC KEY-----***yourPublicKeyHere-----END PUBLIC KEY-----");

let verified_config = rsa.verifyStringPSS(message, signature, "SHA512", 2);

谢谢你回复埃里克。