Forge JS 库 - 如何定义 RSA 公钥?
Forge JS Library - How to define RSA publicKey?
我正在使用 Forge Github Library 来处理密码学。
我有一个客户端与服务器(node.js 具有相同的库)套接字通信(socket.io)。在客户端,我使用 forge 生成 RSA public/private 密钥并将 publicKey 发送到服务器。但是当我在服务器中收到密钥时,我没有在对象中收到 encrypt
方法。
这是我收到的对象:Object {n: BigInteger, e: BigInteger}
。那么我如何使用这些信息创建 RSA public 密钥来加密消息?
您需要将 public 密钥对象转换为可导出格式,例如 PEM,二进制编码为 base64。将 PEM 内容发送到服务器并重新创建 public 密钥
// convert a Forge public key to PEM-format
var pem = pki.publicKeyToPem(publicKey);
// convert a PEM-formatted public key to a Forge public key
var publicKey = pki.publicKeyFromPem(pem);
也可以从模数和指数 (n,e) 构建 public 密钥,但我不知道 forge 是否允许
我正在使用 Forge Github Library 来处理密码学。
我有一个客户端与服务器(node.js 具有相同的库)套接字通信(socket.io)。在客户端,我使用 forge 生成 RSA public/private 密钥并将 publicKey 发送到服务器。但是当我在服务器中收到密钥时,我没有在对象中收到 encrypt
方法。
这是我收到的对象:Object {n: BigInteger, e: BigInteger}
。那么我如何使用这些信息创建 RSA public 密钥来加密消息?
您需要将 public 密钥对象转换为可导出格式,例如 PEM,二进制编码为 base64。将 PEM 内容发送到服务器并重新创建 public 密钥
// convert a Forge public key to PEM-format
var pem = pki.publicKeyToPem(publicKey);
// convert a PEM-formatted public key to a Forge public key
var publicKey = pki.publicKeyFromPem(pem);
也可以从模数和指数 (n,e) 构建 public 密钥,但我不知道 forge 是否允许