Git Product home page Git Product logo

pywallet's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pywallet's Issues

ERROR parsing wallet.dat, type setting

This is the command I run:
python pywallet.py --wallet=/home/user/Desktop/wallet.dat --dumpwallet

This is the error I get:
Traceback (most recent call last):
File "pywallet.py", line 2273, in parse_wallet
d['value'] = parse_setting(d['setting'], vds)
File "pywallet.py", line 1489, in parse_setting
return deserialize_CAddress(d)
File "pywallet.py", line 1471, in deserialize_CAddress
return d['ip']+":"+str(d['port'])
File "pywallet.py", line 109, in getitem
return super(Bdict, self).getitem(bytes_to_str(k))
KeyError: u'ip'
ERROR parsing wallet.dat, type setting
key data: setting
addrIncoming
key data in hex: XX (censored)
value data in hex: XX (censored)

3 files are made on my desktop:
__db.001 __db.002 __db.003
None can be opened.

wallet.dat is a Litecoin wallet backup (probably from litecoin-qt) from 2013 with a size of 88kb.
I have python version 2.7.17. My goal is to extract the private keys

error

pywallet.py: error: no such option: -u
Please,help me.

ValueError: Input strings must be a multiple of 16 in length

Hello,
I am a bit noob here, but trying to use pywallet to decrypt wallet.dat.
Password is right, I know, checked in corecrypto.
But when trying to dumpwallet with passphrase:
Traceback (most recent call last):
File "pywallet.py", line 3592, in
read_wallet(json_db, db_env, wallet_name, True, True, "", options.dumpbalanc
e is not None)
File "pywallet.py", line 2555, in read_wallet
secret = crypter.Decrypt(ckey)
File "pywallet.py", line 739, in Decrypt
return AES.new(self.chKey,AES.MODE_CBC,self.chIV).decrypt(data)[0:32]
File "D:\Bitcoin\Python\lib\site-packages\Crypto\Cipher\blockalgo.py", line 29
5, in decrypt
return self._cipher.decrypt(ciphertext)
ValueError: Input strings must be a multiple of 16 in length

I am running the python 2.7 with pycrypto and last pywallet from jackjack.
I know, the problem is probably not with pywallet, but AES, but any advice is very welcome.

p.s. running on windows.

Thanks! Dax

same 2013 walet issue

Traceback (most recent call last):
File "pywallet.py", line 3749, in
recoveredKeys=recov(device, passes, size, 10240, options.recov_outputdir)
File "pywallet.py", line 1801, in recov
if len(ckeys_not_decrypted)==0:
TypeError: object of type 'filter' has no len()

TypeError: object of type 'filter' has no len()

Traceback (most recent call last):
File "c:$ABC$\pywallet.py", line 3785, in
recoveredKeys=recov(device, passes, size, 10240, options.recov_outputdir)
File "c:$ABC$\pywallet.py", line 1847, in recov
if len(ckeys_not_decrypted)==0:
TypeError: object of type 'filter' has no len()

ERROR parsing wallet.dat, type setting

my command= python pywallet.py --dumpwallet --dumpwithbalance --wallet=/root/Desktop/TXT/pywallet/wallet.dat --passphrase=

ERROR showing-
File "pywallet.py", line 1471, in deserialize_CAddress
return d['ip']+":"+str(d['port'])
File "pywallet.py", line 109, in getitem
return super(Bdict, self).getitem(bytes_to_str(k))
KeyError: u'ip'
ERROR parsing wallet.dat, type setting

'bytes' is not JSON serializable bug

Using python3 - i know its experimental,

