#SHA256
#AES256
#Base64
var crypto = require('crypto'); | |
var SHA256 = require('./SHA256.js'); | |
var Base64 = require('./Base64.js'); | |
var _key = SHA256.encode('default key'); | |
module.exports = { | |
encode: function (data, key) { | |
if (arguments.length < 2) key = _key; | |
var cipher = crypto.createCipher('aes-256-ctr', key); // Cipher 객체 생성 | |
var crypted = Buffer.concat([cipher.update(new Buffer(data)), cipher.final()]); | |
return Base64.encode(crypted); | |
}, | |
decode: function (base64, key) { | |
if (arguments.length < 2) key = _key; | |
var decipher = crypto.createDecipher('aes-256-ctr', key); | |
return Buffer.concat([decipher.update(Base64.decode(base64)), decipher.final()]); | |
} | |
}; |
var crypto = require('crypto'); | |
function encode(data) { | |
var ret = new Buffer(data || '').toString('base64'); | |
return ret.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, ''); | |
} | |
module.exports = { | |
encode: encode, | |
decode: function (code) { | |
code = code.replace(/-/g, '+').replace(/_/g, '/'); | |
return new Buffer(code || '', 'base64'); | |
}, | |
random: function (byte) { | |
return encode(crypto.randomBytes(byte)); | |
} | |
}; |
var crypto = require('crypto'); | |
var Base64 = require('./Base64.js'); | |
module.exports = { | |
encode: function (data) { | |
var hash = crypto.createHash('sha256').update(data).digest(); | |
return Base64.encode(hash); | |
} | |
}; |