Pages:
Author

Topic: BitCrack - A tool for brute-forcing private keys - page 67. (Read 73904 times)

member
Activity: 296
Merit: 34
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https://github.com/yoyodapro/BitCrack/releases/tag/v11.2-alpha
What speed did you see with 3070?

Source code available on github, to compile for Windows?

3070 with 45 256 2096 - 1845Mkeys/s

Ive tried to make the same modifications to the VS project files and it wont compile for me.

Also i am not familiar enough with VS to begin with.
what code did you modify? I can create windows if you tell me what you modified...

I changed in the makefile

# CUDA variables
COMPUTE_CAP=75
NVCC=nvcc
NVCCFLAGS=-std=c++11 -gencode=arch=compute_${COMPUTE_CAP},code=\"sm_${COMPUTE_CAP}\" -Xptxas="-v" -Xcompiler "${CXXFLAGS}"
CUDA_HOME=/usr/local/cuda-11.2
CUDA_LIB=${CUDA_HOME}/lib64
CUDA_INCLUDE=${CUDA_HOME}/include
CUDA_MATH=$(CUR_DIR)/cudaMath

# OpenCL variables
OPENCL_LIB=${CUDA_LIB}
OPENCL_INCLUDE=${CUDA_INCLUDE}
OPENCL_VERSION=112

Ive tried modifying the .props to change

Code:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64
[/color]

to

Code:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64
[/color]

Then building the CudaKeyFinder and KeyFinder in VS2019 (Release x64) but it will not work for me, I am most likely doing something wrong.


P.S. When running on linux the most up to date cuda drivers had no problems running on my 2080, 2080ti, and 3070. there is most likely just a problem with the last release and the compute capability with cuBitCrack from brichard19.



correct your line
NVCCFLAGS=-std=c++11 -gencode=arch=compute_${COMPUTE_CAP},code=sm_${COMPUTE_CAP} -Xptxas="-v" -Xcompiler "${CXXFLAGS}"
legendary
Activity: 1526
Merit: 6442
bitcoincleanup.com / bitmixlist.org
good evening to all enthusiasts.
I found many versions and modifications of this project. In addition to the original branch from the respected brichard19, I found a branch with a random search. Should I use it? the better or worse it is.
in the original branch, everything is simple (start + step + step + N step)
random points are generated in the branch. but I don’t understand after the generation, the search proceeds further by random choice or also (random point + step + step + N step)

Are you talking about the points being chosen by an RNG? I am not totally sure how long does the process of generating random numbers takes because I haven't measured it, but I'd say it could take a noticeable percentage of the time it takes to check a private key.

I still feel like pregenerating a bunch of keyspace ranges beforehand and passing those to bitcrack serially is a better approach at randomization than generating a random number 2^X times per second (X is an arbitrary number proportional to the speed of your GPU).

Anyway it would be nice if you linked that version of Bitcrack you're talking about so we can take a look at it's commit history to see what it changed.
newbie
Activity: 26
Merit: 0
good evening to all enthusiasts.
I found many versions and modifications of this project. In addition to the original branch from the respected brichard19, I found a branch with a random search. Should I use it? the better or worse it is.
in the original branch, everything is simple (start + step + step + N step)
random points are generated in the branch. but I don’t understand after the generation, the search proceeds further by random choice or also (random point + step + step + N step)
jr. member
Activity: 49
Merit: 7
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https[Suspicious link removed] is not compatible with the version of Windows you're running. Check your computer's system information and then contact the software publisher.

the code isnt ready yet, its only confirmed working on WSL - Ubuntu 20.14
member
Activity: 250
Merit: 19
the right steps towerds the goal
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https://github.com/yoyodapro/BitCrack/releases/tag/v11.2-alpha

cuBitCrack.exe is not compatible with the version of Windows you're running. Check your computer's system information and then contact the software publisher.
member
Activity: 250
Merit: 19
the right steps towerds the goal
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https://github.com/yoyodapro/BitCrack/releases/tag/v11.2-alpha
What speed did you see with 3070?

Source code available on github, to compile for Windows?

3070 with 45 256 2096 - 1845Mkeys/s

Ive tried to make the same modifications to the VS project files and it wont compile for me.

Also i am not familiar enough with VS to begin with.
what code did you modify? I can create windows if you tell me what you modified...

Excellent work guys.. now waiting for windows version for my 3060TI
legendary
Activity: 1526
Merit: 6442
bitcoincleanup.com / bitmixlist.org
-o or --out for output file?

Also, does anyone know what message is displayed or what happens if a private key is found?

It's activated with either -o or --out.

