首页 > 解决方案 > 在变量中处理 RSA 密钥 Node.JS

问题描述

我正在创建一个服务器,该服务器具有通过发布请求传输公钥的功能,因此客户端可以使用此密钥加密数据并使用加密数据回发。

我在这里的总体问题是,如何在保持换行符的同时在变量内传输 RSA 公钥

我考虑过手动添加 \n (换行符)字符,但是,在使用 openssl 生成密钥后,我无法找到以编程方式执行此操作的方法。

具体来说,这是我遇到的一些问题。

var newkey = " -----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHikastc8+I81zCg/qWW8dMr8m
qvXQ3qbPAmu0RjxoZVI47tvskYlFAXOf0sPrhO2nUuooJngnHV0639iTTEYG1vck
NaW2R6U5QTdQ5Rq5u+uV3pMk7w7Vs4n3urQ6jnqt2rTXbC1DNa/PFeAZatbf7ffB
By0IGO0zc128IshYcwIDAQAB
-----END PUBLIC KEY----- ";

(显然)这不起作用,因为节点只识别引号中的第一行并尝试将第二行解析为代码,从而引发错误

 '-----BEGIN PUBLIC KEY-----
                                                                                                                                                                                                                                                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^

SyntaxError: Invalid or unexpected token

我还尝试将 RSA 密钥连接到一行,不幸的是 openSSL 不喜欢这样并吐出一个错误。

您对如何处理变量中的 RSA 密钥有更好的了解吗?

谢谢!

标签: node.jsvariablesopensslrsa

解决方案


听起来可能很明显,但是您是否尝试过使用模板文字(由 ` 而不是 " 或 ' 分隔的字符串)?它们确实支持换行符,而不是“典型”字符串。


推荐阅读