Bitcoin Forum
June 25, 2019, 08:46:08 AM *
News: Latest Bitcoin Core release: 0.18.0 [Torrent] (New!)
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 »
261  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 11:21:33 AM
Also, here's an easy way for it to notify you of solution, just put it after bitcoinAddress = ....

Code:
if(bitcoinAddress == checkphrase)
alert(checkphrase);


It found the solution to the previous problem, and actually, it's running quite efficiently going to a combo of 2M, I thought it was laggy, but I had several applications, a game, and browsers open, so that was seemingly causing me the lag. Updating almost at real time now. I'm able to scroll the window and everything Smiley.

bitcoinAddress should never be equal to checkphrase, i think you mean 'target'.

Thanks for your help, I'll try your new copy now.
262  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 09:52:45 AM
Please tip 18xavJxp7Wxs3vjQvLAsfpTyt9RDBin4RB if you are satisfied with the solution

Sent you a tip schalk. Thanks for your efforts, but I think tubbyjr is closest to taking out this bounty.
263  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 09:44:27 AM
EDIT2: What happened was my console window actually got too full, once i closed and reopened it, it was showing realtime too. Browser does not hang Smiley.

I can reproduce that experience Smiley It would be cool if this console (on Chrome at least) could be set to only display a certain number of lines and discard the earlier lines! Limiting the console window to 1000 lines or something would be handy.

p.s. On my i7 2600k, doing 8m in Javascript should take about 39 hours. Not great, but at least it's not 39 years. If it turns out I need to check more than 8m, I'll probably start hunting for a c++ (and gpu) solution.

264  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 09:10:19 AM

Hi Tubby,

Your progress alert is working how I'd expect, however your code doesn't seem to be actually checking each address against the target. Once the target address is found, it should stop processing and show what phrase generated that address.

I tried your code with the following phrase:

abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuv

The real bitaddress.org says the address for that is 1KVGuANp3HyH4m6xQYhUV9EWhq6tUVypAG

So, in your html, I input:

a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
abcdefghijklmnopqrstuvwxyz
1KVGuANp3HyH4m6xQYhUV9EWhq6tUVypAG

There are 26 combinations in the above, but your code tries all 26 of them with no 'success', whereas it should have found success on the 23rd 22nd attempt.

My originally supplied code in the OP does properly check the target address and stop processing at that point, so this is functionality that you have broken or removed in your version. If you can put that functionality back in, the bounty would be yours.

Thanks very much.
265  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 09:01:33 AM

Hi schalk,

The only thing yours is doing for me, is posting a javascript alert() saying 'done', at the end of it's run. It is not updating me on the progress of how many have been checked as they're being checked. Did you take a look at how the 'bulk wallet' generate tab works, as suggested in the OP?

I will now take a look at tubbyjr's solution.

Thanks.
266  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 08:53:59 AM
http://pastebin.com/P2ghHZrg# full solution

Please tip 18xavJxp7Wxs3vjQvLAsfpTyt9RDBin4RB if you are satisfied with the solution

EDIT: Sorry just read your previous post about it needing to have the ability to do 16million combinations. I'm unsure if my solution is capable of that.

I think you'd be better off with a desktop application solution as opposed to a javascript one if you're planning on generating upto 16 million bitcoin addresses.

Why would it be incapable of a particular number? The main point is that I should be able to see it's progress without the browser hanging.

If I have no success with 16m, I may even have to go back and try doing a 64m or 128m run... depending on how things go.

I'll take a look at your code now anyway, thank you so much for your efforts.
267  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 08:32:58 AM
You never explicitly asked for code, just "help" Tongue

Quote
What I need is for this whole thing to be modified

I do appreciate your input Kieran, PM me your address for a tip.
268  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 08:21:47 AM
I think the main issue is that you are using iteration instead of recursion. If I have time I'll post up a sample that'll help you fix it.

Thank you for your reply schalk and KieranJones1.

Yes, the above was a quick and dirty copy/paste job. I'm familiar with recursion but just feel like paying someone else to do this at the moment rather than spend time on it. As the issue involves my own personal money, I feel too emotionally involved to want to code this myself right now.

I've tried 2048 combinations with no luck, but need a more solid solution that will help me test about 8 or 16m.

