@dacely/toildefender 0.1.1 → 0.1.2
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/README.md +88 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
<img src="./images/
|
|
3
|
+
<img src="./images/toildefender4.svg" alt="ToilDefender" width="600" />
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
### JavaScript code protection for the Toil stack.
|
|
@@ -196,6 +196,93 @@ The complete beautified generated output is committed at
|
|
|
196
196
|
[docs/all-modes-output.demo.js](./docs/all-modes-output.demo.js). It is a real
|
|
197
197
|
673-line artifact from the current generator and executes to:
|
|
198
198
|
|
|
199
|
+
Output excerpt:
|
|
200
|
+
|
|
201
|
+
```js
|
|
202
|
+
(function () {
|
|
203
|
+
function a(f, j) {
|
|
204
|
+
var b = new Array(96);
|
|
205
|
+
;
|
|
206
|
+
var c = arguments;
|
|
207
|
+
while (true) try {
|
|
208
|
+
switch (f) {
|
|
209
|
+
case 25271:
|
|
210
|
+
b[11] = c[11];
|
|
211
|
+
b[12] = c[10];
|
|
212
|
+
b[13] = c[9];
|
|
213
|
+
b[14] = c[8];
|
|
214
|
+
b[15] = c[7];
|
|
215
|
+
b[16] = c[6];
|
|
216
|
+
b[17] = c[5];
|
|
217
|
+
b[18] = c[4];
|
|
218
|
+
b[19] = c[3];
|
|
219
|
+
b[20] = c[2];
|
|
220
|
+
b[21] = e(a, 26903, b, c[1]);
|
|
221
|
+
b[22] = e(a, 13834, b, c[1]);
|
|
222
|
+
b[23] = e(a, 24871, b, c[1]);
|
|
223
|
+
b[24] = e(a, 3126, b, c[1]);
|
|
224
|
+
b[25] = e(a, 24897, b, c[1]);
|
|
225
|
+
b[26] = e(a, 32340, b, c[1]);
|
|
226
|
+
if (b[11]) {
|
|
227
|
+
b[20] = c[1][2](b[20], b[19], b[18], b[17], b[16], b[12], b[11]);
|
|
228
|
+
}
|
|
229
|
+
b[27] = [];
|
|
230
|
+
b[28] = b[17] >>> c[1][9][1];
|
|
231
|
+
b[29] = b[17] >>> c[1][9][1];
|
|
232
|
+
b[30] = BigInt(b[19]);
|
|
233
|
+
b[31] = c[1][9][1];
|
|
234
|
+
while (b[31] < b[18]) {
|
|
235
|
+
b[32] = Number(b[20] % b[30]);
|
|
236
|
+
b[20] = b[20] / b[30];
|
|
237
|
+
b[33] = c[1][9][5] + (b[28] >>> c[1][9][24]) % (b[19] - c[1][9][5]);
|
|
238
|
+
b[34] = b[28] % b[19];
|
|
239
|
+
b[35] = (b[32] - b[34] + b[19]) % b[19] * b[26](b[33], b[19]) % b[19];
|
|
240
|
+
b[27][c[1][9][29]](b[35]);
|
|
241
|
+
b[29] = b[25](b[29], b[32], b[31]);
|
|
242
|
+
b[28] = b[25](b[28], b[32], b[31]);
|
|
243
|
+
b[31] += c[1][9][5];
|
|
244
|
+
}
|
|
245
|
+
if (b[29] >>> c[1][9][1] !== b[16] >>> c[1][9][1]) throw new Error(c[1][9][30]);
|
|
246
|
+
b[36] = [];
|
|
247
|
+
b[37] = [];
|
|
248
|
+
b[38] = Array[c[1][9][31]][c[1][9][32]][c[1][9][33]](b[14]);
|
|
249
|
+
b[39] = c[1][9][1];
|
|
250
|
+
while (c[1][9][38]) {
|
|
251
|
+
b[40] = b[24]();
|
|
252
|
+
if (b[40] === b[12][c[1][9][1]]) continue;
|
|
253
|
+
if (b[40] === b[12][c[1][9][5]]) {
|
|
254
|
+
b[36][c[1][9][29]](undefined);
|
|
255
|
+
continue;
|
|
256
|
+
}
|
|
257
|
+
if (b[40] === b[12][c[1][9][28]]) {
|
|
258
|
+
b[36][c[1][9][29]](c[1][9][39]);
|
|
259
|
+
continue;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
/* 600+ more generated lines:
|
|
263
|
+
dispatcher cases, encoded literals, VM bytecode decode,
|
|
264
|
+
BigInt program blobs, randomized opcode tables, and Hash-Mesh unlock */
|
|
265
|
+
|
|
266
|
+
case 11237:
|
|
267
|
+
b[1] = '';
|
|
268
|
+
b[1] += d(86, 101);
|
|
269
|
+
b[1] += d(105, 108, 109, 97);
|
|
270
|
+
b[1] += d(114);
|
|
271
|
+
b[1] += d(107);
|
|
272
|
+
return b[1];
|
|
273
|
+
}
|
|
274
|
+
} catch (a) {
|
|
275
|
+
veilmark$tobethrown = null;
|
|
276
|
+
switch (f) {
|
|
277
|
+
default:
|
|
278
|
+
throw a;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
a(4089, {});
|
|
283
|
+
})();
|
|
284
|
+
```
|
|
285
|
+
|
|
199
286
|
```json
|
|
200
287
|
{ "ok": true, "total": 69 }
|
|
201
288
|
```
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dacely/toildefender",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Modern JavaScript code protection, bytecode virtualization, and obfuscation for the Toil tech stack.",
|
|
5
5
|
"author": "Dacely",
|
|
6
6
|
"contributors": [
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"LICENSE",
|
|
58
58
|
"NOTICE.md",
|
|
59
59
|
"README.md",
|
|
60
|
-
"images/
|
|
60
|
+
"images/toildefender3.svg",
|
|
61
61
|
"docs/all-modes-output.demo.js"
|
|
62
62
|
],
|
|
63
63
|
"dependencies": {
|