>> (p.1)
    Author Topic: segvan: Segwit vanity address & bulk address generator  (Read 2631 times)
    This is a self-moderated topic. If you do not want to be moderated by the person who started this topic, create a new topic.
    nullius (OP)
    Copper Member
    Hero Member
    *****
    Offline Offline

    Activity: 630
    Merit: 2630


    If you don’t do PGP, you don’t do crypto!


    View Profile WWW
    February 12, 2018, 06:05:03 PM
    Last edit: February 13, 2018, 01:33:26 PM by nullius
    Merited by ABCbits (32), Lauda (10), malevolent (7), OmegaStarScream (6), xandry (5), mprep (5), Wind_FURY (5), Avirunes (5), dbshck (5), minifrij (5), Lutpin (5), BitMaxz (3), ibminer (3), BTCforJoe (3), RGBKey (3), hirokazu (3), achow101 (2), LoyceV (2), DannyHamilton (2), TryNinja (2), buwaytress (2), ebliever (2), jtipt (2), xdrpx (2), vapourminer (1), suchmoon (1), minerjones (1), LeGaulois (1), Gyrsur (1), bL4nkcode (1), NotATether (1), cissrawk (1), zenrol28 (1), CASlO (1), wilwxk (1), Xynerise (1), BenOnceAgain (1)
     #1

    Note:  This is under active development, currently on an experimental branch offering 5x speedup.  I will post further updates when appropriate.



    By popular demand:

    Github: https://github.com/nym-zone/segvan

    The code for this is reasonably solid, notwithstanding some inelegance in main() which will be refactored.  On FreeBSD, it’s been my dogfood for over six weeks; I have also built it and tried basic functionality on Linux.  But it needs error, warning, and usage messages—plus the manpage!

    When there is significant news (such as major features or a Windows version), I will severely edit this post and bump the thread.

    Two recent products (tips would be encouraging):


    Those were done together, on one run with each key being searched for a Bech32 pattern and a nested “3” address pattern.  They took 500–600 CPU hours on an ultra-slow airgap laptop; for comparison, the same machine requires about 8 hours for a FreeBSD buildworld (!).  But I got lucky:  I hit a ^bc1qnullnym match after covering only about 25% of a 35-bit bruteforce search.  The other took a bit longer; but wasn’t so hard, because I permitted a potential extra digit: ^3[0-9]?segwit (case-insensitive matching).

    Roadmap/TODO, in no particular order:

    • Add threading.  I always simply run one instance per core.  That doesn’t waste anything, because it is a probabilistic search:  There is no concept of “progress”, no need to keep instances synchronized in any way.  Threads would make it more convenient.  However, before I add a simple pthreads implementation, I want to investigate the impact on the next item.
    • Microsoft Windows version, likely via mingw.  This is in popular demand.  I can’t promise a binary on a platform I myself don’t even have in my house; but I will try to get a Windows binary made for folks who need it.
    • Change/adjust the output format.  The current output format is intended for piping to shell scripts, especially for bulk generation mode.  If you need to generate ten thousand address/key pairs and pipe those into a `while read` loop, then the current format is ideal.
    • Add warning/error/usage messages.  This started as an afternoon project for my own use.  The code is solid, despite some inelegance in main() which will also be refactored.  It’s solid, because I need it that way; however, unlike some of my other published software, this was not originally written with other people in mind.
    • Finish the manpage!

Page 1
Viewing Page: 1