Traceback (most recent call last):
File "/home/a/pywallet/pywallet.py", line 3936, in
wallet = json.dumps(json_db, sort_keys=True, indent=4)
File "/usr/lib/python3.6/json/init.py", line 238, in dumps
**kw).encode(obj)
File "/usr/lib/python3.6/json/encoder.py", line 201, in encode
chunks = list(chunks)
File "/usr/lib/python3.6/json/encoder.py", line 430, in _iterencode
yield from _iterencode_dict(o, _current_indent_level)
File "/usr/lib/python3.6/json/encoder.py", line 404, in _iterencode_dict
yield from chunks
File "/usr/lib/python3.6/json/encoder.py", line 325, in _iterencode_list
yield from chunks
File "/usr/lib/python3.6/json/encoder.py", line 404, in _iterencode_dict
yield from chunks
File "/usr/lib/python3.6/json/encoder.py", line 437, in _iterencode
o = _default(o)
File "/usr/lib/python3.6/json/encoder.py", line 180, in default
o.class.name)
TypeError: Object of type 'bytes' is not JSON serializable

Any chance it can be debugged?
Thanks!

the wallet is encrypted, but no passphrase was used

I try to find my old bitcoin private key .
But everytime i open the soft, it says that the wallet is encrypted, but no passphrase was used.
I didn't use a password, or if there is a password I don't remember creating one.
How can i recover my btc please?
Thanks in advance.

-balance not works with Python 3.10.0

python pywallet.py --balance="aaa"
AttributeError: module 'urllib' has no attribute 'urlopen'.

Is there a way to install urllib for Python 2.7 in Python3.10?

Crashing with "OverflowError: Python int too large to convert to C long"

Output:

Traceback (most recent call last):
  File "usr/bin/pywallet", line 2260, in parse_wallet
    d['lockTime'] = vds.read_uint64()
  File "usr/bin/pywallet", line 2150, in read_uint64
    def read_uint64(self): return self._read_num('<Q')
  File "usr/bin/pywallet", line 2187, in _read_num
    (i,) = struct.unpack_from(format, self.input, self.read_cursor)
OverflowError: Python int too large to convert to C long
ERROR parsing wallet.dat, type tx
key data: tx
key data in hex: [redacted]
value data in hex: [redacted]

This is being run in a docker containter created with the following docker file:

FROM ubuntu:18.04

RUN apt-get update && apt-get install -y build-essential python-dev python-twisted python-bsddb3 python-ecdsa

ADD https://raw.githubusercontent.com/jackjack-jj/pywallet/master/pywallet.py /usr/bin/pywallet
RUN chmod +x /usr/bin/pywallet

ENTRYPOINT ["/usr/bin/pywallet"]

run with:

docker build -t pywallet .
docker run -it --rm -v $PWD/wallets:/wallets pywallet -w /wallets/wallet.dat

DumpData Issue, Not the right values

Hi,

I have a corrupted LiteCoin wallet.dat file, and I do have the passphrase to the wallet as well, I ran a pywallet dump from the corrupted file, and successfully had a dump with decrypted keys. My address was in the dumpfile but the hexsec conversion doesn't link to the right pubkey nor address via LiteAddress.org. I tried other addresses in the dump list as well but got the right conversion info. What is the issue here? HexSec is valid for all the addresses in the list besides mine. This is command used with pywallet : python pywallet.py --dumpwallet --wallet=walletfile --otherversion=ltc,0x30,0x05,0x36,ltc --passphrase=????? > dump.txt . I used --otherversion 48 as well but got an error. I have also tried --recover option as well, I wanted to compare dumps, but didn't get any decrypted data since the passphrase isn't recognized on the recovered wallet. I have medium knowledge in coding, but is a custom pywallet script necessary in my case? If not I suspect the problem is either from the corrupt file, the version parameters used or the conversion from LiteAddress.org.

Please let me know, Thanks!

Unable to install on bullseye

E: Unable to locate package python-twisted
E: Unable to locate package python-bsddb3

E: Unable to locate package python2-twisted
E: Unable to locate package python2-bsddb3

getting this error message

'ecdsa' package is not installed, pywallet won't be able to sign/verify messages
ERROR:root:Couldn't open wallet.dat/main. Try quitting Bitcoin and running this again.

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.