@xatlas/rainbow-core 2.7.9 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/core.umd.js CHANGED
@@ -77137,14 +77137,13 @@ var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
77137
77137
 
77138
77138
  // CONCATENATED MODULE: ../src/core/utils/encrypt.js
77139
77139
  function encrypt_typeof(o) { "@babel/helpers - typeof"; return encrypt_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, encrypt_typeof(o); }
77140
- // import CryptoJS from 'crypto-js'
77141
77140
 
77142
77141
 
77143
77142
  /**
77144
77143
  * 加密配置来源于 EAD 应用配置中的 params(JSON),支持的字段:
77145
77144
  * - cipherTransfer: 是否加密传输(true/false),原有开关
77146
- * - cipherMethod: 加密方法,'aes'(默认)| 'rsa'
77147
- * - cipherPublicKey: RSA 公钥(PEM 或 base64 均可,自动归一化),cipherMethod 为 'rsa' 时必填
77145
+ * - cipherMethod: 加密方法,'rsa'(默认,也是目前唯一支持的值;旧的 'aes' 因对称密钥硬编码在前端已下线)
77146
+ * - cipherPublicKey: RSA 公钥(PEM 或 base64 均可,自动归一化),rsa 时必填
77148
77147
  * - cipherPadding: RSA 填充方式,'RSAES-PKCS1-V1_5'(默认)| 'RSA-OAEP'
77149
77148
  * - cipherHash: RSA-OAEP 摘要算法,'sha256'(默认)| 'sha1'
77150
77149
  *
@@ -77158,27 +77157,11 @@ function encrypt_typeof(o) { "@babel/helpers - typeof"; return encrypt_typeof =
77158
77157
  * 否则直接用默认的 PKCS1 v1.5 对齐最稳妥。
77159
77158
  */
77160
77159
  var DEFAULTS = {
77161
- method: 'aes',
77160
+ method: 'rsa',
77162
77161
  padding: 'RSAES-PKCS1-V1_5',
77163
77162
  hash: 'sha256'
77164
77163
  };
77165
77164
 
77166
- // AES(原有实现保持不变:key/iv 为历史约定值,输出 hex)
77167
- function encryptAES(text) {
77168
- // var plaintText = CryptoJS.enc.Utf8.parse(text) // 明文
77169
- // var keyStr = '1234123412ABCDEF' // 一般key为一个字符串
77170
- // var ivStr = 'ABCDEF1234123412' // 偏移量
77171
- // var key = CryptoJS.enc.Utf8.parse(keyStr)
77172
- // var iv = CryptoJS.enc.Utf8.parse(ivStr)
77173
- // var encryptedData = CryptoJS.AES.encrypt(plaintText, key, {
77174
- // iv,
77175
- // mode: CryptoJS.mode.CBC,
77176
- // padding: CryptoJS.pad.Pkcs7
77177
- // })
77178
- // var encryptedStr = encryptedData.ciphertext.toString()
77179
- return null; // 旧 AES 已废弃,返回 null 以便前端不再使用
77180
- }
77181
-
77182
77165
  // 归一化公钥:平台配置里常见的是裸 base64(DER 的 SubjectPublicKeyInfo,即 Java
77183
77166
  // Base64.encode(publicKey.getEncoded()) 的产物),自动补 PEM 头尾;
77184
77167
  // 已带 PEM 头(SPKI 或 PKCS#1)的原样返回
@@ -77235,16 +77218,6 @@ function encryptRSA(text, publicKey) {
77235
77218
  return lib_default.a.util.encode64(encrypted);
77236
77219
  }
77237
77220
 
77238
- // 按方法分发加密,method 默认 aes
77239
- function encryptByMethod(text) {
77240
- var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
77241
- var method = String(config.method || DEFAULTS.method).toLowerCase();
77242
- if (method === 'rsa') {
77243
- return encryptRSA(text, config.publicKey, config);
77244
- }
77245
- return encryptAES(text);
77246
- }
77247
-
77248
77221
  // 解析应用 params:兼容 JSON 字符串(window.Rainbow 注入)与对象(接口返回)两种形态
77249
77222
  function parseParams(params) {
77250
77223
  if (!params) return {};
@@ -77256,22 +77229,19 @@ function parseParams(params) {
77256
77229
  }
77257
77230
  }
77258
77231
 
77259
- // 便捷入口:直接根据应用 params 加密;cipherTransfer 不为 true 时原样返回
77232
+ // 便捷入口:根据应用 params 加密;cipherTransfer 不为 true 时原样返回明文
77260
77233
  function encryptWithParams(text, params) {
77261
77234
  var p = parseParams(params);
77262
77235
  if (!p.cipherTransfer) return text;
77263
- return encryptByMethod(text, {
77264
- method: p.cipherMethod,
77265
- publicKey: p.cipherPublicKey,
77236
+ var method = String(p.cipherMethod || DEFAULTS.method).toLowerCase();
77237
+ if (method !== 'rsa') {
77238
+ throw new Error("\u4E0D\u652F\u6301\u7684\u52A0\u5BC6\u65B9\u5F0F\uFF08params.cipherMethod\uFF09\uFF1A".concat(p.cipherMethod, "\u3002AES \u56E0\u5BC6\u94A5\u786C\u7F16\u7801\u5728\u524D\u7AEF\u5DF2\u4E0B\u7EBF\uFF0C\u8BF7\u6539\u4E3A \"rsa\" \u5E76\u914D\u7F6E cipherPublicKey"));
77239
+ }
77240
+ return encryptRSA(text, p.cipherPublicKey, {
77266
77241
  padding: p.cipherPadding,
77267
77242
  hash: p.cipherHash
77268
77243
  });
77269
77244
  }
77270
-
77271
- // 兼容旧调用:默认 AES
77272
- function encrypt(text) {
77273
- return encryptAES(text);
77274
- }
77275
77245
  // CONCATENATED MODULE: ../src/core/store/index.js
77276
77246
  function store_typeof(o) { "@babel/helpers - typeof"; return store_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, store_typeof(o); }
77277
77247
  function store_regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return store_regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i.return) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (store_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, store_regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, store_regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), store_regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", store_regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), store_regeneratorDefine2(u), store_regeneratorDefine2(u, o, "Generator"), store_regeneratorDefine2(u, n, function () { return this; }), store_regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (store_regenerator = function _regenerator() { return { w: i, m: f }; })(); }