When it finds a private key it prints "Found key for address XYZ. Written to OUTPUTFILE", then in the output file it writes the address, private key in hex and compressed public key separated by space, all in one line. It looks like if you don't pass one of them, you will not get private keys printed at all.

Ive tried modifying the .props to change

Code:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64
[/color]

to

Code:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64
[/color]

Then building the CudaKeyFinder and KeyFinder in VS2019 (Release x64) but it will not work for me, I am most likely doing something wrong.


P.S. When running on linux the most up to date cuda drivers had no problems running on my 2080, 2080ti, and 3070. there is most likely just a problem with the last release and the compute capability with cuBitCrack from brichard19.

VS doesn't read the Makefiles when it complies the Windows version so the things in the Props file and each .vcxproj are the only things it reads.

Did you check to see if the path to CUDA 11.2 is called C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2? Also paste the errors from the VS build window here, it'll be helpful to know what's going on.

jr. member
Activity: 49
Merit: 7
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https://github.com/yoyodapro/BitCrack/releases/tag/v11.2-alpha
What speed did you see with 3070?

Source code available on github, to compile for Windows?

3070 with 45 256 2096 - 1845Mkeys/s

Ive tried to make the same modifications to the VS project files and it wont compile for me.

Also i am not familiar enough with VS to begin with.
what code did you modify? I can create windows if you tell me what you modified...

I changed in the makefile

# CUDA variables
COMPUTE_CAP=75
NVCC=nvcc
NVCCFLAGS=-std=c++11 -gencode=arch=compute_${COMPUTE_CAP},code=\"sm_${COMPUTE_CAP}\" -Xptxas="-v" -Xcompiler "${CXXFLAGS}"
CUDA_HOME=/usr/local/cuda-11.2
CUDA_LIB=${CUDA_HOME}/lib64
CUDA_INCLUDE=${CUDA_HOME}/include
CUDA_MATH=$(CUR_DIR)/cudaMath

# OpenCL variables
OPENCL_LIB=${CUDA_LIB}
OPENCL_INCLUDE=${CUDA_INCLUDE}
OPENCL_VERSION=112

Ive tried modifying the .props to change

Code:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64
[/color]

to

Code:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64
[/color]

Then building the CudaKeyFinder and KeyFinder in VS2019 (Release x64) but it will not work for me, I am most likely doing something wrong.


P.S. When running on linux the most up to date cuda drivers had no problems running on my 2080, 2080ti, and 3070. there is most likely just a problem with the last release and the compute capability with cuBitCrack from brichard19.

full member
Activity: 1022
Merit: 217
Shooters Shoot...
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https://github.com/yoyodapro/BitCrack/releases/tag/v11.2-alpha
What speed did you see with 3070?

Source code available on github, to compile for Windows?

3070 with 45 256 2096 - 1845Mkeys/s

Ive tried to make the same modifications to the VS project files and it wont compile for me.

Also i am not familiar enough with VS to begin with.
what code did you modify? I can create windows if you tell me what you modified...
jr. member
Activity: 49
Merit: 7
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https://github.com/yoyodapro/BitCrack/releases/tag/v11.2-alpha
What speed did you see with 3070?

Source code available on github, to compile for Windows?

3070 with 45 256 2096 - 1845Mkeys/s

Ive tried to make the same modifications to the VS project files and it wont compile for me.

Also i am not familiar enough with VS to begin with.
full member
Activity: 1022
Merit: 217
Shooters Shoot...
Roll back your graphics driver to 452.06; only way it will work. Or the only way that I and others have got it to work




The same happens with all 30series GPUs
One side note, I had other GPUs on same rig when I rolled back driver. So I didn't get the error. I know it works, I had to roll back for helping with 64 bit pool effort, and then roll forward when using another program. 456 also works.
full member
Activity: 1022
Merit: 217
Shooters Shoot...
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https://github.com/yoyodapro/BitCrack/releases/tag/v11.2-alpha
What speed did you see with 3070?

Source code available on github, to compile for Windows?
jr. member
Activity: 49
Merit: 7
I have compiled cuBitCrack using CUDA 11.2, confirmed working on 2080, 2080ti, and 3070 without the multiplication issue preventing private keys from being found.

Can anyone help me create a windows binary?

https://github.com/yoyodapro/BitCrack/releases/tag/v11.2-alpha
legendary
Activity: 1526
Merit: 6442
bitcoincleanup.com / bitmixlist.org
Roll back your graphics driver to 452.06; only way it will work. Or the only way that I and others have got it to work

[img ]https://i.imgur.com/V0WTWKr.jpg[/img]
[img ]https://i.imgur.com/27KBov7.jpg[/img]

The same happens with all 30series GPUs

