Coder Social home page Coder Social logo

isaacdelly / plutus Goto Github PK

View Code? Open in Web Editor NEW
1.1K 91.0 520.0 2.58 GB

An automated bitcoin wallet collider that brute forces random wallet addresses

Python 100.00%
bitcoin btc wallet-address wallet address cracker crack cracking stealer stealing brute-force bruteforce brute-force-attacks bruteforcing brute bruteforce-attacks plutus multiprocessing python collider

plutus's Issues

OSError

Traceback (most recent call last):
  File "C:\Users\username\Desktop\Plutus-master\plutus.py", line 116, in <module>
    multiprocessing.Process(target = main, args = (database, )).start()
  File "C:\python3\lib\multiprocessing\process.py", line 112, in start
    self._popen = self._Popen(self)
  File "C:\python3\lib\multiprocessing\context.py", line 223, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)
  File "C:\python3\lib\multiprocessing\context.py", line 322, in _Popen
    return Popen(process_obj)
  File "C:\python3\lib\multiprocessing\popen_spawn_win32.py", line 65, in __init__
    reduction.dump(process_obj, to_child)
  File "C:\python3\lib\multiprocessing\reduction.py", line 60, in dump
    ForkingPickler(file, protocol).dump(obj)
OSError: [Errno 22] Invalid argument

In order to get it working i had to replace:

 for cpu in range(multiprocessing.cpu_count()):
        multiprocessing.Process(target = main, args = (database, )).start()

with:

with multiprocessing.Pool(multiprocessing.cpu_count()) as pool: 
        pool.map(main(database), range(multiprocessing.cpu_count() * 2))

ref: #80

Increment private keys by 1 instead of random generation

a = 105792089237316195423570985008687907852837564279074904382605163141518161494337
while a < 115792089237316195423570985008687907852837564279074904382605163141518161494337 :
a =gmpy2.next_prime(a)+1 or try a=a+1

print(a)
how now to convert a to hex to use it in your program

Installing Requirements.txt

I seem to have an issue with installing requirements. According to Git Bash, the commands install -r (the -r part) does not exist, so how would I move past this and/or how would I be able to run Plutus?

error

root@HomelyStingy-VM:~/plutus# python plutus.py
File "plutus.py", line 103
print('reading database: ' + str(c) + '/' + str(count), end='\r')
^
SyntaxError: invalid syntax

Error starting plutus

teo@debian:/plutus$ python plutus.py
File "plutus.py", line 104
print('\rreading database: ' + str(c+1) + '/' + str(count), end='')
^
SyntaxError: invalid syntax
teo@debian:
/plutus$

or

teo@debian:/plutus$ python3 plutus.py
File "plutus.py", line 113
pool.map(main(database), range(multiprocessing.cpu_count() * 2))
^
IndentationError: expected an indented block
teo@debian:
/plutus$

How to make a .pickle

how to make a .pickle from a text file(where are the addresses on each line). Write more in /database/README.md

OpenCL?

Is it possible to use pyopencl with this?

Cuda Performance

Hello.

Why you don`t use cuda to perform the Attacks.
With cuda you can make a lot of more per second.

compressed addresses

Awesome update, any thoughts on if you will ever make it where it will take private key, check the uncompressed addy AND the compressed one? If not, it's okay, I did it for an older version of yours but went with from bitcoin import * and the whole thing was alot slower.

MemoryError

I got this message

File "c:\Users\Admin\Desktop\Plutus-master\Plutus-master\plutus.py", line 110, in
else: database[3] = database[3] | pickle.load(file)
MemoryError

Запуск в фоне и автоматическая установка

Если будет возможность. Сделайте пожалуйста запуск в фоне.
Запустил putty, запустил скрипт. Закрыл putty а программа работает.

Так же было бы отлично если бы сделали для windows auto install.

i got an issue, how to clear??

python plutus.py
File "plutus.py", line 104
print('\rreading database: ' + str(c+1) + '/' + str(count), end='')
^
SyntaxError: invalid syntax

My Machine CPU usage 100%

i have a problem why running Plutus always CPU usage 100% and my pc stuck . but late version its only CPU usage 20% . anyone help me for this issue .

Description

Every time this program checks the balance of a generated address, it will print the result to the user. If an empty wallet is found, then the wallet address will be printed to the terminal. An example is:

This is not clear, the database dumps contain only positive balances thus address with 0 balance are not "found" instead addresses are randomly generated and checked against the database . One can think that database contain all addresses.

Question about Plutus.txt

Is Plutus.txt stored in the Plutus folder? Also, if there are hits, is the data all written/appended to the single Plutus.txt file ? Thanks!

Memory Intensive

Memory Intensive>>> 98% of 8gb memory is being used, Windows 8.1 Pro Python 3.7.2
Thank you.

Error

12xazaRCB7A3qj9VR5U72MgxHDzmK7uBcq: 0
Exception caught: ('Connection aborted.', error(0, 'Error'))
Process Process-8:
Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(*self._args, **self._kwargs)
File "plutus.py", line 187, in worker
balance = get_balance(data[1])
File "plutus.py", line 102, in get_balance
return btc_balance(balance)
NameError: global name 'balance' is not defined

Anyone ?

More control over brute forcing

Not an issue, but idea: it would be great to have more control over brute forcing process, what I mean is some sort of user-defined regular expression or dictionary capability over the combinations of random Bitcoin private keys.

multiprocessing speed

Possible to show output about actual processing speed?
(eg. cores/threads in use, and overall generated addresses/seconds)

Add a option to update the Database

I really like the idea of your tool. You got my star. ;)
But would it be possible for you to add a function to update the database on our own?

SyntaxError

File "plutus.py"  line 102
print('\rreading database: ' + str(c + 1) + '/' + str(count), end = ' ')
SyntaxError: invalid syntax

How can I fix it ?

Bloom Filter as Database

The "database" is pretty big and needs a lot of memory to be stores in a set.
I think a better option would be to use a serializable bloom filter. It would be easier to share on github and with (almost) the same trade-off of using a set.

Counter

hi, can you add counter

1 15TuRwzjyDBLPtpLuXyTNJt233xrPjwuAg: 0
2 1JHH5NJz6k6nyB2K4rt25DsFzDPLnfdkQm: 0
3 1EUdL41yxK74oxHAkFhePK16K2nfjhbSXr: 0

MemoryError

Whenever I run Plutus, and yes, my RAM is suitable enough to run it, I keep getting stuck on this message:

reading database: 23/23 Traceback (most recent call last):
  File "plutus.py", line 109, in <module>
    else: database[3] = database[3] | pickle.load(file)
MemoryError

What am I doing wrong?

Stuck on "reading database 22/23"

I apologize if this has already been posted but I couldn't find it. I am trying to run and it goes through "reading database" from 1 (or maybe zero) up to 22/23 and never moves past it. I've tried renaming some of the .pickle files, copy and pasting a lower one and renaming, but no matter what it still get stuck on the next-to-last database. Is there a solution for this?

ModuleNotFoundError, Different OS.

I have been trying to use Plutus on my Windows 10 laptop, and I've solved all issues I supposedly have but a new "ModuleNotFoundError" I've come across.
Traceback (most recent call last): File "plutus.py", line 10, in <module> from ellipticcurve.privateKey import PrivateKey ModuleNotFoundError: No module named 'ellipticcurve'
Is there something I'm missing?
I'm using a Windows OS, as stated earlier, and I read the solution to the Ubuntu Linux OS. What would the equivalent commands of sudo and apt-get be in my case so I can get past this?

SyntaxError

print('reading database: ' + str(c) + '/' + str(count), end='\r')
^
SyntaxError: invalid syntax

Unknown Syntax Error

I'm getting the following syntax error after trying to run the repo.

:plutus haus$ python plutus.py
  File "plutus.py", line 104
    print('\rreading database: ' + str(c+1) + '/' + str(count), end='')

ValueError: unsupported pickle protocol: 4

zzz@zzz-laptop ~/Plutus-master $ sudo su root

zzz-laptop Plutus-master # pip install -r requirements.txt
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/init.py:83: RequestsDependencyWarning: Old version of cryptography ([1, 2, 3]) may cause slowdown.
warnings.warn(warning, RequestsDependencyWarning)
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Collecting starkbank-ecdsa==0.1.4 (from -r requirements.txt (line 1))
Downloading https://files.pythonhosted.org/packages/f8/62/0e68d90789724beb36e3413a6d4f12e91c000b2bf45939376652697e3437/starkbank-ecdsa-0.1.4.tar.gz
Building wheels for collected packages: starkbank-ecdsa
Building wheel for starkbank-ecdsa (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/f2/59/03/22bfe598512b95ee51a705546fcb6c9516a6a368e2390e9ace
Successfully built starkbank-ecdsa
Installing collected packages: starkbank-ecdsa
Successfully installed starkbank-ecdsa-0.1.4

zzz-laptop Plutus-master # python plutus.py
reading database: 1/46
Traceback (most recent call last):
File "plutus.py", line 106, in
if c < quarter: database[0] = database[0] | pickle.load(file)
File "/usr/lib/python2.7/pickle.py", line 1384, in load
return Unpickler(file).load()
File "/usr/lib/python2.7/pickle.py", line 864, in load
dispatchkey
File "/usr/lib/python2.7/pickle.py", line 892, in load_proto
raise ValueError, "unsupported pickle protocol: %d" % proto
ValueError: unsupported pickle protocol: 4

zzz-laptop Plutus-master #

I'm blocked from bitaps.com

Can someone look into this for me;

from my workstation;
D:\downloads>ping bitaps.com

Pinging bitaps.com [188.226.138.244] with 32 bytes of data:
Reply from 188.226.138.244: bytes=32 time=122ms TTL=46
Reply from 188.226.138.244: bytes=32 time=122ms TTL=46
Reply from 188.226.138.244: bytes=32 time=122ms TTL=46

from my IBM VM;
root@ibm-dfw-dev1:~/src/Plutus# ping bitaps.com
PING bitaps.com (198.211.122.103) 56(84) bytes of data.

ping 188.226.138.244
PING 188.226.138.244 (188.226.138.244) 56(84) bytes of data.

traceroute to bitapis.com (195.30.107.230), 30 hops max, 60 byte packets
1 169.254.199.98 (169.254.199.98) 1.920 ms 2.063 ms 2.251 ms
2 ae103.ppr02.dal13.networklayer.com (169.48.118.158) 1.027 ms ae103.ppr04.dal13.networklayer.com (169.48.118.162) 1.111 ms ae103.ppr03.dal13.networklayer.com (169.48.118.160) 1.086 ms
3 82.76.30a9.ip4.static.sl-reverse.com (169.48.118.130) 2.537 ms 88.76.30a9.ip4.static.sl-reverse.com (169.48.118.136) 0.984 ms 80.76.30a9.ip4.static.sl-reverse.com (169.48.118.128) 2.502 ms
4 ae17.cbs02.dr01.dal04.networklayer.com (169.45.18.42) 2.414 ms * *
5 * * *
6 * * *
7 ae9.bbr01.tl01.nyc01.networklayer.com (50.97.17.43) 43.828 ms 41.582 ms 44.044 ms
8 ae6-0.nyk10.core-backbone.com (198.32.160.234) 43.771 ms 43.759 ms 45.459 ms
9 ae7-2030.muc10.core-backbone.com (5.56.17.13) 128.881 ms 129.282 ms 127.274 ms
10 Cisco-M-XXXII-Te0-0-1-2-406.space.net (81.95.2.234) 130.182 ms 128.430 ms 129.260 ms
11 Cisco-M-L-Te1-1.Space.Net (185.54.120.9) 126.083 ms 126.076 ms 127.546 ms
12 M42-Po110-v15.Space.Net (195.30.3.74) 130.355 ms 130.400 ms 130.161 ms
13 * * *
14 * * *
15 * * *

was working well until about 2 days ago, VM is 169.62.248.195

Pyshark can you check it out for me ?

Log session tries.

Would be nice to know how many addresses has been checked at end of session.

ModuleNotFoundError

I have the same error previously reported by another user:

VirtualBox:~/plutus$ python3 plutus.py
Traceback (most recent call last):
File "plutus.py", line 10, in <module>
from ellipticcurve.privateKey import PrivateKey
ModuleNotFoundError: No module named 'ellipticcurve'

I have tried with python3 on two different Ubuntu machines. Logged in as root as well with no luck. Not sure what to do, appreciate any insight.

Here is the latest machine I tried on:

Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.1 LTS
Release:	18.04
Codename:	bionic

MemoryError (Line 60) and EOFError

I seem to be having a different memoryerror on line 60. I am also encountering an issue with an EOFError, which I have not seen before. Here's the code.

$ python plutus.py
reading database: 12/12 DONE
Traceback (most recent call last):
  File "plutus.py", line 116, in <module>
    multiprocessing.Process(target = main, args = (database, )).start()
  File "C:\Users\Alex\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\process.py", line 112, in start
    self._popen = self._Popen(self)
  File "C:\Users\Alex\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\context.py", line 223, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)
  File "C:\Users\Alex\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\context.py", line 322, in _Popen
    return Popen(process_obj)
  File "C:\Users\Alex\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\popen_spawn_win32.py", line 65, in __init__
    reduction.dump(process_obj, to_child)
  File "C:\Users\Alex\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\reduction.py", line 60, in dump
    ForkingPickler(file, protocol).dump(obj)
MemoryError
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\Users\Alex\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\spawn.py", line 105, in spawn_main
    exitcode = _main(fd)
  File "C:\Users\Alex\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\spawn.py", line 115, in _main
    self = reduction.pickle.load(from_parent)
EOFError: Ran out of input

What's going on with this?

Stops after Data size display

asamp@DESKTOP-C6SDA8C /cygdrive/c/Users/asamp/Desktop/Plutus
$ python3 plutus.py
Database Size: 19000001

asamp@DESKTOP-C6SDA8C /cygdrive/c/Users/asamp/Desktop/Plutus

Only one core is used at all times

Take a look at the attached video that showcases the problem. Expecting all cores being utilized. Reality: only one or two cores out of 8 have any significant load.
2019-02-26_16-09-43

Not working on OSX

The following lines of code queue.qsize() throw a NotImplementedError due to the fact that sem_getvalue() is not implemented on this platform.

Offline Database

Instead of querying remote blockchain, would it be possible to query a local blockchain? Node operators (like me) have the whole blockchain on disk so (compared to an api call) the access time would drastically decrease ( < 1ms with SSD)

Originally posted by @alaakaazaam in #49 (comment)

Have you ever found anything?
Or is it a waste of time

Memory Error

When trying to start plutus getting error

Traceback (most recent call last):
File "plutus.py", line 110, in
else: database[3] = database[3] | pickle.load(file)
MemoryError

SEGWIT ADDRESS

is it possible for segwit address begins with 3.. etc.

Not an issue but an idea

Hello,
First, bravo for this code.
I was wondering about how to use CUDA to use a 1080Ti instead of the CPU for more speed.
I tried a lot to figure how to use this code with PyCUDA, numba, Theano and the CUDA toolkit but I clearly don't manage to transfer the data into the GPU instead of the CPU. My lack of knowledge I guess.
I don't know if you are able to do this kind of code to use with CUDA but if you can it would be awesome.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.