nodeJS暗号化モジュールを使用して、AES128のECBモードを使用していくつかの16進文字列を暗号化しようとしています。
そのために、私は次のコードを使用しています。
cryptoAES = function (sInput, sKey, bEncrypt) {
return crypto('AES-128-ECB', sInput, sKey, bEncrypt);
};
crypto = function (sAlgo, sInput, sKey, bEncrypt) {
var result = "";
if (bEncrypt){
var cipher;
var bKey = new Buffer(sKey, 'hex');
var bInput = new Buffer(sInput, 'hex');
cipher = crypto.createCipher(sAlgo, bKey);
cipher.setAutoPadding(false);
result = cipher.update(bInput, null, 'hex');
result += cipher.final('hex');
}
return result;
};
次のコマンドでcryptoAESを呼び出す場合:
sKey = '12345678900987654321123456789001'
sInput = '060123456789ABCDEF00000000000000'
私は得る必要があります
result = 'FBECD5D02C5B7CD1055AAF86238D1E2F'
しかし、私は得ています:
result = 'ea1f940da8e269b9e075c936bff6a1f7'
私が間違っている可能性があることは何か考えていますか?