fbrute
v1.0.1
Published
Fast generator of character combinations for a given alphabet and length
Downloads
9
Maintainers
Readme
fbrute (fast-bruteforce)
Fast generator of character combinations for a given alphabet and length.
Description
In fact, this generator iterates over all possible character combinations using the capabilities of the lowest level of the language to achieve improved performance.
Table of Contents
Install
$ npm install fbrute
Usage
const fBrute = require("fbrute");
fBrute.bruteForce("abcd", 4, str => console.log(str.join("")));
Performance benchmark
bruteforce x 6,968 ops/sec +1.01% (81 runs sampled)
bruteforcejs x 18,764 ops/sec +0.89% (84 runs sampled)
node-bruteforce x 18,966 ops/sec +1.40% (86 runs sampled)
bruteforcer x 79,761 ops/sec +6.37% (72 runs sampled)
brutee x 14,057 ops/sec +0.89% (90 runs sampled)
bruter x 22,928 ops/sec +2.17% (85 runs sampled)
fBrute x 99,161 ops/sec +1.19% (85 runs sampled)
Fastest is fBrute
To run benchmark:
npm run benchmark
API
Types: HERE!
fBrute.bruteForce(alphabet: string, l: number, cb: (str: string[]) => undefined) => undefined
The main function that starts brute-force
fBrute.bruteForceWithStop(alphabet: string, l: number, cb: (str: string[]) => boolean | undefined) => undefined
The same as bruteForce, only it can stop if the callback returns true
fBrute.bruteForceWithAsyncStop(alphabet: string, l: number, cb: (str: string[]) => boolean | undefined) => undefined
Same as bruteForceWithStop only with asynchronous support
fBrute.multiBruteForce(longToShorter: boolean, alphabet: string, l: number, cb: (str: string[]) => undefined) => undefined
Launches fBrute.bruteForce at all possible lengths
fBrute.multiBruteForceWithStop(longToShorter: boolean, alphabet: string, l: number, cb: (str: string[]) => boolean | undefined, returnEverything: boolean) => boolean | boolean[]
The same as multiBruteForce, only it can stop if the callback returns true
fBrute.multiBruteForceWithAsyncStop(longToShorter: boolean, alphabet: string, l: number, cb: (str: string[]) => boolean | undefined, returnEverything: boolean) => boolean | boolean[]
Same as multiBruteForceWithStop only with asynchronous support
Contacts
Yandex Mail - [email protected]
Github - https://github.com/StormExecute/
Platforms
Github - https://github.com/StormExecute/fbrute/
NPM - https://www.npmjs.com/package/fbrute/
License
MIT - https://mit-license.org/