0

在这种情况下,我将使用 JCEKS 密钥库中的一个密钥在源头加密令牌。令牌进入 NodeJS 服务器,它应该是未加密的以使用那里的数据。据我了解,无法从该格式中提取用于解密令牌的私钥,因此仅使用加密模块对其进行解密是行不通的。我已经玩过node-keytool,并根据此处的示例列出了密钥:https ://github.com/FrankGrimm/node-keytool/blob/master/examples/listcontent.js 。

但是,我完全不知道如何使用该模块来解密令牌。任何有关如何这样做的建议,无论是使用该模块还是其他模块,都将不胜感激。

4

1 回答 1

0

似乎它无法完成,或者至少在没有大量工作的情况下无法完成。更容易用 Java 编写解密器,然后在 Node 中创建一个模块,如下所示:

const exec = require('child_process').exec; 常量 fs = 要求('fs');

const start = function (data, resolve, reject) {
    let child = exec('java -jar java/out/artifacts/decrypter_jar/decrypter.jar ' + data,
    function (error, stdout, stderr){
        console.log('Output -> ' + stdout);
        if(stdout){
            resolve(stdout);
        }
        else {
            reject('Empty response from JAR');
            return;
        }
        if(error !== null){
            console.log("Error -> "+error);
            reject(error);
        }
    });


};

module.exports = {start};
于 2017-03-30T10:31:41.123 回答