我正在尝试修改fabric-sdk-node
项目以将其与RSA证书和密钥一起使用。
现在,我还不知道如何生成带有RSA公钥的SKI(X509v3主题密钥标识符)。
该项目正在对加密货币使用jsrsasign
软件包。
我jsrsasign
在Github.com的问题页面上找到了可以用ECDSA生成SKI的页面,但在RSA方面仍然没有任何线索。
任何建议都将受到欢迎!
谢谢!
我几乎测试了包中的每个方法jsrsasign
,但仍然找不到任何有用的方法。
因此,我在框外查看,认为X509V3主题密钥标识符(SKI)由默认的sha1
哈希算法生成。但是,我们在超级账本/结构中所做的定义将哈希算法定义为sha256
。那么,如果jsrsasign
用对该哈希算法进行了硬编码sha1
怎么办?(这是一个猜测,如果我错了,请纠正我。)
考虑到这一点,我尝试了另一个node-forge
可以解决我问题的软件包。
这是演示:
const nodeForge = require("node-forge");
const pki = nodeForge.pki;
const jsrsa = require("jsrsasign");
const KEYUTIL = jsrsa.KEYUTIL;
const rsaPubKeyPem = `-----BEGIN CERTIFICATE-----
MIID<.........>Y/gRUg==
-----END CERTIFICATE-----
`;
const pubKey = KEYUTIL.getKey(rsaPubKeyPem);
const publicKey = pki.rsa.setPublicKey(pubKey.n,pubKey.e);
console.log(pki.getPublicKeyFingerprint(publicKey,{
md: nodeForge.sha256.create(),
encoding: 'hex',
delimiter: ':'}));
而且,我们获得了与openssl完全相同的SKI。这将导入另一个加密软件包,并且看起来很丑。如果有什么好主意请告知。
谢谢!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句