Скрипты генерируют адреса для блокчейн-платформы Semux, содержащие определенные последовательности символов. Например, несколько нулей в начале или конце адреса, или какие-нибудь магические числа https://ru.wikipedia.org/wiki/Hexspeak. Это происходит за счет перебора случайных приватных ключей или сид-фраз, пока не найдется соответствующий адрес.
Скрипт test1.js генерирует красивые адреса, использую wasm-библиотеку https://github.com/uno-labs/UnoSemuxLightCoreWasm. Вызывая функцию generatePriv(), вы получите приватный ключ. Это достаточно быстро. А вызываю функцию generateHD(), вы получите мнемофразу для кошелька, где ваш подобранный адрес будет первым в HD-группе. Это довольно медленно.
Скрипт test2.js генерирует красивые адреса, используя библиотеку https://github.com/semuxproject/semux-js. При этом вы получите приватный ключ от своего адреса, но подбор происходит гораздо медленнее, чем при использовании wasm-библиотеки.
Протестировано на Node.js v13.13.0.
При использовании, рекомендую не задавать поиск последовательностей более 8-ми символов (кстати, можно задать сразу несколько альтернативных вариантов), т.к. возможно это будет очень долго. Например, если вы ищите нужную последовательность в начале адреса, то число возможных комбинаций будет таким:
1 символ -- 16 вариантов
2 символа -- 256 вариантов
3 символа -- 4096 вариантов
4 символа -- 65 536 вариантов
5 символов -- 1 048 576 вариантов
6 символов -- 16 777 216 вариантов
7 символов -- 268 435 456 вариантов
8 символов -- 4 294 967 296 вариантов
9 символов -- 68 719 476 736 вариантов