Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Konstantinos Nitsopoulos authored Nov 23, 2021
1 parent 91e3f0f commit a604688
Showing 1 changed file with 7 additions and 9 deletions.
16 changes: 7 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
# VanityTXID-Plugin

Currently testing update prior to release (see .zip above).

![alt text](https://github.com/TinosNitso/VanityTXID-Plugin/blob/main/Screenshots/v1.5.0.png)

v1.5.0 screenshot used nonce '07000000006e2b40', corresponding to the 8th thread. with hash rate 1.2 MH/s for 394B txn. I suspect assembly code might be a few times faster than sha256.cpp (BCHN). For my i7-2600 CPU, I've read estimates ranging from 5 to 24 MH/s for an 80B block header. For 197B I get nearly 2 MH/s, & 6.2 MH/s is for address generation (quadruple the speed of VanitygenCash). 7 threads can be a tiny bit faster than 8.
v1.5.0 screenshot used nonce '07000000006e2b40', corresponding to the 8th thread. with hash rate 1.2 MH/s for 394B txn. I suspect assembly code might be a few times faster than sha256.cpp (BCHN). For my i7-2600 CPU, I've read estimates ranging from 5 to 24 MH/s for an 80B block header. For 197B I get nearly 2 MH/s, & 6.2 MH/s is for address generation (quadruple the speed of VanitygenCash).

SLP Edition versions 3.6.7-dev6 & 3.6.7-dev5 (for macOS) don't use up a CPU processor in the background, unlike 3.6.6. The pre-releases also have newer code. The CPU usage issue can arise on all 3 OSs.

Expand All @@ -16,18 +14,18 @@ Generate custom SHA256 Checksums for any file. Also generate txn IDs starting wi

One issue is that 0-conf doesn't apply to the TXID itself. The payment amount can't be changed, but the TXID & message can change before confirmation. If it ever fails, the contract can be improved, or else mining pools can mine the vanity TXID directly in return for a confidential fee. eg a new version can include simple nonce checksum/s, s.t. miners can't easily deduce a vanity contract is being used. A "smarter" contract could also sign 0-conf message using OP_CHECKDATASIG.

VanityTXID.cpp & VanityTXID.rc are compiled together using -O3 -s -march=corei7 g++.exe compiler flags. Same for VanityP2SH. All .dll libraries are extracted from 'codeblocks-20.03mingw-nosetup.zip' & 'codeblocks-20.03-32bit-mingw-32bit-nosetup.zip'. Linux compiling doesn't use Icon.rc, and requires linking pthread library (-lpthread) in Code::Blocks ('sudo apt install codeblocks'). In macOS don't use Code::Blocks. Instead extract/copy src to home folder, then open Terminal.app, enter 'cd src', then 'g++ -std=c++17 -O3 ./VanityTXID.cpp'. macOS will download & install g++ if needed. Then rename the resulting 'a.out' to 'VanityTXID-Plugin' and it's ready to go inside the zip if you want to check your own build's hash rate. Same for VanityP2SH.

Windows project files with working example parameters are included, so others can build & run immediately. There's a serious issue when it comes to deterministic builds which are verifiably identical to the source code. Checksums change with every build, whereas the exact number of Bytes stays the same, e.g. 86,016 bytes.
Windows project files with working example parameters are included, so others can build & run immediately. There's a serious issue when it comes to deterministic builds which are verifiably identical to the source code. Checksums change with every build, whereas the exact number of Bytes stays the same, e.g. 86,016B+8B Nonce.

Linux requires eSpeak for TTS (enter 'sudo apt install espeak' in terminal). The latest version of VirtualBox gives good hash rates for all OSs. I did a native Linux test and speed as the same as for WIN10, so Code::Blocks' MinGW is probably fine.

Windows users can compare 64-bit to 32-bit performance by replacing all binaries manually from the zip. 64-bit binaries were 12% faster in a test (1.95/1.74).

v1.6.1: SHA256 Checksum 0000a04841563dd64bb2930ca7f296a2c152643de5b9df6c4c21c9a14d96b8eb
VanityTXID.cpp & VanityTXID.rc are compiled together using -O3 -s -march=corei7 g++.exe compiler flags. Same for VanityP2SH. All .dll libraries are extracted from 'codeblocks-20.03mingw-nosetup.zip' & 'codeblocks-20.03-32bit-mingw-32bit-nosetup.zip'. Linux compiling doesn't use Icon.rc, and requires linking pthread library (-lpthread) in Code::Blocks ('sudo apt install codeblocks'). In macOS don't use Code::Blocks. Instead extract/copy src to home folder, then open Terminal.app, enter 'cd src', then 'g++ -std=c++17 -O3 ./VanityTXID.cpp'. macOS will download & install g++ if needed. Then rename the resulting 'a.out' to 'VanityTXID-Plugin' and it's ready to go inside the zip if you want to check your own build's hash rate. Same for VanityP2SH & VanityHash.

v1.6.1: SHA256 Checksum **0000a04841563dd64bb2930ca7f296a2c152643de5b9df6c4c21c9a14d96b8eb**
- Support for EC v3.6.6 re-enabled. v1.6.0 added a tail to its own zip, which wasn't allowed by EC-v3.6.6 (nor is adding archive comments using WinRAR).
- VanityHash now optionally uses a password, "VanityHashNonceF", to decide which bytes to vary, instead of just adding a tail every time.
- All new builds with proper memory allocation. Max file size ~2GB. Unfortunately using too many threads can cause a power failure to the CPU. Each thread demands enough RAM to work a copy of the file. I've successfully tested 1.7GB with 2 threads (2 minutes for Pattern '0').
- All new builds with proper memory allocation. Max file size ~2GB. Unfortunately using too many threads can cause a power failure to the CPU. Each thread demands enough RAM to work a copy of the file. I've tested over 1.7GB with 4 threads (under 3 minutes for Pattern '0', but .iso would require password).
- Can now vanitize multiple files (document batch). Assumes wallet has permission to create a new folder. No files are ever renamed.
- Drag & Drop for many files! Dropping during current process terminates the old one 1st. Files only, no folders. Drag & drop may be broken on Linux, but works fine on macOS.
- Read-only QCheckBox for Script.
Expand All @@ -36,7 +34,7 @@ v1.6.1: SHA256 Checksum 0000a04841563dd64bb2930ca7f296a2c152643de5b9df6c4c21c9a1
- All executable & WebP files now have SHA256 checksums starting with 0000, generated using 8B tails. The plugin itself is a zip & uses the password technique instead (hash rate over 300 H/s).
- As usual, please restart EC after uninstalling previous version.

v1.6.0: SHA256 Checksum: **00003449a1e19a94d82dc7185c1845802c6c3c8aebd67e8083243f5415d9dde1** (0.4 kH/s · 7 mins)
v1.6.0: SHA256 Checksum: 00003449a1e19a94d82dc7185c1845802c6c3c8aebd67e8083243f5415d9dde1 (0.4 kH/s · 7 mins)
- VanityHash, now included, allows vanity checksums for any file. Try it out! The plugin's .zip's checksum now starts with 0000. This allows vanity checksums for Token Documents, BFP uploads, etc. Drag & drop file may be in the next version. An 8B nonce is appended to the end of the file.
- Button icons. Address generator MessageBox improved. No nonce for CashAddr Pattern 'P' (same as 'p').
- In C++, 'goto Finish' moved to better place.
Expand Down

0 comments on commit a604688

Please sign in to comment.