Nvidia driver 452.06 doesn't support RTX 30 series, but 456.71 does support RTX 3090 and 3080. Windows 10 64-bit is listed as supported for both of these versions too.

I guess you should revert Nvidia drivers back to the latest version or whichever you were previously running with, now that we know that Bitcrack has a programming error.
member
Activity: 250
Merit: 19
the right steps towerds the goal
Roll back your graphics driver to 452.06; only way it will work. Or the only way that I and others have got it to work




The same happens with all 30series GPUs
legendary
Activity: 1526
Merit: 6442
bitcoincleanup.com / bitmixlist.org
Guys, please tell me with "xxBitCrack" whether it is possible to search for privkeys in one range from a list of several addresses in a file?
For this, what command with parameters do I need to register in the terminal?

It's currently possible to set the private key range by setting the keyspace for all of the addresses at once, not individually. Though that would make for an interesting side project.

You need to pass the --keyspace parameter with one of the following values:

   START:END start at key START, end at key END
   START:+COUNT start at key START and end at key START + COUNT
    :END start at key 1 and end at key END
   :+COUNT start at key 1 and end at key 1 + COUNT

Please note: Keys shorter than 64 characters will have zeroes padded at the beginning according to the documentation. So 1234 becomes 000001234. And keys longer than 64 characters will only use the rightmost 64 characters in the string.
newbie
Activity: 30
Merit: 0
Guys, please tell me with "xxBitCrack" whether it is possible to search for privkeys in one range from a list of several addresses in a file?
For this, what command with parameters do I need to register in the terminal?
legendary
Activity: 1526
Merit: 6442
bitcoincleanup.com / bitmixlist.org
What in/why is the copyBigInt() causing error?  Same error appears in multiple programs written prior to release of RTX 30xx cards.

It's not copyBigInt() itself that's problematic (it's a simple element-wise assignment)  but one of the arrays passed to it which is not aligned. CUDA wants all arrays aligned to 32-but boundaries and one of the arrays that eventually reaches copyBigInt() comes from "xp" and "x" pointer arguments of beginBatchAdd()...these are passed to SubModP() and the result is stored in an 8-element int array that's then passed to MulModP() and from there to copyBigInt().

At first it wasn't clear to me where this error was coming from because the problem disappeared in debug mode, so I could not use the debugger. That's right, if you pass -g -G switches to NVCC, you get a working but extremely slow bitcrack binary.

I tried draconian measures in a attempt to fix this like unrolling the loop, changing the array assignment to memcpy(), qualifying it with __restrict__ and __align__ keywords and I even changed it to a #define statement but the destination and source arrays just don't want to be accessed (since these arrays cannot even be used in the parent function, the problem stems deeper). More bafflingly, assigning a constant to an element in the dest array or making a variable that's initialized to an element from src works but this obviously breaks the elliptic curve stuff.

This is supposed to be performance-critical code so I did not attempt to change the static array to malloc.



For the uninitiated: this is where the bug is: https://github.com/brichard19/BitCrack/blob/master/cudaMath/secp256k1.cuh

CudaMath/secp256k1.cuh, everything in here are inline functions.

We arrive here from CudaKeySearchDevice via beginBatchAdd() and beginBatchAddWithDouble(). Both of these functions call MulModP for point multiplication. Methods like that need to copy to and from temporary arrays. Somehow the arrays being passed are not on an alignment boundary, and I'm honestly not sure what to do. (Of course, rewriting the whole secp256k1 module is also an option but really...? That's like opening a nut with a sledgehammer.)
full member
Activity: 1022
Merit: 217
Shooters Shoot...
Guys I am busy debugging the misaligned address error using someone's GPU. I will post if I find the solution.

EDIT: Everyone please check if this error still appears if you pass the -u command line argument, it only seems to be failing for compressed points.

EDIT 2: pin-pointed the error to beginBatchAdd() and beginBatchAddWithDouble() in secp256k1 CUDA

EDIT 3: copyBigInt() in secp256k1.cu is the culprit
What in/why is the copyBigInt() causing error?  Same error appears in multiple programs written prior to release of RTX 30xx cards.
member
Activity: 250
Merit: 19
the right steps towerds the goal
Guys I am busy debugging the misaligned address error using someone's GPU. I will post if I find the solution.

EDIT: Everyone please check if this error still appears if you pass the -u command line argument, it only seems to be failing for compressed points.

EDIT 2: pin-pointed the error to beginBatchAdd() and beginBatchAddWithDouble() in secp256k1 CUDA

EDIT 3: copyBigInt() in secp256k1.cu is the culprit

Really appreciated it.. all the best.. finally, after a long time, we will be able to see a new update in CuBitCrack.
Pages:
Jump to: