Hi,
It is very simple script, what do you need exactly? Description how it works?
Let's define 2 groups:
G1 = characters "234567890ABCDEFGHIJKLMNOPQ"
G2 = characters "RSTUVWXYZabcdefghijklmnopqrstuvxyz"
Ignore the first character.
Check second character: if it belongs to G1, set value as 23; it it belongs to G2, set value as 1354, if it is "1" set value as 256
Check each character, from 3rd to the end, and:
if character is "1", and there were only "1"s from the 3rd position, multiply value * 256. It there was already other character than "1", multiply value by *58
if character belongs to group G1, multiply value by * 23 (and remember that there was other value than "1", so multiplier for "1" is changed)
if character belongs to group G2, multiply value by * 58 (and remember that there was other value than "1", so multiplier for "1" is changed)
or you have results and want to find formula to produce them?
Please, explain what is your problem
The above code is an attempt to solve the difficulty calculation for Vanity wallets.
The code is pretty close, but not quite there.
I'd like to know if someone has any idea, or perhaps working sample (any language allowed) to calculate this difficulty.
I've found several posts detailing how to calculate it, but they've all been speaking in tongue soo far (or gave incomplete answers).
We designed this script to attempt a lazy calculation of difficulty but are learning what we reverse engineered was also inaccurate.
VanitySearch So here is a list of sample difficulties with the above script labeled SK against Vanity Search difficulties labeled VS.
we are missing multiple marks such as pivots against 1QLbz6 and 1QLbz7
Please note we expect about a %4.35 error ratio and this is fine.
Fact Check Difficulty
1Chicken
VS=888446610539
SK=50783635853696
1BiLL
VS=4553521
SK=260279408
11111
VS=4294967296
SK=98784247808
111111
VS=1099511627776
SK=25288767438848
1RR
VS=78509
SK=77372
1Ric
VS=4487576
SK=4553521
1Rick1
VS=15318045009
SK=15096205664
1BtcTo
VS=264104224
SK=15096205664
1btcto
VS=15318045009
SK=15096205664
1BtcToon
VS=888446610539
SK=50783635853696
1btctoon
VS=51529903411245
SK=50783635853696
12311
VS=4553521
SK=2602794081
1QLbz6
VS=264104224
SK=3864628649984
1QLbz7
VS=264104224
SK=3864628649984
(But neither are right true difficulty on this is 837,596,142)
Also, we could really use a difficulty division formula based on caseable & non-caseable characters.
We plan to use the solution for a pricing structure and time estimation on a vanity wallet service designed for retail investors. We've made it so easy to use, that children whom can read and follow directions can use it.
We will also be giving away in some cases up to 7 digit wallets absolutely free based on difficulty, that is why this part of our process is so important to us. We cannot have people submitting work for 11111111 and be inaccurate in pricing and estimated time.
edit to clarify the service is splitkey for legacy wallets only.