2016-11-09 115 views
0

公共密鑰可以從hereOpenpgpjs:無法驗證分離簽名

下載這是我想驗證字符串:

6mjdvgmdvggpyoaf.onion 

這就是獨立的簽名:

-----BEGIN PGP SIGNATURE----- 

iQIcBAABCgAGBQJYF5+8AAoJEOK8b86OOhToO8EP/ix16wNi/bH+CZuAiOawd2NX 
P+rno33WeVLKHg4pJWTeuYumFnjjStRgj/IL2r6Iafa8jnuffMr+DqsbISvbJDXx 
dNvwzybPD0dLc/ftJTm1PAR9sTNh3+zeAldmYaaXQTAX/YUVjjru5oiP4H/+oh5t 
NezgT7U812r6sVkgOq6dIl84uYRaToB4xxk0C1mdiM2ro1bC7OAAAD5wCFouQNS/ 
KD+fLebfjPjpDhmd1GgMk08/XGXUQueYPLP6ovsU6ztkjHkKTbPLX9Ity1mLIJlE 
WvgZAFd2DwnBhcGUm5o6chvqj8t7kCUldFxJBYtSC0BV8flaRC/2csbKJRLfxy1N 
bsRT7sP3fRm3b+bEHXUFdlLUgQbbaH/1HiZO6hsx7qeADvBHEH59kJfRo3XgPNVZ 
MBm8kaRDpjYMNwpmrh4uN5ONwDQ5X3weRajZfKub4YzTRqf0gLcfTzbSBDn+YFLX 
8NE+9Z7c/UgAsOMzDeVR37BpA9weNeb4EEW4kulr9LBdVbOu6dM9aF9pIBbnD/Nu 
5FRcxB3Z/IqUH7PzgS0fCkjroO36Qdu1cAdvkbOgeWpRLcsn/NZdYjBBAD9+JXfT 
8tl06AniMFLnyWq5ydytApAu45WW4vthhyPdx+so3R0gN2FJL2pQE01vLO5c0EAP 
XSVJLdVLyQTDNW0jwbwo 
=vn/m 
-----END PGP SIGNATURE----- 

這裏是代碼:

var pubkey = openpgp.key.readArmored(key.trim()); 
var msg = openpgp.message.readSignedContent(domain, signed_block); 
var result = msg.verify(pubkey); 
console.log(result.valid); 

結果日誌是:

https://openpgpjs.org/openpgpjs/doc/message.js.html

在管線367::

if (keyPacket) { 

    verifiedSig.keyid = signatureList[i].issuerKeyId; 

    verifiedSig.valid = signatureList[i].verify(keyPacket, literalDataList[0]); 

} else { 

    verifiedSig.keyid = signatureList[i].issuerKeyId; 

    verifiedSig.valid = null; 

} 

keyPacket是

null 

進一步深化閩臺成代碼要求驗證功能,可以發現沒有找到,但我不明白爲什麼,看起來像簽名塊的問題(也許??),但我不知道O的足夠penpgp內部知道該怎麼做。

任何幫助將不勝感激。

+0

深入一點:https://github.com/openpgpjs/openpgpjs/issues/496 –

回答

1

解決:

var pubkey = openpgp.key.readArmored(key.trim()).keys;