UNPKG

koa-quick-service

Version:
78 lines (61 loc) 1.94 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _index = require('../index'); var _crypto = require('crypto'); var _crypto2 = _interopRequireDefault(_crypto); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * @comment: 加解密方法 * @tip: 用于传输数据 */ /** * Created by evio on 2017/2/3. */ var Code = function () { function Code() { (0, _classCallCheck3.default)(this, Code); this.key = _index.App.nativeConfig.secret; this.algorithm = 'aes-256-cbc'; if (!this.key) { throw new Error('miss key of secret'); } } /** * @comment: 加密算法 * @param data * @returns {string} */ (0, _createClass3.default)(Code, [{ key: 'encode', value: function encode(data) { var encrypted = ""; var cip = _crypto2.default.createCipher(this.algorithm, this.key); encrypted += cip.update(data, 'utf8', 'hex'); encrypted += cip.final('hex'); return encrypted; } /** * @comment: 解密算法 * @param data * @returns {string} */ }, { key: 'decode', value: function decode(data) { var decrypted = ""; var decipher = _crypto2.default.createDecipher(this.algorithm, this.key); decrypted += decipher.update(data, 'hex', 'utf8'); decrypted += decipher.final('utf8'); return decrypted; } }]); return Code; }(); exports.default = Code; module.exports = exports['default'];