Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More gracefully skip passwords that are too long to be checked via OpenCL #276

Open
isieditors opened this issue Nov 6, 2021 · 3 comments
Labels
enhancement New feature or request

Comments

@isieditors
Copy link

whenever i use leaked password lists like rockyou or top2billion, etc on coinomi wallet i receive the following error.

Interrupted after finishing password # 247187000
multiprocessing.pool.RemoteTraceback:
"""
Traceback (most recent call last):
File "C:\Users\mycomputer\AppData\Local\Programs\Python\Python39\lib\multiprocessing\pool.py", line 125, in worker
result = (True, func(*args, **kwds))
File "C:\btcrecover\btcrecover\btcrpass.py", line 7295, in return_verified_password_or_false
return loaded_wallet.return_verified_password_or_false(passwords)
File "C:\btcrecover\btcrecover\btcrpass.py", line 2114, in return_verified_password_or_false
return self._return_verified_password_or_false_opencl(passwords) if (not isinstance(self.opencl_algo,int))
File "C:\btcrecover\btcrecover\btcrpass.py", line 2173, in _return_verified_password_or_false_opencl
clResult = self.opencl_algo.cl_pbkdf2(self.opencl_context_pbkdf2_sha1, passwords, salt_and_iv, iter_count, 32)
File "C:\btcrecover\lib\opencl_brute\opencl.py", line 705, in cl_pbkdf2
result = concat(self.opencl_ctx.run(bufStructs, func, iter(passwordlist), salt))
File "C:\btcrecover\lib\opencl_brute\opencl.py", line 524, in concat
return [obj for lval in ll for obj in lval]
File "C:\btcrecover\lib\opencl_brute\opencl.py", line 524, in
return [obj for lval in ll for obj in lval]
File "C:\btcrecover\lib\opencl_brute\opencl.py", line 225, in run
assert paddedLenFunc(pwLen, hashBlockSize_bits // 8) <= inBufSize_bytes,
AssertionError: password #552, '\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' (length 200) exceeds the input buffer (length 128) when padded
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "C:\btcrecover\btcrecover.py", line 39, in
(password_found, not_found_msg) = btcrpass.main()
File "C:\btcrecover\btcrecover\btcrpass.py", line 7861, in main
for password_found, passwords_tried_last in password_found_iterator:
File "C:\Users\mycomputer\AppData\Local\Programs\Python\Python39\lib\multiprocessing\pool.py", line 870, in next
raise value
AssertionError: password #552, '\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' (length 200) exceeds the input buffer (length 128) when padded

@3rdIteration 3rdIteration changed the title (length 200) exceeds the input buffer (length 128) when padded More gracefully skip passwords that are too long to be checked via OpenCL Nov 6, 2021
@3rdIteration
Copy link
Owner

This is a limitation that basically exists within the OpenCL implementation, but it would be nicer if it just CPU-checked those passwords instead in an automatic way.

@3rdIteration 3rdIteration added the enhancement New feature or request label Nov 6, 2021
@isieditors
Copy link
Author

isieditors commented Nov 7, 2021

thanks for response.
cant we edit file to increase that (length128 )? to something like 250 ??

@3rdIteration
Copy link
Owner

While this is true, it would be better to have it gracefully handle if the password is above the length of what can be handled via OpenCL. (Whatever this length happens to be)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants