Windows:
- Windows 10/11 x64
- Visual Studio 2022 with the Desktop C++ workload
- CUDA Toolkit 12.x and an NVIDIA GPU (sm_75+)
Linux:
- GCC or Clang
- CMake >= 3.18
- CUDA Toolkit 12.x (or ROCm 5.7+ for AMD, with
-DUSE_HIP=ON)
Python 3.8+ is optional; only needed for the conversion and verification scripts in tools/.
cmake -S . -B build -DNO_GUI=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallelOpen an x64 Native Tools Command Prompt for VS in the project root:
build.batOutput: bin\dmrcrack.exe
build_test.bat # builds bin\test_strict_score.exe- C99, no C++ in
.cfiles - CUDA/HIP kernel code in
.cufiles - 4-space indentation,
snake_casefor all identifiers - Platform-specific code goes through
include/platform.h. Don't call Win32 APIs directly outsidesrc/gui.candsrc/main.c - GPU kernel logic and host-side scoring helpers both live in
src/bruteforce.cuso the strict pipeline stays in sync between the two
- Fork and create a feature branch
- Make your changes;
build.bat(Windows) or CMake (Linux) should succeed without new warnings - If you touched scoring logic, run
bin\test_strict_score.exeandtools\verify_decrypt.pyagainst the test data intest/aaaaa/ - Open a PR with a description of what changed and why
Open an issue and include:
- OS and GPU model
- CUDA Toolkit version (
nvcc --version) - Exact error message or unexpected behavior
- Steps to reproduce (anonymized
.binfile if relevant)
By contributing you agree that your work will be licensed under GPL v3.0 (see LICENSE).