UNPKG

vue-ant-patterns

Version:

vue-ant-patterns

80 lines (61 loc) 2.29 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _encUtf = require('crypto-js/enc-utf8'); var _encUtf2 = _interopRequireDefault(_encUtf); var _aes = require('crypto-js/aes'); var _aes2 = _interopRequireDefault(_aes); var _modeEcb = require('crypto-js/mode-ecb'); var _modeEcb2 = _interopRequireDefault(_modeEcb); var _padPkcs = require('crypto-js/pad-pkcs7'); var _padPkcs2 = _interopRequireDefault(_padPkcs); var _md = require('crypto-js/md5'); var _md2 = _interopRequireDefault(_md); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var randomChars = function randomChars(len) { len = len || 32; var $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnoprstuvwxyz0123456789'; var maxPos = $chars.length; var pwd = ''; for (var i = 0; i < len; i++) { pwd += $chars.charAt(Math.floor(Math.random() * maxPos)); } return pwd; }; /* * @Author: daibing * @Date: 2020-06-01 15:11:39 * @LastEditTime: 2021-07-29 14:51:11 * @LastEditors: daibing * @Description: * @FilePath: \hcm6-patterns\biz\_biz-utils\password.js */ function passwdCrypto(pas) { var isMd5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; var hash = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'tkzcwdfj0734sydtkhgj0731'; var keyHash = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'anihCfoknaB65mcH'; var md5Pass = (0, _md2['default'])('' + pas + hash); var KeySize = 16; var $key = randomChars(KeySize); var baseKey = _encUtf2['default'].parse(keyHash); var key = _encUtf2['default'].parse($key); // 是否用md5加密,修改密码的位置不用 var password = _encUtf2['default'].parse(pas); if (isMd5) { password = _encUtf2['default'].parse(md5Pass); } var encryptKey = _aes2['default'].encrypt(key, baseKey, { mode: _modeEcb2['default'], padding: _padPkcs2['default'] }); var encryptPwd = _aes2['default'].encrypt(password, key, { mode: _modeEcb2['default'], padding: _padPkcs2['default'] }); var encryptedPwdStr = encryptPwd.toString(); return { password: encryptedPwdStr, key: encryptKey.toString() }; } exports['default'] = passwdCrypto;