Author

Topic: narcissist - easy peasy vanity addresses - bech32 - split key (Read 338 times)

copper member
Activity: 282
Merit: 31
For the record... your narcissist-cli.exe.gpg "signature" seems to be more of an encrypted GPG archive than a signature... when I attempted to verify the Windows Build download using Kleopatra and the public key linked from your bitcointalk sig, I was getting an "Decryption Failed - No data"... it wasn't until I actually used the commandline, removed the .exe and just used "gpg narcissit-cli.exi.gpg" before it worked. Huh

Granted, I'm not terribly familiar with GPG... but usually I just download the .sig or .asc file along with .zip or .exe or whatever and use the "Verify" option.

Apologies, I forgot to use a detached signature when signing the Windows build. I have now attached the proper one to the GitHub release and everything should work now Smiley

Code:
$ wget https://github.com/matthewincognito/narcissist/releases/download/v0.1.0/narcissist-cli.exe https://github.com/matthewincognito/narcissist/releases/download/v0.1.0/narcissist-cli.exe.sig
$ gpg --recv-keys 0xBC2BB1D36104939BE924AA51A09E643F541C0FC5
$ gpg --verify narcissist-cli.exe.sig
gpg: assuming signed data in 'narcissist-cli.exe'
gpg: Signature made Sun 01 Apr 2018 08:48:56 BST
gpg:                using RSA key BC2BB1D36104939BE924AA51A09E643F541C0FC5
gpg: Good signature from "Matthew Incognito " [ultimate]
HCP
legendary
Activity: 2086
Merit: 4361
For the record... your narcissist-cli.exe.gpg "signature" seems to be more of an encrypted GPG archive than a signature... when I attempted to verify the Windows Build download using Kleopatra and the public key linked from your bitcointalk sig, I was getting an "Decryption Failed - No data"... it wasn't until I actually used the commandline, removed the .exe and just used "gpg narcissit-cli.exi.gpg" before it worked. Huh

Granted, I'm not terribly familiar with GPG... but usually I just download the .sig or .asc file along with .zip or .exe or whatever and use the "Verify" option.
copper member
Activity: 282
Merit: 31
narcissist
easy peasy vanity addresses



Notes
I just wrote this for fun, don't trust it with your Bitcoin life savings. If you find a way to break it, I'd love to know how Smiley
Also thank you luke-jr for the base58 encoding code, Pieter Wuille for the bech32 address encoding code, and nullius for creating segvan.

Current Features
  • Split key functionality so that untrusted parties can mine an address for you.
  • Support for bech32 (segwit) addresses
  • Easy to use
  • Cross platform

Planned Features
  • Multi-threading
  • Benchmarking/statistics
  • Vanity address mining pool
  • P2SH-P2WKH addresses
  • Regex matching

Usage
Code:
Allowed options:
  --help                                    print this message
  -G [ --generate-keypair ]                 generate a keypair for split-key usage
  -B [ --brute-address ]                    address generation mode
  -C [ --combine-split-key ]                split-key combination mode
  -p [ --brute-address-prefix ] arg         prefix for bruteforcing
  -P [ --split-public-key ] arg             public key, for split-key usage
  -i [ --split-private-key ] arg            private key, for split-key usage
  -T [ --address-type ] arg (=bech32-p2wkh) p2pkh or bech32-p2wkh

Examples
Generate a bech32 address on your own
Code:
$ ./narcissist-cli -B -p bc1pppp
Private: 0A094617E4D9E12A0EA354E7EB81FAB5A61AA0019E5B0288D19254CFD2D9A9D4
Address: bc1ppppumvcq7m282lx94ffjnrz53qszqjtcfze82z
    WIF: L68rHUEpdUU1HgUVVEpShqGS7QhJqe8ap8G4D7vFxHEeo7WYYffZ

Generate a P2PKH address on your own
Code:
$ ./narcissist-cli -B -p 123 -T p2pkh
Private: 2B48614E3CF6BFD713E84573B3420BC10B2A2B0CE9C17CEF003D1D1ADDD9DF52
Address: 123QHaY2YaVpfBZBsw45qxfUXgwPs22fiE
    WIF: Kxfr56YJ5qa3JJeVuMD3aumkjdSdTbfAiTksHgwqsfWFZzbTA9ot

Generate a bech32 address with somebody else
Code:
$ # generate a keypair for yourself
$ ./narcissist-cli -G
 Public: 03C3172451E46BDED75697393A34B1942B15A4DBD34F3FCBA4D4583B521DF2BA82
Private: 6EE8D1E4959DF280DAF6D3D3833B5200F0738D726ACC24C3D611993D5E57F24B

$ # share the *public* key with somebody else and they can mine the address for you
$ ./narcissist-cli -B -p bc1ppppp -P 03C3172451E46BDED75697393A34B1942B15A4DBD34F3FCBA4D4583B521DF2BA82
  Tweak: D4A7A845C3883D6849091217D285A7B3FF8866E1616F2A6A1739DA98FB2C5114
Address: bc1ppppp3mcw4dx7s5d8qsrn4rlwv60p44jegtqztj

$ # using the tweak value found on the miner's computer, combine it with the private key you generated at the start
$ ./narcissist-cli -C -i 6EE8D1E4959DF280DAF6D3D3833B5200F0738D726ACC24C3D611993D5E57F24B -P D4A7A845C3883D6849091217D285A7B3FF8866E1616F2A6A1739DA98FB2C5114
 Public: 02BA6B4A75609F0C13E66FF637A6A8AD43716CEE858C5A45C3752A36B5A9117D8F
Private: E3914642CA1D8156EADE35623AEBF03FF9DAE6318626A5F0082097E7287C025D
Address: bc1ppppp3mcw4dx7s5d8qsrn4rlwv60p44jegtqztj
    WIF: LDRhihu74uQeF8rN7Ehuhiw5S5D4fBu3Gkxbr7BUDP5k4mxWytu2

Download v0.1.0

This thread
Post some public keys and short prefixes here, maybe somebody will mine them for you. Wink
Jump to: