1

Mycrypt ( https://www.npmjs.org/package/mcrypt ) を使用する node.js アプリケーションを作成していますが、文字列を暗号化しようとするとセグメンテーション エラーが発生します。CentOSで実行しています。コードは以下のとおりです。

exports.encode = function (string, callback) {
    var key = Crypto.MD5(Constants.ENCRYPTION_KEY).toString(Crypto.enc.Hex);
    var rijCbc = new MCrypt('rijndael-256', 'cbc');
    rijCbc.open(key);
    var buffer = new Buffer(string, 'base64');
    var enc = rijCbc.encrypt(buffer); // this line is causing a segmentation fault
    var rtn = enc.toString();
    rtn = rtn.replace('+','-b0221');
    rtn = rtn.replace('^','-b1121');
    rtn = rtn.replace('!','-b1427');
    rtn = rtn.replace('*','-b1225');
    rtn = rtn.replace('&','-b4422');
    rtn = rtn.replace('@','-b4252');
    rtn = rtn.replace('%','-b6422');
    rtn = rtn.replace('=','-b0123t');
    rtn = rtn.replace('/','-b0169');
    rtn = rtn.replace('\\','-b4236');
    callback(rtn);
}

ここで Mcrypt.encrypt() 関数を見つけることもできます: https://github.com/tugrul/node-mcrypt/blob/master/src/mcrypt.cc なぜこれが起こっているのですか?

4

0 に答える 0