#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); | |
| } | |
| }; |