xypriss-security 2.1.13 → 2.1.17
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 +13 -1
- package/dist/src/core/Random.d.ts.map +1 -1
- package/dist/src/core/Random.js +6 -5
- package/dist/src/core/Random.js.map +1 -1
- package/dist/src/core/XyPrissSecurity.d.ts.map +1 -1
- package/dist/src/core/XyPrissSecurity.js +19 -8
- package/dist/src/core/XyPrissSecurity.js.map +1 -1
- package/dist/src/core/bridge.d.ts +3 -1
- package/dist/src/core/bridge.d.ts.map +1 -1
- package/dist/src/core/bridge.js +79 -23
- package/dist/src/core/bridge.js.map +1 -1
- package/dist/src/core/keys.d.ts +17 -0
- package/dist/src/core/keys.d.ts.map +1 -1
- package/dist/src/core/keys.js +20 -1
- package/dist/src/core/keys.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/mods/FALLBACK_WORDLIST.d.ts +20 -0
- package/dist/src/mods/FALLBACK_WORDLIST.d.ts.map +1 -0
- package/dist/src/mods/FALLBACK_WORDLIST.js +277 -0
- package/dist/src/mods/FALLBACK_WORDLIST.js.map +1 -0
- package/dist/src/mods/PasswordMDict.d.ts +4 -15
- package/dist/src/mods/PasswordMDict.d.ts.map +1 -1
- package/dist/src/mods/PasswordMDict.js +13 -275
- package/dist/src/mods/PasswordMDict.js.map +1 -1
- package/dist/src/types/index.d.ts +1 -4
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/utils/constants.d.ts +8 -2
- package/dist/src/utils/constants.d.ts.map +1 -1
- package/dist/src/utils/constants.js +9 -3
- package/dist/src/utils/constants.js.map +1 -1
- package/dist/src/utils/encoding.js +4 -4
- package/dist/src/utils/encoding.js.map +1 -1
- package/package.json +1 -1
- package/dist/src/types/console.d.ts +0 -70
- package/dist/src/types/console.d.ts.map +0 -1
- package/dist/src/types/console.js +0 -9
- package/dist/src/types/console.js.map +0 -1
- package/dist/src/types/secure-memory.d.ts +0 -24
- package/dist/src/types/secure-memory.d.ts.map +0 -1
- package/dist/src/types/secure-memory.js +0 -21
- package/dist/src/types/secure-memory.js.map +0 -1
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/***************************************************************************
|
|
3
|
+
* XyPriss Security - Advanced Hyper-Modular Security Framework
|
|
4
|
+
*
|
|
5
|
+
* @author NEHONIX (Nehonix-Team - https://github.com/Nehonix-Team)
|
|
6
|
+
* @license Nehonix Open Source License (NOSL)
|
|
7
|
+
*
|
|
8
|
+
* Copyright (c) 2025 NEHONIX. All rights reserved.
|
|
9
|
+
****************************************************************************/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.FALLBACK_WORDLIST = void 0;
|
|
12
|
+
// ─── Fallback Wordlist ────────────────────────────────────────────────────────
|
|
13
|
+
/**
|
|
14
|
+
* Compact built-in fallback wordlist (256 words).
|
|
15
|
+
*
|
|
16
|
+
* This is used by `getWordlist()` when no external file is provided and
|
|
17
|
+
* `allowFallback` is `true`. It satisfies the EFF's criteria of being
|
|
18
|
+
* unambiguous, easy to spell, and free of visually confusable entries.
|
|
19
|
+
*
|
|
20
|
+
* **Do not import this array directly for production passphrases** — use
|
|
21
|
+
* `getWordlist()` instead, which will prefer a full EFF file when available.
|
|
22
|
+
*/
|
|
23
|
+
exports.FALLBACK_WORDLIST = Object.freeze([
|
|
24
|
+
"able",
|
|
25
|
+
"acid",
|
|
26
|
+
"aged",
|
|
27
|
+
"also",
|
|
28
|
+
"area",
|
|
29
|
+
"army",
|
|
30
|
+
"away",
|
|
31
|
+
"baby",
|
|
32
|
+
"back",
|
|
33
|
+
"bail",
|
|
34
|
+
"bake",
|
|
35
|
+
"ball",
|
|
36
|
+
"barn",
|
|
37
|
+
"base",
|
|
38
|
+
"bath",
|
|
39
|
+
"beam",
|
|
40
|
+
"bear",
|
|
41
|
+
"beat",
|
|
42
|
+
"been",
|
|
43
|
+
"bell",
|
|
44
|
+
"belt",
|
|
45
|
+
"best",
|
|
46
|
+
"bird",
|
|
47
|
+
"bite",
|
|
48
|
+
"blade",
|
|
49
|
+
"bold",
|
|
50
|
+
"bolt",
|
|
51
|
+
"bond",
|
|
52
|
+
"bone",
|
|
53
|
+
"book",
|
|
54
|
+
"boom",
|
|
55
|
+
"boot",
|
|
56
|
+
"born",
|
|
57
|
+
"both",
|
|
58
|
+
"bowl",
|
|
59
|
+
"bred",
|
|
60
|
+
"brew",
|
|
61
|
+
"bull",
|
|
62
|
+
"burn",
|
|
63
|
+
"bush",
|
|
64
|
+
"busy",
|
|
65
|
+
"cage",
|
|
66
|
+
"calm",
|
|
67
|
+
"came",
|
|
68
|
+
"camp",
|
|
69
|
+
"card",
|
|
70
|
+
"care",
|
|
71
|
+
"cart",
|
|
72
|
+
"case",
|
|
73
|
+
"cash",
|
|
74
|
+
"cast",
|
|
75
|
+
"cave",
|
|
76
|
+
"cent",
|
|
77
|
+
"chat",
|
|
78
|
+
"chef",
|
|
79
|
+
"chin",
|
|
80
|
+
"chip",
|
|
81
|
+
"city",
|
|
82
|
+
"clam",
|
|
83
|
+
"clap",
|
|
84
|
+
"clay",
|
|
85
|
+
"clip",
|
|
86
|
+
"club",
|
|
87
|
+
"clue",
|
|
88
|
+
"coal",
|
|
89
|
+
"coat",
|
|
90
|
+
"code",
|
|
91
|
+
"coil",
|
|
92
|
+
"coin",
|
|
93
|
+
"cold",
|
|
94
|
+
"colt",
|
|
95
|
+
"cord",
|
|
96
|
+
"core",
|
|
97
|
+
"cork",
|
|
98
|
+
"corn",
|
|
99
|
+
"cost",
|
|
100
|
+
"coup",
|
|
101
|
+
"crab",
|
|
102
|
+
"crew",
|
|
103
|
+
"crop",
|
|
104
|
+
"crow",
|
|
105
|
+
"cube",
|
|
106
|
+
"cure",
|
|
107
|
+
"curl",
|
|
108
|
+
"cute",
|
|
109
|
+
"dark",
|
|
110
|
+
"dart",
|
|
111
|
+
"data",
|
|
112
|
+
"date",
|
|
113
|
+
"dawn",
|
|
114
|
+
"days",
|
|
115
|
+
"dead",
|
|
116
|
+
"deal",
|
|
117
|
+
"dean",
|
|
118
|
+
"debt",
|
|
119
|
+
"deck",
|
|
120
|
+
"deed",
|
|
121
|
+
"deep",
|
|
122
|
+
"deer",
|
|
123
|
+
"desk",
|
|
124
|
+
"dew",
|
|
125
|
+
"dial",
|
|
126
|
+
"diet",
|
|
127
|
+
"dime",
|
|
128
|
+
"dirt",
|
|
129
|
+
"dish",
|
|
130
|
+
"disk",
|
|
131
|
+
"dive",
|
|
132
|
+
"dock",
|
|
133
|
+
"doll",
|
|
134
|
+
"dome",
|
|
135
|
+
"done",
|
|
136
|
+
"door",
|
|
137
|
+
"dose",
|
|
138
|
+
"dote",
|
|
139
|
+
"dove",
|
|
140
|
+
"down",
|
|
141
|
+
"draw",
|
|
142
|
+
"drop",
|
|
143
|
+
"drum",
|
|
144
|
+
"dual",
|
|
145
|
+
"duel",
|
|
146
|
+
"dune",
|
|
147
|
+
"dust",
|
|
148
|
+
"duty",
|
|
149
|
+
"each",
|
|
150
|
+
"earl",
|
|
151
|
+
"earn",
|
|
152
|
+
"ease",
|
|
153
|
+
"east",
|
|
154
|
+
"easy",
|
|
155
|
+
"edge",
|
|
156
|
+
"edit",
|
|
157
|
+
"epic",
|
|
158
|
+
"even",
|
|
159
|
+
"exam",
|
|
160
|
+
"exit",
|
|
161
|
+
"face",
|
|
162
|
+
"fact",
|
|
163
|
+
"fair",
|
|
164
|
+
"fall",
|
|
165
|
+
"fame",
|
|
166
|
+
"farm",
|
|
167
|
+
"fate",
|
|
168
|
+
"fern",
|
|
169
|
+
"file",
|
|
170
|
+
"fill",
|
|
171
|
+
"film",
|
|
172
|
+
"find",
|
|
173
|
+
"fire",
|
|
174
|
+
"firm",
|
|
175
|
+
"fish",
|
|
176
|
+
"fist",
|
|
177
|
+
"flag",
|
|
178
|
+
"flat",
|
|
179
|
+
"flaw",
|
|
180
|
+
"fled",
|
|
181
|
+
"flew",
|
|
182
|
+
"flip",
|
|
183
|
+
"flow",
|
|
184
|
+
"foam",
|
|
185
|
+
"fold",
|
|
186
|
+
"folk",
|
|
187
|
+
"fond",
|
|
188
|
+
"font",
|
|
189
|
+
"food",
|
|
190
|
+
"fool",
|
|
191
|
+
"fork",
|
|
192
|
+
"form",
|
|
193
|
+
"fort",
|
|
194
|
+
"foul",
|
|
195
|
+
"four",
|
|
196
|
+
"free",
|
|
197
|
+
"from",
|
|
198
|
+
"fuel",
|
|
199
|
+
"full",
|
|
200
|
+
"fund",
|
|
201
|
+
"fuse",
|
|
202
|
+
"gain",
|
|
203
|
+
"gale",
|
|
204
|
+
"gaze",
|
|
205
|
+
"gear",
|
|
206
|
+
"gene",
|
|
207
|
+
"gift",
|
|
208
|
+
"girl",
|
|
209
|
+
"give",
|
|
210
|
+
"glad",
|
|
211
|
+
"glow",
|
|
212
|
+
"glue",
|
|
213
|
+
"goal",
|
|
214
|
+
"gold",
|
|
215
|
+
"golf",
|
|
216
|
+
"gone",
|
|
217
|
+
"good",
|
|
218
|
+
"gore",
|
|
219
|
+
"gown",
|
|
220
|
+
"grab",
|
|
221
|
+
"grin",
|
|
222
|
+
"grip",
|
|
223
|
+
"grow",
|
|
224
|
+
"gulf",
|
|
225
|
+
"hall",
|
|
226
|
+
"halt",
|
|
227
|
+
"hare",
|
|
228
|
+
"harm",
|
|
229
|
+
"harp",
|
|
230
|
+
"haul",
|
|
231
|
+
"have",
|
|
232
|
+
"haze",
|
|
233
|
+
"head",
|
|
234
|
+
"heap",
|
|
235
|
+
"heat",
|
|
236
|
+
"heel",
|
|
237
|
+
"help",
|
|
238
|
+
"herb",
|
|
239
|
+
"hide",
|
|
240
|
+
"high",
|
|
241
|
+
"hill",
|
|
242
|
+
"hint",
|
|
243
|
+
"hire",
|
|
244
|
+
"hold",
|
|
245
|
+
"hole",
|
|
246
|
+
"home",
|
|
247
|
+
"hook",
|
|
248
|
+
"hope",
|
|
249
|
+
"horn",
|
|
250
|
+
"huge",
|
|
251
|
+
"hull",
|
|
252
|
+
"hunt",
|
|
253
|
+
"hymn",
|
|
254
|
+
"icon",
|
|
255
|
+
"idea",
|
|
256
|
+
"idle",
|
|
257
|
+
"inch",
|
|
258
|
+
"into",
|
|
259
|
+
"iris",
|
|
260
|
+
"iron",
|
|
261
|
+
"jade",
|
|
262
|
+
"jail",
|
|
263
|
+
"jest",
|
|
264
|
+
"join",
|
|
265
|
+
"joke",
|
|
266
|
+
"jury",
|
|
267
|
+
"just",
|
|
268
|
+
"keen",
|
|
269
|
+
"keep",
|
|
270
|
+
"kern",
|
|
271
|
+
"kind",
|
|
272
|
+
"king",
|
|
273
|
+
"knee",
|
|
274
|
+
"knew",
|
|
275
|
+
"knit",
|
|
276
|
+
]);
|
|
277
|
+
//# sourceMappingURL=FALLBACK_WORDLIST.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FALLBACK_WORDLIST.js","sourceRoot":"","sources":["../../../src/mods/FALLBACK_WORDLIST.ts"],"names":[],"mappings":";AAAA;;;;;;;8EAO8E;;;AAE9E,iFAAiF;AAEjF;;;;;;;;;GASG;AACU,QAAA,iBAAiB,GAAsB,MAAM,CAAC,MAAM,CAAC;IAChE,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;CACP,CAAC,CAAC"}
|
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
* Copyright (c) 2025 NEHONIX. All rights reserved.
|
|
8
8
|
****************************************************************************/
|
|
9
9
|
export declare const CHARSETS: {
|
|
10
|
-
readonly uppercase:
|
|
11
|
-
readonly lowercase:
|
|
12
|
-
readonly numbers:
|
|
13
|
-
readonly symbols:
|
|
10
|
+
readonly uppercase: string;
|
|
11
|
+
readonly lowercase: string;
|
|
12
|
+
readonly numbers: string;
|
|
13
|
+
readonly symbols: string;
|
|
14
14
|
readonly similarChars: RegExp;
|
|
15
15
|
};
|
|
16
16
|
/** Minimum length enforced on every `generate()` call. */
|
|
@@ -87,17 +87,6 @@ export interface LoadWordlistOptions {
|
|
|
87
87
|
* const words = loadEFFWordlist({ filePath: "/opt/security/my_words.txt" });
|
|
88
88
|
*/
|
|
89
89
|
export declare function loadEFFWordlist(options?: LoadWordlistOptions): readonly string[];
|
|
90
|
-
/**
|
|
91
|
-
* Compact built-in fallback wordlist (256 words).
|
|
92
|
-
*
|
|
93
|
-
* This is used by `getWordlist()` when no external file is provided and
|
|
94
|
-
* `allowFallback` is `true`. It satisfies the EFF's criteria of being
|
|
95
|
-
* unambiguous, easy to spell, and free of visually confusable entries.
|
|
96
|
-
*
|
|
97
|
-
* **Do not import this array directly for production passphrases** — use
|
|
98
|
-
* `getWordlist()` instead, which will prefer a full EFF file when available.
|
|
99
|
-
*/
|
|
100
|
-
export declare const FALLBACK_WORDLIST: readonly string[];
|
|
101
90
|
/**
|
|
102
91
|
* Options for `getWordlist`.
|
|
103
92
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordMDict.d.ts","sourceRoot":"","sources":["../../../src/mods/PasswordMDict.ts"],"names":[],"mappings":"AAAA;;;;;;;8EAO8E;
|
|
1
|
+
{"version":3,"file":"PasswordMDict.d.ts","sourceRoot":"","sources":["../../../src/mods/PasswordMDict.ts"],"names":[],"mappings":"AAAA;;;;;;;8EAO8E;AAS9E,eAAO,MAAM,QAAQ;;;;;;CAMX,CAAC;AAEX,0DAA0D;AAC1D,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,0DAA0D;AAC1D,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAIvC;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE/D;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAI5D,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAE7B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,wBAAgB,eAAe,CAC7B,OAAO,GAAE,mBAAwB,GAChC,SAAS,MAAM,EAAE,CAoGnB;AAKD;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;CAC3C;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,WAAW,CACzB,OAAO,GAAE,kBAAuB,GAC/B,SAAS,MAAM,EAAE,CA8BnB"}
|
|
@@ -8,18 +8,20 @@
|
|
|
8
8
|
* Copyright (c) 2025 NEHONIX. All rights reserved.
|
|
9
9
|
****************************************************************************/
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
exports.
|
|
11
|
+
exports.EFF_FILENAMES = exports.MAX_GENERATE_LENGTH = exports.MIN_GENERATE_LENGTH = exports.CHARSETS = void 0;
|
|
12
12
|
exports.loadEFFWordlist = loadEFFWordlist;
|
|
13
13
|
exports.getWordlist = getWordlist;
|
|
14
14
|
const fs_1 = require("fs");
|
|
15
15
|
const path_1 = require("path");
|
|
16
|
+
const constants_1 = require("../utils/constants");
|
|
17
|
+
const FALLBACK_WORDLIST_1 = require("./FALLBACK_WORDLIST");
|
|
16
18
|
// ─── Character Sets ───────────────────────────────────────────────────────────
|
|
17
19
|
exports.CHARSETS = {
|
|
18
|
-
uppercase:
|
|
19
|
-
lowercase:
|
|
20
|
-
numbers:
|
|
21
|
-
symbols:
|
|
22
|
-
similarChars:
|
|
20
|
+
uppercase: constants_1.CHAR_SETS.UPPERCASE,
|
|
21
|
+
lowercase: constants_1.CHAR_SETS.LOWERCASE,
|
|
22
|
+
numbers: constants_1.CHAR_SETS.NUMBERS,
|
|
23
|
+
symbols: constants_1.CHAR_SETS.SYMBOLS,
|
|
24
|
+
similarChars: constants_1.CHAR_SETS.RSIMILAR_CHARS,
|
|
23
25
|
};
|
|
24
26
|
/** Minimum length enforced on every `generate()` call. */
|
|
25
27
|
exports.MIN_GENERATE_LENGTH = 8;
|
|
@@ -140,278 +142,14 @@ function loadEFFWordlist(options = {}) {
|
|
|
140
142
|
words.push(word);
|
|
141
143
|
}
|
|
142
144
|
}
|
|
145
|
+
const WMLIMIT = 10;
|
|
143
146
|
// ── Validate result ─────────────────────────────────────────────────────────
|
|
144
|
-
if (words.length <
|
|
147
|
+
if (words.length < WMLIMIT) {
|
|
145
148
|
throw new Error(`loadEFFWordlist: file "${absolutePath}" yielded only ${words.length} valid word(s). ` +
|
|
146
|
-
`Expected an EFF wordlist with at least
|
|
149
|
+
`Expected an EFF wordlist with at least ${WMLIMIT} entries.`);
|
|
147
150
|
}
|
|
148
151
|
return Object.freeze(words);
|
|
149
152
|
}
|
|
150
|
-
// ─── Fallback Wordlist ────────────────────────────────────────────────────────
|
|
151
|
-
/**
|
|
152
|
-
* Compact built-in fallback wordlist (256 words).
|
|
153
|
-
*
|
|
154
|
-
* This is used by `getWordlist()` when no external file is provided and
|
|
155
|
-
* `allowFallback` is `true`. It satisfies the EFF's criteria of being
|
|
156
|
-
* unambiguous, easy to spell, and free of visually confusable entries.
|
|
157
|
-
*
|
|
158
|
-
* **Do not import this array directly for production passphrases** — use
|
|
159
|
-
* `getWordlist()` instead, which will prefer a full EFF file when available.
|
|
160
|
-
*/
|
|
161
|
-
exports.FALLBACK_WORDLIST = Object.freeze([
|
|
162
|
-
"able",
|
|
163
|
-
"acid",
|
|
164
|
-
"aged",
|
|
165
|
-
"also",
|
|
166
|
-
"area",
|
|
167
|
-
"army",
|
|
168
|
-
"away",
|
|
169
|
-
"baby",
|
|
170
|
-
"back",
|
|
171
|
-
"bail",
|
|
172
|
-
"bake",
|
|
173
|
-
"ball",
|
|
174
|
-
"barn",
|
|
175
|
-
"base",
|
|
176
|
-
"bath",
|
|
177
|
-
"beam",
|
|
178
|
-
"bear",
|
|
179
|
-
"beat",
|
|
180
|
-
"been",
|
|
181
|
-
"bell",
|
|
182
|
-
"belt",
|
|
183
|
-
"best",
|
|
184
|
-
"bird",
|
|
185
|
-
"bite",
|
|
186
|
-
"blade",
|
|
187
|
-
"bold",
|
|
188
|
-
"bolt",
|
|
189
|
-
"bond",
|
|
190
|
-
"bone",
|
|
191
|
-
"book",
|
|
192
|
-
"boom",
|
|
193
|
-
"boot",
|
|
194
|
-
"born",
|
|
195
|
-
"both",
|
|
196
|
-
"bowl",
|
|
197
|
-
"bred",
|
|
198
|
-
"brew",
|
|
199
|
-
"bull",
|
|
200
|
-
"burn",
|
|
201
|
-
"bush",
|
|
202
|
-
"busy",
|
|
203
|
-
"cage",
|
|
204
|
-
"calm",
|
|
205
|
-
"came",
|
|
206
|
-
"camp",
|
|
207
|
-
"card",
|
|
208
|
-
"care",
|
|
209
|
-
"cart",
|
|
210
|
-
"case",
|
|
211
|
-
"cash",
|
|
212
|
-
"cast",
|
|
213
|
-
"cave",
|
|
214
|
-
"cent",
|
|
215
|
-
"chat",
|
|
216
|
-
"chef",
|
|
217
|
-
"chin",
|
|
218
|
-
"chip",
|
|
219
|
-
"city",
|
|
220
|
-
"clam",
|
|
221
|
-
"clap",
|
|
222
|
-
"clay",
|
|
223
|
-
"clip",
|
|
224
|
-
"club",
|
|
225
|
-
"clue",
|
|
226
|
-
"coal",
|
|
227
|
-
"coat",
|
|
228
|
-
"code",
|
|
229
|
-
"coil",
|
|
230
|
-
"coin",
|
|
231
|
-
"cold",
|
|
232
|
-
"colt",
|
|
233
|
-
"cord",
|
|
234
|
-
"core",
|
|
235
|
-
"cork",
|
|
236
|
-
"corn",
|
|
237
|
-
"cost",
|
|
238
|
-
"coup",
|
|
239
|
-
"crab",
|
|
240
|
-
"crew",
|
|
241
|
-
"crop",
|
|
242
|
-
"crow",
|
|
243
|
-
"cube",
|
|
244
|
-
"cure",
|
|
245
|
-
"curl",
|
|
246
|
-
"cute",
|
|
247
|
-
"dark",
|
|
248
|
-
"dart",
|
|
249
|
-
"data",
|
|
250
|
-
"date",
|
|
251
|
-
"dawn",
|
|
252
|
-
"days",
|
|
253
|
-
"dead",
|
|
254
|
-
"deal",
|
|
255
|
-
"dean",
|
|
256
|
-
"debt",
|
|
257
|
-
"deck",
|
|
258
|
-
"deed",
|
|
259
|
-
"deep",
|
|
260
|
-
"deer",
|
|
261
|
-
"desk",
|
|
262
|
-
"dew",
|
|
263
|
-
"dial",
|
|
264
|
-
"diet",
|
|
265
|
-
"dime",
|
|
266
|
-
"dirt",
|
|
267
|
-
"dish",
|
|
268
|
-
"disk",
|
|
269
|
-
"dive",
|
|
270
|
-
"dock",
|
|
271
|
-
"doll",
|
|
272
|
-
"dome",
|
|
273
|
-
"done",
|
|
274
|
-
"door",
|
|
275
|
-
"dose",
|
|
276
|
-
"dote",
|
|
277
|
-
"dove",
|
|
278
|
-
"down",
|
|
279
|
-
"draw",
|
|
280
|
-
"drop",
|
|
281
|
-
"drum",
|
|
282
|
-
"dual",
|
|
283
|
-
"duel",
|
|
284
|
-
"dune",
|
|
285
|
-
"dust",
|
|
286
|
-
"duty",
|
|
287
|
-
"each",
|
|
288
|
-
"earl",
|
|
289
|
-
"earn",
|
|
290
|
-
"ease",
|
|
291
|
-
"east",
|
|
292
|
-
"easy",
|
|
293
|
-
"edge",
|
|
294
|
-
"edit",
|
|
295
|
-
"epic",
|
|
296
|
-
"even",
|
|
297
|
-
"exam",
|
|
298
|
-
"exit",
|
|
299
|
-
"face",
|
|
300
|
-
"fact",
|
|
301
|
-
"fair",
|
|
302
|
-
"fall",
|
|
303
|
-
"fame",
|
|
304
|
-
"farm",
|
|
305
|
-
"fate",
|
|
306
|
-
"fern",
|
|
307
|
-
"file",
|
|
308
|
-
"fill",
|
|
309
|
-
"film",
|
|
310
|
-
"find",
|
|
311
|
-
"fire",
|
|
312
|
-
"firm",
|
|
313
|
-
"fish",
|
|
314
|
-
"fist",
|
|
315
|
-
"flag",
|
|
316
|
-
"flat",
|
|
317
|
-
"flaw",
|
|
318
|
-
"fled",
|
|
319
|
-
"flew",
|
|
320
|
-
"flip",
|
|
321
|
-
"flow",
|
|
322
|
-
"foam",
|
|
323
|
-
"fold",
|
|
324
|
-
"folk",
|
|
325
|
-
"fond",
|
|
326
|
-
"font",
|
|
327
|
-
"food",
|
|
328
|
-
"fool",
|
|
329
|
-
"fork",
|
|
330
|
-
"form",
|
|
331
|
-
"fort",
|
|
332
|
-
"foul",
|
|
333
|
-
"four",
|
|
334
|
-
"free",
|
|
335
|
-
"from",
|
|
336
|
-
"fuel",
|
|
337
|
-
"full",
|
|
338
|
-
"fund",
|
|
339
|
-
"fuse",
|
|
340
|
-
"gain",
|
|
341
|
-
"gale",
|
|
342
|
-
"gaze",
|
|
343
|
-
"gear",
|
|
344
|
-
"gene",
|
|
345
|
-
"gift",
|
|
346
|
-
"girl",
|
|
347
|
-
"give",
|
|
348
|
-
"glad",
|
|
349
|
-
"glow",
|
|
350
|
-
"glue",
|
|
351
|
-
"goal",
|
|
352
|
-
"gold",
|
|
353
|
-
"golf",
|
|
354
|
-
"gone",
|
|
355
|
-
"good",
|
|
356
|
-
"gore",
|
|
357
|
-
"gown",
|
|
358
|
-
"grab",
|
|
359
|
-
"grin",
|
|
360
|
-
"grip",
|
|
361
|
-
"grow",
|
|
362
|
-
"gulf",
|
|
363
|
-
"hall",
|
|
364
|
-
"halt",
|
|
365
|
-
"hare",
|
|
366
|
-
"harm",
|
|
367
|
-
"harp",
|
|
368
|
-
"haul",
|
|
369
|
-
"have",
|
|
370
|
-
"haze",
|
|
371
|
-
"head",
|
|
372
|
-
"heap",
|
|
373
|
-
"heat",
|
|
374
|
-
"heel",
|
|
375
|
-
"help",
|
|
376
|
-
"herb",
|
|
377
|
-
"hide",
|
|
378
|
-
"high",
|
|
379
|
-
"hill",
|
|
380
|
-
"hint",
|
|
381
|
-
"hire",
|
|
382
|
-
"hold",
|
|
383
|
-
"hole",
|
|
384
|
-
"home",
|
|
385
|
-
"hook",
|
|
386
|
-
"hope",
|
|
387
|
-
"horn",
|
|
388
|
-
"huge",
|
|
389
|
-
"hull",
|
|
390
|
-
"hunt",
|
|
391
|
-
"hymn",
|
|
392
|
-
"icon",
|
|
393
|
-
"idea",
|
|
394
|
-
"idle",
|
|
395
|
-
"inch",
|
|
396
|
-
"into",
|
|
397
|
-
"iris",
|
|
398
|
-
"iron",
|
|
399
|
-
"jade",
|
|
400
|
-
"jail",
|
|
401
|
-
"jest",
|
|
402
|
-
"join",
|
|
403
|
-
"joke",
|
|
404
|
-
"jury",
|
|
405
|
-
"just",
|
|
406
|
-
"keen",
|
|
407
|
-
"keep",
|
|
408
|
-
"kern",
|
|
409
|
-
"kind",
|
|
410
|
-
"king",
|
|
411
|
-
"knee",
|
|
412
|
-
"knew",
|
|
413
|
-
"knit",
|
|
414
|
-
]);
|
|
415
153
|
/**
|
|
416
154
|
* Unified wordlist accessor: tries to load an EFF file, falls back to the
|
|
417
155
|
* built-in list according to `allowFallback`.
|
|
@@ -446,7 +184,7 @@ function getWordlist(options = {}) {
|
|
|
446
184
|
"Using built-in 256-word fallback list. " +
|
|
447
185
|
"For production use, supply `dir` or `filePath` pointing to an EFF .txt file.");
|
|
448
186
|
}
|
|
449
|
-
return
|
|
187
|
+
return FALLBACK_WORDLIST_1.FALLBACK_WORDLIST;
|
|
450
188
|
}
|
|
451
189
|
try {
|
|
452
190
|
return loadEFFWordlist(loadOptions);
|
|
@@ -458,7 +196,7 @@ function getWordlist(options = {}) {
|
|
|
458
196
|
console.warn(`[PasswordMDict] Failed to load EFF wordlist: ${err.message}\n` +
|
|
459
197
|
`Falling back to built-in 256-word list.`);
|
|
460
198
|
}
|
|
461
|
-
return
|
|
199
|
+
return FALLBACK_WORDLIST_1.FALLBACK_WORDLIST;
|
|
462
200
|
}
|
|
463
201
|
}
|
|
464
202
|
//# sourceMappingURL=PasswordMDict.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordMDict.js","sourceRoot":"","sources":["../../../src/mods/PasswordMDict.ts"],"names":[],"mappings":";AAAA;;;;;;;8EAO8E;;;
|
|
1
|
+
{"version":3,"file":"PasswordMDict.js","sourceRoot":"","sources":["../../../src/mods/PasswordMDict.ts"],"names":[],"mappings":";AAAA;;;;;;;8EAO8E;;;AAuG9E,0CAsGC;AA6CD,kCAgCC;AAxRD,2BAAkC;AAClC,+BAA+B;AAC/B,kDAAoD;AACpD,2DAAwD;AAExD,iFAAiF;AAEpE,QAAA,QAAQ,GAAG;IACtB,SAAS,EAAE,qBAAC,CAAC,SAAS;IACtB,SAAS,EAAE,qBAAC,CAAC,SAAS;IACtB,OAAO,EAAE,qBAAC,CAAC,OAAO;IAClB,OAAO,EAAE,qBAAC,CAAC,OAAO;IAClB,YAAY,EAAE,qBAAC,CAAC,cAAc;CACtB,CAAC;AAEX,0DAA0D;AAC7C,QAAA,mBAAmB,GAAG,CAAC,CAAC;AACrC,0DAA0D;AAC7C,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAevC;;;;;;GAMG;AACU,QAAA,aAAa,GAAuC;IAC/D,KAAK,EAAE,wBAAwB;IAC/B,MAAM,EAAE,0BAA0B;IAClC,MAAM,EAAE,4BAA4B;CACrC,CAAC;AA0BF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,SAAgB,eAAe,CAC7B,UAA+B,EAAE;IAEjC,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAErD,+EAA+E;IAC/E,IAAI,YAAgC,CAAC;IAErC,IAAI,QAAQ,EAAE,CAAC;QACb,YAAY,GAAG,IAAA,cAAO,EAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;SAAM,IAAI,GAAG,EAAE,CAAC;QACf,YAAY,GAAG,IAAA,cAAO,EAAC,GAAG,EAAE,qBAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,UAAU,GAAG,qBAAa,CAAC,OAAO,CAAC,CAAC;QAE1C,MAAM,aAAa,GAAG;YACpB,iEAAiE;YACjE,IAAA,cAAO,EAAC,SAAS,EAAE,UAAU,CAAC;YAC9B,4BAA4B;YAC5B,IAAA,cAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC;YACjD,IAAA,cAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC;YACzD,yBAAyB;YACzB,IAAA,cAAO,EACL,OAAO,CAAC,GAAG,EAAE,EACb,cAAc,EACd,kBAAkB,EAClB,MAAM,EACN,KAAK,EACL,MAAM,EACN,UAAU,CACX;SACF,CAAC;QAEF,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,IAAI,CAAC;gBACH,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrB,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;oBAC7B,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;wBACnB,YAAY,GAAG,CAAC,CAAC;wBACjB,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,yCAAyC;YAC3C,CAAC;QACH,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,kEAAkE;YAClE,YAAY,GAAG,IAAA,cAAO,EAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,IAAA,iBAAY,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,IAAI,KAAK,CACb,qDAAqD,YAAY,KAAK;YACpE,mEAAmE;YACnE,mBAAmB,GAAG,EAAE,CAC3B,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAE5B,gCAAgC;QAChC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAExD,sDAAsD;QACtD,0BAA0B;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC9B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE;YAC3C,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAEvB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAEvC,oEAAoE;QACpE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,CAAA;IAElB,+EAA+E;IAC/E,IAAI,KAAK,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,0BAA0B,YAAY,kBAAkB,KAAK,CAAC,MAAM,kBAAkB;YACpF,0CAA0C,OAAO,WAAW,CAC/D,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAsBD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAgB,WAAW,CACzB,UAA8B,EAAE;IAEhC,MAAM,EAAE,aAAa,GAAG,MAAM,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;IAE3D,yEAAyE;IACzE,qDAAqD;IACrD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;IACrE,IAAI,CAAC,WAAW,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;QAC5C,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CACV,iDAAiD;gBAC/C,yCAAyC;gBACzC,8EAA8E,CACjF,CAAC;QACJ,CAAC;QACD,OAAO,qCAAiB,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,aAAa,KAAK,KAAK;YAAE,MAAM,GAAG,CAAC;QAEvC,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CACV,gDAAiD,GAAa,CAAC,OAAO,IAAI;gBACxE,yCAAyC,CAC5C,CAAC;QACJ,CAAC;QACD,OAAO,qCAAiB,CAAC;IAC3B,CAAC;AACH,CAAC"}
|
|
@@ -29,10 +29,7 @@ export type HashOutputFormat = "hex" | "base64" | "buffer" | "uint8array";
|
|
|
29
29
|
* Supported HMAC algorithms.
|
|
30
30
|
*/
|
|
31
31
|
export type HMACAlgorithm = "sha256" | "sha512" | "SHA-256" | "SHA-512";
|
|
32
|
-
|
|
33
|
-
* Base encoding types for data conversion.
|
|
34
|
-
*/
|
|
35
|
-
export type BaseEncodingType = "hex" | "base64" | "base64url" | "utf-8" | "ascii";
|
|
32
|
+
export type BaseEncodingType = "hex" | "base64" | "base32";
|
|
36
33
|
/**
|
|
37
34
|
* Configuration options for hashing operations.
|
|
38
35
|
*/
|