Again, anyone able to provide me with a complete solution (rather than just coding help) will be well rewarded.
269  Bitcoin / Project Development / Re: [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue on: November 29, 2013, 07:40:48 AM
Your link isn't much help as it's thousands of lines of code (why don't you just paste your relevant function rather than the whole of the bitaddress.org webpage that presumably includes your code "somewhere" inside) - but basically you will want to use a timer function for your looping.


Good idea, although I'm so embarrassed by my lack of array usage Smiley

OP updated.

As far as timer usage goes, you're very likely correct that it needs some kind of setTimeout(), however I can't get my own head around how to do it yet. Willing to pay some Javascript guru for the help.
270  Other / Beginners & Help / Re: will the bitcoin reach $1000 one day...? on: November 29, 2013, 07:34:54 AM
there are so many cryptocurrencies that i don't even know where to begin... i already missed the train on LTC since i had to wait 10 days for my coinbase transaction to go through.

I've never thought NVC was anything other than pure whale feces, however I have noticed that it seems to like catching up to LTC after some delay. Going by this I decided to take a punt and buy a few for $24 each, reasoning that it might again try to catch LTC ($40).

After that, I'll flush them.
271  Bitcoin / Project Development / [Bounty - 0.5 BTC ($500)] Javascript / Password Recovery issue (CLAIMED) on: November 29, 2013, 07:22:47 AM
Update 2013-11-30: Bounty claimed. Thanks everyone.


Another day, another lost password.

The code I've pasted below is my (very crude) attempt at modifying bitaddress.org (v 2.4) to help me recover a password in a particular way.

In my particular case, I know the exact length of my password, and pretty much know what every letter is, however I'm stuck on the case of some of the letters.

Example: I don't know if my password is appLe or aPple or ApplE.

In this case, there are 2^X possible combinations, where X is the number of characters whose case I'm unsure of.

If you save the below code as .html and check out the brainwallet tab, you'll see I've modified this page to take each character as a separate input.

Example:

a
p
p
l
e


I've set it up so that for each character, I can type all the different possible combinations for that character, and then the script will check all the possible combinations of the password.

Example, I input:

a
pP
pP
l
e

And it will check:

apple
apPle
aPple
aPPle

What it's checking against, is the 'target' address. I paste in that target address input box the bitcoin address that I'm trying to find the key for. When the script finds a match, it will output the passphrase that resulted in the address, and output the private key for it too.

Now the part I'm stuck on, and what the bounty is for:

Any more than about 20 combinations makes my browser hang, because of the horrible way I've done all this in nested while loops. What I need is for this whole thing to be modified so that the browser doesn't hang, and constantly outputs where it's up to.

Example:
Checking combination 75 out of 8192

I'd like it to kind of act like how the 'bulk wallet' generator tab works, when you generate a huge amount of addresses (say 1000). You can see it working, and doesn't hang the browser.

Code:
http://pastebin.com/ijxcd4qk
(Sorry it was too big to paste here directly)


Edit: Here are the 2 parts I've modified:

My modified 'brainarea' div:
Code:
<div id="brainarea" class="walletarea">
<div id="braincommands" class="commands">
<div class="row">
<span id="brainlabelenterpassphrase1" class="label">Char 1: </span><input tabindex="1" type="text" id="passphrasechar_1" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase2" class="label">Char 2: </span><input tabindex="2" type="text" id="passphrasechar_2" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase3" class="label">Char 3: </span><input tabindex="3" type="text" id="passphrasechar_3" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase4" class="label">Char 4: </span><input tabindex="4" type="text" id="passphrasechar_4" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase5" class="label">Char 5: </span><input tabindex="5" type="text" id="passphrasechar_5" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase6" class="label">Char 6: </span><input tabindex="6" type="text" id="passphrasechar_6" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase7" class="label">Char 7: </span><input tabindex="7" type="text" id="passphrasechar_7" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase8" class="label">Char 8: </span><input tabindex="8" type="text" id="passphrasechar_8" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase9" class="label">Char 9: </span><input tabindex="9" type="text" id="passphrasechar_9" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase10" class="label">Char 10: </span><input tabindex="10" type="text" id="passphrasechar_10" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase11" class="label">Char 11: </span><input tabindex="11" type="text" id="passphrasechar_11" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase12" class="label">Char 12: </span><input tabindex="12" type="text" id="passphrasechar_12" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase13" class="label">Char 13: </span><input tabindex="13" type="text" id="passphrasechar_13" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase14" class="label">Char 14: </span><input tabindex="14" type="text" id="passphrasechar_14" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase15" class="label">Char 15: </span><input tabindex="15" type="text" id="passphrasechar_15" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase16" class="label">Char 16: </span><input tabindex="16" type="text" id="passphrasechar_16" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase17" class="label">Char 17: </span><input tabindex="17" type="text" id="passphrasechar_17" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase18" class="label">Char 18: </span><input tabindex="18" type="text" id="passphrasechar_18" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase19" class="label">Char 19: </span><input tabindex="19" type="text" id="passphrasechar_19" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase20" class="label">Char 20: </span><input tabindex="20" type="text" id="passphrasechar_20" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase21" class="label">Char 21: </span><input tabindex="21" type="text" id="passphrasechar_21" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase22" class="label">Char 22: </span><input tabindex="22" type="text" id="passphrasechar_22" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase23" class="label">Char 23: </span><input tabindex="23" type="text" id="passphrasechar_23" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase24" class="label">Char 24: </span><input tabindex="24" type="text" id="passphrasechar_24" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase25" class="label">Char 25: </span><input tabindex="25" type="text" id="passphrasechar_25" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase26" class="label">Char 26: </span><input tabindex="26" type="text" id="passphrasechar_26" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase27" class="label">Char 27: </span><input tabindex="27" type="text" id="passphrasechar_27" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase28" class="label">Char 28: </span><input tabindex="28" type="text" id="passphrasechar_28" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase29" class="label">Char 29: </span><input tabindex="29" type="text" id="passphrasechar_29" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase30" class="label">Char 30: </span><input tabindex="30" type="text" id="passphrasechar_30" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase31" class="label">Char 31: </span><input tabindex="31" type="text" id="passphrasechar_31" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase32" class="label">Char 32: </span><input tabindex="32" type="text" id="passphrasechar_32" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase33" class="label">Char 33: </span><input tabindex="33" type="text" id="passphrasechar_33" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase34" class="label">Char 34: </span><input tabindex="34" type="text" id="passphrasechar_34" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase35" class="label">Char 35: </span><input tabindex="35" type="text" id="passphrasechar_35" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase36" class="label">Char 36: </span><input tabindex="36" type="text" id="passphrasechar_36" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase37" class="label">Char 37: </span><input tabindex="37" type="text" id="passphrasechar_37" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase38" class="label">Char 38: </span><input tabindex="38" type="text" id="passphrasechar_38" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase39" class="label">Char 39: </span><input tabindex="39" type="text" id="passphrasechar_39" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase40" class="label">Char 40: </span><input tabindex="40" type="text" id="passphrasechar_40" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase41" class="label">Char 41: </span><input tabindex="41" type="text" id="passphrasechar_41" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase42" class="label">Char 42: </span><input tabindex="42" type="text" id="passphrasechar_42" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase43" class="label">Char 43: </span><input tabindex="43" type="text" id="passphrasechar_43" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase44" class="label">Char 44: </span><input tabindex="44" type="text" id="passphrasechar_44" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase45" class="label">Char 45: </span><input tabindex="45" type="text" id="passphrasechar_45" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase46" class="label">Char 46: </span><input tabindex="46" type="text" id="passphrasechar_46" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase47" class="label">Char 47: </span><input tabindex="47" type="text" id="passphrasechar_47" value="" onfocus="this.select();"/><br/>
<span id="brainlabelenterpassphrase48" class="label">Char 48: </span><input tabindex="48" type="text" id="passphrasechar_48" value="" onfocus="this.select();"/><br/>
</div>
<div class="row extra">
<span class="label" id="brainlabelconfirm">Target Address: </span>
<input tabindex="54" type="text" id="targetaddress" value="" onfocus="this.select();" />
<span><input tabindex="55" type="button" id="brainview" value="View" onclick="ninja.wallets.brainwallet.view();" /></span>
</div>
</div>
<div class="body">
<span class="label" id="bulklabelcsv">Comma Separated Values:</span> <span class="format" id="bulklabelformat">Index,Address,Private Key (WIF)</span>
<textarea rows="20" cols="88" id="bulktextarea2"></textarea>
</div>                
<div id="brainkeyarea" class="keyarea">
<div class="public">
<div id="brainqrcodepublic" class="qrcode_public"></div>
<div class="pubaddress">
<span class="label" id="brainlabelbitcoinaddress">Bitcoin Address:</span>
<span class="output" id="brainbtcaddress"></span>
</div>
</div>
<div class="private">
<div id="brainqrcodeprivate" class="qrcode_private"></div>
<div class="privwif">
<span class="label" id="brainlabelprivatekey">Private Key (Wallet Import Format):</span>
<span class="output" id="brainbtcprivwif"></span>
</div>
</div>
</div>
</div>


My modified 'brainwallet' function:
Code:
<script type="text/javascript">
ninja.wallets.brainwallet = {
open: function () {
document.getElementById("brainarea").style.display = "block";
document.getElementById("passphrasechar_1").focus();
},

close: function () {
document.getElementById("brainarea").style.display = "none";
},

view: function () {
var passphrasechar_1 = document.getElementById("passphrasechar_1").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_2 = document.getElementById("passphrasechar_2").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_3 = document.getElementById("passphrasechar_3").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_4 = document.getElementById("passphrasechar_4").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_5 = document.getElementById("passphrasechar_5").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_6 = document.getElementById("passphrasechar_6").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_7 = document.getElementById("passphrasechar_7").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_8 = document.getElementById("passphrasechar_8").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_9 = document.getElementById("passphrasechar_9").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_10 = document.getElementById("passphrasechar_10").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_11 = document.getElementById("passphrasechar_11").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_12 = document.getElementById("passphrasechar_12").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_13 = document.getElementById("passphrasechar_13").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_14 = document.getElementById("passphrasechar_14").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_15 = document.getElementById("passphrasechar_15").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_16 = document.getElementById("passphrasechar_16").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_17 = document.getElementById("passphrasechar_17").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_18 = document.getElementById("passphrasechar_18").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_19 = document.getElementById("passphrasechar_19").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_20 = document.getElementById("passphrasechar_20").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_21 = document.getElementById("passphrasechar_21").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_22 = document.getElementById("passphrasechar_22").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_23 = document.getElementById("passphrasechar_23").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_24 = document.getElementById("passphrasechar_24").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_25 = document.getElementById("passphrasechar_25").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_26 = document.getElementById("passphrasechar_26").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_27 = document.getElementById("passphrasechar_27").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_28 = document.getElementById("passphrasechar_28").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_29 = document.getElementById("passphrasechar_29").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_30 = document.getElementById("passphrasechar_30").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_31 = document.getElementById("passphrasechar_31").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_32 = document.getElementById("passphrasechar_32").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_33 = document.getElementById("passphrasechar_33").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_34 = document.getElementById("passphrasechar_34").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_35 = document.getElementById("passphrasechar_35").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_36 = document.getElementById("passphrasechar_36").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_37 = document.getElementById("passphrasechar_37").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_38 = document.getElementById("passphrasechar_38").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_39 = document.getElementById("passphrasechar_39").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_40 = document.getElementById("passphrasechar_40").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_41 = document.getElementById("passphrasechar_41").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_42 = document.getElementById("passphrasechar_42").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_43 = document.getElementById("passphrasechar_43").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_44 = document.getElementById("passphrasechar_44").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_45 = document.getElementById("passphrasechar_45").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_46 = document.getElementById("passphrasechar_46").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_47 = document.getElementById("passphrasechar_47").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var passphrasechar_48 = document.getElementById("passphrasechar_48").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
var target = document.getElementById("targetaddress").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space
                
                var checkphrase = "";
//     var combos = [];
                var bytes;
                var btcKey;
                var bitcoinAddress;                
                var attempts = 0;
                
                var len_1 = passphrasechar_1.length;
                var len_2 = passphrasechar_2.length;
                var len_3 = passphrasechar_3.length;
                var len_4 = passphrasechar_4.length;
                var len_5 = passphrasechar_5.length;
                var len_6 = passphrasechar_6.length;
                var len_7 = passphrasechar_7.length;
                var len_8 = passphrasechar_8.length;
                var len_9 = passphrasechar_9.length;
                var len_10 = passphrasechar_10.length;
                var len_11 = passphrasechar_11.length;
                var len_12 = passphrasechar_12.length;
                var len_13 = passphrasechar_13.length;
                var len_14 = passphrasechar_14.length;
                var len_15 = passphrasechar_15.length;
                var len_16 = passphrasechar_16.length;
                var len_17 = passphrasechar_17.length;
                var len_18 = passphrasechar_18.length;
                var len_19 = passphrasechar_19.length;
                var len_20 = passphrasechar_20.length;
                var len_21 = passphrasechar_21.length;
                var len_22 = passphrasechar_22.length;
                var len_23 = passphrasechar_23.length;
                var len_24 = passphrasechar_24.length;
                var len_25 = passphrasechar_25.length;
                var len_26 = passphrasechar_26.length;
                var len_27 = passphrasechar_27.length;
                var len_28 = passphrasechar_28.length;
                var len_29 = passphrasechar_29.length;
                var len_30 = passphrasechar_30.length;
                var len_31 = passphrasechar_31.length;
                var len_32 = passphrasechar_32.length;
                var len_33 = passphrasechar_33.length;
                var len_34 = passphrasechar_34.length;
                var len_35 = passphrasechar_35.length;
                var len_36 = passphrasechar_36.length;
                var len_37 = passphrasechar_37.length;
                var len_38 = passphrasechar_38.length;
                var len_39 = passphrasechar_39.length;
                var len_40 = passphrasechar_40.length;
                var len_41 = passphrasechar_41.length;
                var len_42 = passphrasechar_42.length;
                var len_43 = passphrasechar_43.length;
                var len_44 = passphrasechar_44.length;
                var len_45 = passphrasechar_45.length;
                var len_46 = passphrasechar_46.length;
                var len_47 = passphrasechar_47.length;
                var len_48 = passphrasechar_48.length;
                    
                var totalcombinations =
                    len_1*len_2*len_3*len_4*len_5*len_6*len_7*len_8*len_9*len_10*
                    len_11*len_12*len_13*len_14*len_15*len_16*len_17*len_18*len_19*len_20*
                    len_21*len_22*len_23*len_24*len_25*len_26*len_27*len_28*len_29*len_30*
                    len_31*len_32*len_33*len_34*len_35*len_36*len_37*len_38*len_39*len_40*
                    len_41*len_42*len_43*len_44*len_45*len_46*len_47*len_48  
                    ;
                    
                //var attemptedpercent = 0;
                
                var i_1 = 0; while ((i_1 < len_1) && (bitcoinAddress != target)) {
                var i_2 = 0; while ((i_2 < len_2) && (bitcoinAddress != target)) {
                var i_3 = 0; while ((i_3 < len_3) && (bitcoinAddress != target)) {
                var i_4 = 0; while ((i_4 < len_4) && (bitcoinAddress != target)) {
                var i_5 = 0; while ((i_5 < len_5) && (bitcoinAddress != target)) {
                var i_6 = 0; while ((i_6 < len_6) && (bitcoinAddress != target)) {
                var i_7 = 0; while ((i_7 < len_7) && (bitcoinAddress != target)) {
                var i_8 = 0; while ((i_8 < len_8) && (bitcoinAddress != target)) {
                var i_9 = 0; while ((i_9 < len_9) && (bitcoinAddress != target)) {
                var i_10 = 0; while ((i_10 < len_10) && (bitcoinAddress != target)) {
                var i_11 = 0; while ((i_11 < len_11) && (bitcoinAddress != target)) {
                var i_12 = 0; while ((i_12 < len_12) && (bitcoinAddress != target)) {
                var i_13 = 0; while ((i_13 < len_13) && (bitcoinAddress != target)) {
                var i_14 = 0; while ((i_14 < len_14) && (bitcoinAddress != target)) {
                var i_15 = 0; while ((i_15 < len_15) && (bitcoinAddress != target)) {
                var i_16 = 0; while ((i_16 < len_16) && (bitcoinAddress != target)) {
                var i_17 = 0; while ((i_17 < len_17) && (bitcoinAddress != target)) {
                var i_18 = 0; while ((i_18 < len_18) && (bitcoinAddress != target)) {
                var i_19 = 0; while ((i_19 < len_19) && (bitcoinAddress != target)) {
                var i_20 = 0; while ((i_20 < len_20) && (bitcoinAddress != target)) {
                var i_21 = 0; while ((i_21 < len_21) && (bitcoinAddress != target)) {
                var i_22 = 0; while ((i_22 < len_22) && (bitcoinAddress != target)) {
                var i_23 = 0; while ((i_23 < len_23) && (bitcoinAddress != target)) {
                var i_24 = 0; while ((i_24 < len_24) && (bitcoinAddress != target)) {
                var i_25 = 0; while ((i_25 < len_25) && (bitcoinAddress != target)) {
                var i_26 = 0; while ((i_26 < len_26) && (bitcoinAddress != target)) {
                var i_27 = 0; while ((i_27 < len_27) && (bitcoinAddress != target)) {
                var i_28 = 0; while ((i_28 < len_28) && (bitcoinAddress != target)) {
                var i_29 = 0; while ((i_29 < len_29) && (bitcoinAddress != target)) {
                var i_30 = 0; while ((i_30 < len_30) && (bitcoinAddress != target)) {
                var i_31 = 0; while ((i_31 < len_31) && (bitcoinAddress != target)) {
                var i_32 = 0; while ((i_32 < len_32) && (bitcoinAddress != target)) {
                var i_33 = 0; while ((i_33 < len_33) && (bitcoinAddress != target)) {
                var i_34 = 0; while ((i_34 < len_34) && (bitcoinAddress != target)) {
                var i_35 = 0; while ((i_35 < len_35) && (bitcoinAddress != target)) {
                var i_36 = 0; while ((i_36 < len_36) && (bitcoinAddress != target)) {
                var i_37 = 0; while ((i_37 < len_37) && (bitcoinAddress != target)) {
                var i_38 = 0; while ((i_38 < len_38) && (bitcoinAddress != target)) {
                var i_39 = 0; while ((i_39 < len_39) && (bitcoinAddress != target)) {
                var i_40 = 0; while ((i_40 < len_40) && (bitcoinAddress != target)) {
                var i_41 = 0; while ((i_41 < len_41) && (bitcoinAddress != target)) {
                var i_42 = 0; while ((i_42 < len_42) && (bitcoinAddress != target)) {
                var i_43 = 0; while ((i_43 < len_43) && (bitcoinAddress != target)) {
                var i_44 = 0; while ((i_44 < len_44) && (bitcoinAddress != target)) {
                var i_45 = 0; while ((i_45 < len_45) && (bitcoinAddress != target)) {
                var i_46 = 0; while ((i_46 < len_46) && (bitcoinAddress != target)) {
                var i_47 = 0; while ((i_47 < len_47) && (bitcoinAddress != target)) {
                var i_48 = 0; while ((i_48 < len_48) && (bitcoinAddress != target)) {
                    checkphrase =
                        passphrasechar_1[i_1] +
                        passphrasechar_2[i_2] +
                        passphrasechar_3[i_3] +
                        passphrasechar_4[i_4] +
                        passphrasechar_5[i_5] +
                        passphrasechar_6[i_6] +
                        passphrasechar_7[i_7] +
                        passphrasechar_8[i_8] +
                        passphrasechar_9[i_9] +
                        passphrasechar_10[i_10] +
                        passphrasechar_11[i_11] +
                        passphrasechar_12[i_12] +
                        passphrasechar_13[i_13] +
                        passphrasechar_14[i_14] +
                        passphrasechar_15[i_15] +
                        passphrasechar_16[i_16] +
                        passphrasechar_17[i_17] +
                        passphrasechar_18[i_18] +
                        passphrasechar_19[i_19] +
                        passphrasechar_20[i_20] +
                        passphrasechar_21[i_21] +
                        passphrasechar_22[i_22] +
                        passphrasechar_23[i_23] +
                        passphrasechar_24[i_24] +
                        passphrasechar_25[i_25] +
                        passphrasechar_26[i_26] +
                        passphrasechar_27[i_27] +
                        passphrasechar_28[i_28] +
                        passphrasechar_29[i_29] +
                        passphrasechar_30[i_30] +
                        passphrasechar_31[i_31] +
                        passphrasechar_32[i_32] +
                        passphrasechar_33[i_33] +
                        passphrasechar_34[i_34] +
                        passphrasechar_35[i_35] +
                        passphrasechar_36[i_36] +
                        passphrasechar_37[i_37] +
                        passphrasechar_38[i_38] +
                        passphrasechar_39[i_39] +
                        passphrasechar_40[i_40] +
                        passphrasechar_41[i_41] +
                        passphrasechar_42[i_42] +
                        passphrasechar_43[i_43] +
                        passphrasechar_44[i_44] +
                        passphrasechar_45[i_45] +
                        passphrasechar_46[i_46] +
                        passphrasechar_47[i_47] +
                        passphrasechar_48[i_48]
                    ;
                    
                    bytes = Crypto.SHA256(checkphrase, { asBytes: true });
                    btcKey = new Bitcoin.ECKey(bytes);
                    bitcoinAddress = btcKey.getBitcoinAddress();
                    
//combos.push(checkphrase + ", " + bitcoinAddress);
                    attempts++;
                    
                    //attemptedpercent = attempts / totalcombinations * 100;
                    document.getElementById("bulktextarea2").value = "Combinations tried: " + attempts + " out of " + totalcombinations; // + " (" + attemptedpercent.toFixed(2) + "%)";
                    
                    
                    i_48++;}
                    i_47++;}
                    i_46++;}
                    i_45++;}                
                    i_44++;}
                    i_43++;}
                    i_42++;}
                    i_41++;}                
                    i_40++;}
                    i_39++;}                
                    i_38++;}
                    i_37++;}
                    i_36++;}
                    i_35++;}                
                    i_34++;}
                    i_33++;}
                    i_32++;}
                    i_31++;}                
                    i_30++;}
                    i_29++;}                
                    i_28++;}
                    i_27++;}
                    i_26++;}
                    i_25++;}                
                    i_24++;}
                    i_23++;}
                    i_22++;}
                    i_21++;}                
                    i_20++;}
                    i_19++;}                
                    i_18++;}
                    i_17++;}
                    i_16++;}
                    i_15++;}                
                    i_14++;}
                    i_13++;}
                    i_12++;}
                    i_11++;}                
                    i_10++;}
                    i_9++;}                
                    i_8++;}
                    i_7++;}
                    i_6++;}
                    i_5++;}                
                    i_4++;}
                    i_3++;}
                    i_2++;}
                    i_1++;
                }                

                if (bitcoinAddress == target)
                {
                    var privWif = btcKey.getBitcoinWalletImportFormat();
                    document.getElementById("brainbtcaddress").innerHTML = bitcoinAddress;
                    document.getElementById("brainbtcprivwif").innerHTML = privWif;
                    ninja.qrCode.showQrCode({
                        "brainqrcodepublic": bitcoinAddress,
                        "brainqrcodeprivate": privWif
                    });
                    document.getElementById("brainkeyarea").style.visibility = "visible";
                }

},

clear: function () {
document.getElementById("brainkeyarea").style.visibility = "hidden";
},

showToggle: function (element) {
if (element.checked) {
document.getElementById("brainpassphrase").setAttribute("type", "text");
document.getElementById("brainpassphraseconfirm").style.visibility = "hidden";
document.getElementById("brainlabelconfirm").style.visibility = "hidden";
}
else {
document.getElementById("brainpassphrase").setAttribute("type", "password");
document.getElementById("brainpassphraseconfirm").style.visibility = "visible";
document.getElementById("brainlabelconfirm").style.visibility = "visible";
}
}
};
</script>
272  Alternate cryptocurrencies / Service Discussion (Altcoins) / Re: [LTC] List of Litecoin Faucets, Lotteries, Gaming Sites, Free Litecoin on: November 29, 2013, 06:51:43 AM
Wow Litecoin hit a high of 48.4799 $USD on BTC-e today!  Shocked

Consequently, I decided to drop all the bet amounts on my games (including litecoinkamikaze.com) by 10x.

So you can play it now for as little as 0.01 LTC.

Hopefully the next Litecoin client release will also see the default fee drop again.
273  Other / Beginners & Help / Re: will the bitcoin reach $1000 one day...? on: November 29, 2013, 06:48:28 AM
After hearing about Korea's plan to fund their own exchange

Citation please? I haven't logged in for a while.
274  Economy / Digital goods / Re: Start your own gambling site! - CoinWheel 1.0 script [1.99 BTC] on: November 25, 2013, 01:31:29 PM
this script sucks and is very badly coded, buyers be careful!

did you buy one and You speak out of experience? thanks

Yes, if you attempted to figure it out on your own you would've noticed he is the one running the ltchweel.com scam

Thanks for promo.  Wink

Moderate, we've started your own troll thread but I missed you too my love!  Kiss
(Btw moderate haven't bought our script so he can't tell you anything accurate)


Edit:
1life = bitcoinwheel = bluemystic    - operate ltcwheel.com where he scammed his users.
He also doesn't want rivals but doing it this way is kind of pitiable.


For the record, so I don't get mixed up with any other owners/developers, I own the following domains:

coinwheel.com - Not in use
http://bitcoinwheel.com - Up and running
litecoinwheel.com - Not in use yet


Thanks for post!

Have you bought bitcoinwheel domain from bitcoinwheel user?

No, I have had the .com for years. I think that other user has some other TLD.

275  Economy / Digital goods / Re: Start your own gambling site! - CoinWheel 1.0 script [1.99 BTC] on: November 25, 2013, 03:39:05 AM
this script sucks and is very badly coded, buyers be careful!

did you buy one and You speak out of experience? thanks

Yes, if you attempted to figure it out on your own you would've noticed he is the one running the ltchweel.com scam

Thanks for promo.  Wink

Moderate, we've started your own troll thread but I missed you too my love!  Kiss
(Btw moderate haven't bought our script so he can't tell you anything accurate)


Edit:
1life = bitcoinwheel = bluemystic    - operate ltcwheel.com where he scammed his users.
He also doesn't want rivals but doing it this way is kind of pitiable.


For the record, so I don't get mixed up with any other owners/developers, I own the following domains:

coinwheel.com - Not in use
http://bitcoinwheel.com - Up and running
litecoinwheel.com - Not in use yet
276  Other / Beginners & Help / Re: will the bitcoin reach $1000 one day...? on: November 17, 2013, 03:47:59 PM
Bitcoin may hit $500 within 10 years. But $1000 is impossible.
You're clearly an economist Roll Eyes

I'm not as defiant as Lee, but I'm sure BTC will hit $1000 within a year or two.
277  Economy / Digital goods / Re: Start your own gambling site! - CoinWheel 1.0 script [1.99 BTC] on: November 17, 2013, 03:40:21 PM
Well, my copy is finally online after modifying this to use blockchain.info:

http://bitcoinwheel.com

Just now I'm in the process of customizing the look and feel and creating some new features.

Thanks imrer, the code is far from perfect (and no OOP framework), but it does provide a good starting point for further modification.
278  Economy / Securities / Re: New dice game on: November 17, 2013, 04:23:55 AM
What will the profit model be, yakuza?

1. Get investors
2. Delete website
3. Profit

279  Bitcoin / Bitcoin Discussion / Re: Mike Hearn, Foundation's Law & Policy Chair, is pushing blacklists right now on: November 17, 2013, 04:01:10 AM
Every time someone asks "Why do we need [altcoin] when we have bitcoin?" I'm reminded of the disturbing bitcoin-related proposals like blacklisting. If bitcoin goes down that road, and [altcoin] doesn't, I can see a lot more people making the switch.
280  Economy / Speculation / Re: Just passed all time high again: $478.49 on: November 17, 2013, 03:50:50 AM
Apparently its always that time.

Much to the chagrin of all my "expert" financial friends, who are bewildered and confused.

Those experts will still be standing on the sidelines at $4750.
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 »
Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!