RSACryptoServiceProvider в узле js

RSACryptoServiceProvider в узле js

Я должен подписать строку в узле js, так же, как в приложении C #, которое использует RSACryptoServiceProvider. На самом деле он использует

X509Certificate2 certificate = new X509Certificate2("file.pfx", "aPassword", X509KeyStorageFlags.Exportable); RSACryptoServiceProvider rsa = (RSACryptoServiceProvider)RSACryptoServiceProvider.Create(); rsa.FromXmlString(certificate.PrivateKey.ToXmlString(true)); signer = new RSAPKCS1SignatureFormatter(rsa); signer.SetHashAlgorithm("SHA256"); byte[] signedData = signer.CreateSignature("a string"); string signedString = Convert.ToBase64String(signedData); 

До сих пор я пытался сделать то же самое в узле js, используя jsonwebtoken таким образом

 var kdrPrivateKey = fs.readFileSync('private_key.pem'); var authorizationSigned = jwt.sign("a string", kdrPrivateKey, { algorithm: 'RS256'}); var authorizationBase64 = Base64.encode(authorizationSigned); 

Я также получил private_key из file.pfx таким образом

 openssl pkcs12 -in file.pfx -nocerts -out private_key.pem -nodes 

Мой вопрос, наконец, заключается в том, эквивалентен ли код узла js коду C #? Если нет, как я могу сделать код C # в узле JS пути?

Благодарность!

Понравилась статья? Поделиться с друзьями:
JavaScript & TypeScript
Adblock
detector