brichard19 / BitCrack

A tool for cracking Bitcoin private keys
MIT License
715 stars 473 forks source link

Critical OpenCL big affecting intel Graphics devices #123

Open brichard19 opened 5 years ago

brichard19 commented 5 years ago

There is a critical OpenCL bug detailed here https://software.intel.com/en-us/forums/opencl/topic/801754

This bug affects the OpenCL version of Bitcrack. It will not find keys on some Intel graphics devices.

I will look into creating a work-around in the code until the issue is resolved.

dem10 commented 5 years ago

Perhaps for the same reason AMD devices do not work correctly?

OSoup commented 5 years ago

I have a laptop with Intel HD Graphics 620 and dedicated AMD Radeon 530. None of them works.

OSoup commented 5 years ago

I have a laptop with Intel HD Graphics 620 and dedicated AMD Radeon 530. None of them works.

0.28 release is working now with AMD Radeon 530. Intel HD Graphics 620 still not working Thanks!

hamnaz commented 5 years ago

current updates 1 feb 2019 fresh install, and compile with cl bitcrack, 1 address at gtx 460 - comp 5.6 mkeys/s with cu bitcrack -comp 44 mkeys/s with oclvanitygen both comp/uncomp 13.80 mkeys/s

brichard19 commented 5 years ago

The latest release (0.29) has a workaround for the Intel multiplication bug. Tested on an Intel UHD 630

OSoup commented 5 years ago

0.29 release is working now on Intel HD Graphics 620. Thanks!

AmadeiX commented 5 years ago

And Intel HD Graphics 520. Thanks!

ayiphelmy commented 5 years ago

how to use multiple gpu? i add command in bat like -d 0 -d 1 not working... the software always use d 1 gpu

brichard19 commented 5 years ago

@ayiphelmy Each instance can only use 1 GPU. To use multiple GPUs you will need to run multiple instances of the program.

tradingbaha001 commented 4 years ago

2020 ==) on intel hd graphics 620 , it stops at ===) loading adresses from ' address .txt ' ? it redirects me to a new command typing task ?

tradingbaha001 commented 4 years ago

@brichard19 2020 ==) on intel hd graphics 620 , it stops at ===) loading adresses from ' address .txt ' ? it redirects me to a new command typing task ? issue bitchard

usergoodgithub commented 3 years ago

in fact, on AMD devices, the not finding error is when the --keyspace parameter is specified.When we do not specify this parameter, the program works fine. As soon as the parameter is indicated, any range, then the result can be skipped. Hope for a quick direction from the developer. Thank you.

kamilkilic93 commented 3 years ago

Hi. I downloaded all files. I typed the key I want to search in the keys section of the main file in the AddrGen folder. There is no activity currently. When I try to open .exe files it instantly shuts down. How should I go about it? What should I do?

kamilkilic93 commented 3 years ago

I tried running the program in Linux. I failed.

./cuBitCrack: Access denied....

./clBitCrack: There is no such file or directory ...

Command not found ...

As a result, I failed and was desperate. I'm waiting for your help.

Linux sürümü, Mint 19.2 Cuda is loaded. OpenCl is loaded.

Nowshad420 commented 3 years ago

May i get a video, please? How to use it. Its very helpful for me. My Intel HD Graphics 5500

focus8877 commented 3 years ago

Hello sir I have an address but looking for the right tools to crack the private key

mirameshs commented 1 year ago

my device is opencl version : 3.0.1.0 device : RX580 8GB I have same problem and can not find the key on some ranges

is there any solution ?

jamiegreen7 commented 11 months ago

20000000000000000:3ffffffffffffffff -c 13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so

shrec commented 2 months ago

i have AMD RX590 when input bitcoin puzzle addresses
1BgGZ9tcN4rm9KBzDn7KprQz87SZ26SAMH 1CUNEBjYrCn2y1SdiUMohaKUi4wpP326Lb 19ZewH8Kk1PDbSNdJ97FP4EiCjTRaZMZQA 1EhqbyUMvvs7BfL8goY6qcPbD6YKfPqb7e 1E6NuFjCi27W5zoXg8TRdcSRq84zJeBW3k 1PitScNLyp2HCygzadCh7FveTnfmpPbfp8 1McVt1vMtCC7yn5b9wgX1833yCcLXzueeC 1M92tSqNmQLYw33fuBvjmeadirh1ysMBxK 1CQFwcjw1dwhtkVWBttNLDtqL7ivBonGPV 1LeBZP5QCwwgXRtmVUvTVrraqPUokyLHqe 1PgQVLmst3Z314JrQn5TNiys8Hc38TcXJu 1DBaumZxUkM4qMQRt2LVWyFJq5kDtSZQot 1Pie8JkxBT6MGPz9Nvi3fsPkr2D8q3GBc1 1ErZWg5cFCe4Vw5BzgfzB74VNLaXEiEkhk 1QCbW9HWnwQWiQqVo5exhAnmfqKRrCRsvW 1BDyrQ6WoF8VN3g9SAS1iKZcPzFfnDVieY 1HduPEXZRdG26SUT5Yk83mLkPyjnZuJ7Bm

founds only 1BgGZ9tcN4rm9KBzDn7KprQz87SZ26SAMH and 1EhqbyUMvvs7BfL8goY6qcPbD6YKfPqb7e all others are skipped. i'm developer but not worked before with opencl and dont know everythin. what i see and don't know it's correct or not this function lods same range keys 256 times in gpu memory void CLKeySearchDevice::generateStartingPoints() { uint64_t totalPoints = (uint64_t)_points; uint64_t totalMemory = totalPoints * 40;

std::vector<secp256k1::uint256> exponents;

initializeBasePoints();

_pointsMemSize = totalPoints * sizeof(unsigned int) * 16 + _points * sizeof(unsigned int) * 8;

Logger::log(LogLevel::Info, "Generating " + util::formatThousands(totalPoints) + " starting points (" + util::format("%.1f", (double)totalMemory / (double)(1024 * 1024)) + "MB)");

// Generate key pairs for k, k+1, k+2 ... k + <total points in parallel - 1>
secp256k1::uint256 privKey = _start;

exponents.push_back(privKey);

for(uint64_t i = 1; i < totalPoints; i++) 
{        
    //privKey = privKey.add(_stride);
    exponents.push_back(privKey);        
}

unsigned int *privateKeys = new unsigned int[8 * totalPoints];

for(int index = 0; index < _points; index++) {
    splatBigInt(privateKeys, index, exponents[index]);
}

// Copy to device
_clContext->copyHostToDevice(privateKeys, _privateKeys, totalPoints * 8 * sizeof(unsigned int));

delete[] privateKeys;

// Show progress in 10% increments

double pct = 10.0; for(int i = 0; i < 256; i++) { _initKeysKernel->set_args(_points, i, _privateKeys, _chain, _xTable, _yTable, _x, _y); _initKeysKernel->call(_blocks, _threads);

    if(((double)(i+1) / 256.0) * 100.0 >= pct) {
        Logger::log(LogLevel::Info, util::format("%.1f%%", pct));
        pct += 10.0;
    }
}

Logger::log(LogLevel::Info, "Done");

} and in loop system always finding 1BgGZ9tcN4rm9KBzDn7KprQz87SZ26SAMH and 1EhqbyUMvvs7BfL8goY6qcPbD6YKfPqb7e infinitly also i was not able to build opencl kernel until i copied functions from other cl files

Elielpsa commented 1 month ago

Does anyone know if this program searches in random or sequential MODE?