and for puzzle # 120-#160 how can I change it to can use with puzzle #160
Okay, but it looks pointless for me. This code is for arbitrary puzzle output number (n): const Int32 n = 120; // Output number of the puzzle tx
Byte[] rnd256 = new Byte[32]; var random = new Random(); random.NextBytes(rnd256); // Get 256-bit random sequence
Int32 nBytes = (n - 1) / 8; Int32 nBits = (n - 1) % 8; Byte mask = (Byte)(0xFF >> (8 - nBits));
for (UInt32 i = 0; i < 32 - nBytes - 1; i++) rnd256[i] = 0; // Zeroing unused bytes rnd256[32 - nBytes - 1] &= mask; // Zeroing unused bits rnd256[32 - nBytes - 1] |= (Byte)(mask + 1); // Most significant bit is always 1.
String rndHex = BitConverter.ToString(rnd256).Replace("-", String.Empty);
Console.WriteLine(rndHex);
Thank you A-Bolt Just hobby do after works or free time (Only during this time interest not yet give up)
|
|
|
Really? ...
Do you have the links to the faster ones? The groundwork was laid a long time ago. https://github.com/Telariust/VanitySearch-bitcrackFaster, with multi gpu support. Take existing code and make the tweaks one wants/needs. Much easier to understand and tweak vs bitcrack, IMO. Pool operator can verify that it is faster as well. It also supports the newer cards, 30xx series. yes, it faster my test VanitySearch is faster I am not sure can compare or not with method search for bitcrack and vanitysearch brichard19 BitCrack ==> 11 MK/s Bitcrack-sp-mod1 ==> 50 MK/s (full memory) Bitcrack-spmod2 ==> 50 MK/s VanitySearch-bitcrack ==> 70 MK/s VanitySearch ==> 149 MK/s command test VanitySearch.exe -gpu 16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN VanitySearch-bitcrack GPU: GPU #0 GeForce GTX 1050 (5x128 cores) Grid(40x512) 80.121 MK/s (GPU 70.098 MK/s) (2^29.91) [00:00:12 lost_TIME_left infinity][0] VanitySearch GPU: GPU #0 GeForce GTX 1050 (5x128 cores) Grid(40x128) [169.91 Mkey/s][GPU 149.29 Mkey/s][Total 2^29.95][Prob 0.0%][50% in 1.89065e+32y][Found 0] problem VanitySearch fast but it search full key 265bits can not search by keyspace for puzzle #64
|
|
|
Why Kangaroo high than bitcrack?
my bitcrack on GTX 1050 (laptop)
cuBitCrack normal 11 MKey cuBitCrack modify1 50 MKey cuBitCrack modify2 30 MKey and Kangaroo with gpu 100Mkey
That mean max cuBitCrack can do only 50 MKey cuBitCrack complete calculate have multiple step to convert from private key to address make it slow right and Kangaroo do short calculate from private key to public key is less step more that bitcrack make it count Mkey higher correct?
if not how possible make bitcrack high power like Kangaroo (gpu) up to 100Mkey
Kangaroo show SolveKeyGPU Thread GPU#0: 2^18.32 kangaroos [4.2s] [127.82 MK/s][GPU 107.38 MK/s][Count 2^36.52][Dead 0][18:31 (Avg 76.1711y)][2.0/4.0MB]
|
|
|
gtx 1050: 50 Mkey (laptop?)
yes laptop I not have PC desktop
|
|
|
Oh No ...
Is this 'pool' Windows based only?
Is there a linux based version, as we mainly use CentOS7 CentOS8 for our servers, which we would gladly setup for the community.
Windows is a no go for us at CWI. Never will be. EVER.
#crysx
64 bit pool have support both windows and Linux ( Ubuntu 64 bit 14.04.2 LTS and 18.04.3 LTS.) support only bitcrack no BSGS
|
|
|
I am interesting to know more about elliptic curve cryptography
Do anybody have an example calculate math?
I mean put number to variable and calculate it I would like to see and read an example to more understand
from private key number calculate to get 2 X,Y public point
and if want to code from scratch (with out use library) what formula each step calculate
|
|
|
The original bitcrack does 9.4 Mkey on the (GeForce GT 640) . So the 1080ti with the sp-mod #2 is 63 times faster. If the original bitcrack did 9.4 MKey/s on the GT 640, does that mean your mod will do 100000000000 MKey/s on the 3070? Seemed like you were comparing the speed of a 640 against a 1080Ti... How can use GeForce GT 640 with CUDA please advice ? I use GeForce GT 720 but can not use CUDA my GeForce GT 720 can use only OpenCL if can use CUDA may be better faster
|
|
|
Kaspersky scan not found virus is ok
but if download from google chrome may be get warning about download from internet and recommend to delete out
try download from opera or other browser
|
|
|
I think one of the take home messages here might be that due to this difference in effort and other factors having to do with privacy and the fungiblity of Bitcoin in general: do not reuse Bitcoin addresses. Bitcoin addresses should be used exactly twice: once to fund them and once to spend them - then never used again.
There's plenty of addresses with hundreds or even thousands of transactions on them, so what you're saying is that bitcoin isn't secure enough and those addresses are more at risk? bitcoin address design for use one time is correct I remember first time don't know about bitcoin I look at bitcoin address I think may be bitcoin is cashless copy idea from RFID code, RFID wristband for use on event and activity ticket payment (cashless) by use one time and thrown away , and it use same thing RFID is better and Easy use bitcoin address is not easy to use require to print out and not easy to scan (I think bitcoin is cashless same RFID cashless system)
|
|
|
http://ttdsales.com/64bit/login.phpAgreed about pools/software/code. I'd prefer a pool for BSGS attacking the puzzle addresses with known pubkeys; but I am a shade tree coder. I can follow code and make some tweaks here and there to try and get what I want the program to do. pool scan already 1 Quadrillion from all 9 Quadrillion but pool not have much for active user I think pool need more active user
|
|
|
CODE #2from bitcoin import privtoaddr i = 18446744073709551616 while i >= 9223372036854775808: i -= 1 y = privtoaddr(i) if y == '16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN': print(hex(i)) break I try to play around a lot with CODE #2, but still getting the same results. Any suggestions to make it run faster or recommending faster tools are appreciated. Thanks in advance. The addresses your code generates are uncompressed. the address you need to find is compressed. python library bitcoin give uncompressed address because hash from uncompressed public key try change to use library bit library bit has from compressed public key give compressed address I am not sure not yet try run code from bit import Key i = 18446744073709551616 while i >= 9223372036854775808: i -= 1 key = Key.from_int(i) y = key.address if y == '16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN': print(hex(i)) break
|
|
|
The total ethereum hashrate is today 457.14TH and most of the hashing is done by gpu's. Lets assume that each gpu hash in average around 30MHASH (gtx 1070ti, rx 570, rx 580) That is a total of 15 238 000 gpu's hashing. Let's assume that I added multicard support and stratum pool support to the bitcrack sp-mod and people redirect their hashing power to crack the puzzle transaction. The bitcoin puzzletransaction is worth ($1 900 000) https://privatekeys.pw/puzzles/bitcoin-puzzle-txPuzzle #64 (64-65 bit) 2^64 / (400MKEYS * 15 238 000)= 3 026 seconds. Puzzle #64 would be solved in 50 minutes Puzzle #65 would be solved in 100 minutes. Puzzle #66 would be solved in 200 minutes. Puzzle #67 would be solved in 400 minutes. ... Since the program scan the whole range of keys, the mining pool can also check if there are other private keys in the scanrange with money in the balance and payout to the miners. you mean compare with now Ethereum power hash mine is use GPU card for mining How many Workers require for can get 457.14TH ? and some problem 1. mining can get profits 100% from rewards sure better than do bitcrack 2. profits from puzzle not enough for all people on pool
|
|
|
Can anyone help to fix about random function can not using large number problem random.Next not work with 9223372036854775808 to 18446744073709551616
random.Next(9223372036854775808, 18446744073709551616)
UInt64 Base = 0x7FFFFFFFFFFFFFFF; var random = new Random();
UInt64 high32Rnd = (UInt64)random.Next(); UInt64 low32Rnd = (UInt64)random.Next();
UInt64 rnd64 = (high32Rnd << 32) | low32Rnd; rnd64 >>= 1; rnd64 += Base;
Console.WriteLine(rnd64);
Hi, A-Bolt I use this code for puzzle #64 it is works and for puzzle # 120-#160 how can I change it to can use with puzzle #160 UInt64 can not use with very high bits puzzle #120 and #160
|
|
|
Is it possible to use this modified version to write all generated keypairs to some file rather than to compare. Or any fast method to write keypairs pvk:pubkey . I had read on different posts that its possible to generate 15 billion of keypairs in under a minute. Is it true ? If yes then is this jut generation or writing to disk is also possible at this speed.
Generation/compare is easy at 15 billion in under a minute; it's the writing to disk that is unachievable at that speed, unless you have a high core count CPU. And even then, I don't know if you could write 15 billion keypairs in under a minute. Can you guide me how to achieve that. Bitcrack generates hash160 and compares that with bloom . I guess keypair generation is way before that and high speed can be achieved. For writing part i will see what can be done. I think it can be done using your method of server client , in this case it will use high ram machines to generate in chunks and while one machine generate and writes , another one will work on another chunk till first one gets free. for fast speed I think write to memory first and save one may be better but it require high memory ram, my experience write data to memory still slows same write file if you want to save file why not use python code generate and save I guess result is slow same, but try modify one for know from real one warning you storage will be full very fast if testing just 100GB and delete if want to keep recommend to buy minimum 2 TB external storage to keep it bitcrack generate fast make sure you computer not working anything may be write to disk like program freeze no respond (work 100% DISK)
|
|
|
Using random strides? Better off sticking to the original I posted, random ranges. WanderingPhilospher code still better than on video https://bitcointalk.org/index.php?topic=4453897.msg56579261#msg56579261however script need to have more feature it require some function to record what is already scan run by random can be duplicate may be use way split divide each equal and random quantity of total and random number when got number random use multiply to get start point for scan create array or text file to store number that used already Visual Studio 2019 Console App (.NET Framework) Program.cs using System; using System.Diagnostics; using System.ComponentModel; using System.IO; using System.Threading.Tasks; using System.Collections.Generic; using System.Linq; using System.Text.RegularExpressions;
namespace MyProcessSample { class MyProcess { public static void Main() { try { using (Process myProcess = new Process()) { for (int i = 1; i <= 10000000; i++) { //myProcess.StartInfo.UseShellExecute = false; myProcess.StartInfo.UseShellExecute = true; //string filepath = '"' + Directory.GetCurrentDirectory() + "\\clBitCrack.exe" + '"'; string filepath = '"' + Directory.GetCurrentDirectory() + "\\cuBitCrack.exe" + '"'; //string filepath = '"' + Directory.GetCurrentDirectory() + "\\kangaroo.exe" + '"'; //string filepath = '"' + Directory.GetCurrentDirectory() + "\\Kangaroo.exe" + '"'; //string filepath = '"' + Directory.GetCurrentDirectory() + "\\BSGS.exe" + '"'; Console.WriteLine("The current directory is {0}", filepath); myProcess.StartInfo.FileName = filepath;
//int start = random.Next(9223372036854775808, 18446744073709551616) UInt64 Base = 0x8000000000000000;
var random = new Random(); UInt64 high32Rnd = (UInt64)random.Next(); UInt64 low32Rnd = (UInt64)random.Next(); UInt64 rnd64 = (high32Rnd << 32) | low32Rnd; rnd64 >>= 1; rnd64 += Base;
Console.WriteLine("rnd64 = {0}", rnd64); //long longRand = Math.Abs(startup);
ulong step = 100000000; ulong stop = rnd64 + step; Console.WriteLine("Random = {0}", rnd64); Console.WriteLine("Step = {0}", step); Console.WriteLine("PlusStep = {0}", stop); string beginHEX = rnd64.ToString("X"); string endHEX = stop.ToString("X");
string myArguments = " -c -u -o out.txt --keyspace " + beginHEX + ":+100000000 -i in.txt"; Console.WriteLine("Command = cuBitCrack.exe {0}", myArguments); myProcess.StartInfo.Arguments = myArguments; myProcess.StartInfo.CreateNoWindow = true; Console.WriteLine(DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.ffffffK")); Console.WriteLine("Start = {0}", beginHEX); Console.WriteLine("End = {0}", endHEX); myProcess.Start(); myProcess.WaitForExit(); Console.WriteLine(DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.ffffffK")); Console.WriteLine("========================="); if (i == 10000000) { break; }
} Console.WriteLine("Press any key to exit."); Console.ReadLine(); } } catch (Exception e) { Console.WriteLine(e.Message); } } } }
|
|
|
V100 -b 80 -t 512 -p 2800 ~1575Mkey P100 -b 112 -t 512 -p 2000 ~580Mkey
try to run without the -b and -t parameter. My exe will autotune to a good launchconfig. With sp-mod #2 I get 1070: 370 MKey 1070ti: 404Mkey 1080ti: 600Mkey Titanx pascal: 560Mkey my 1050: 11-50 Mkey just a little toy but I think make it faster is not answer puzzle challenge make it fast 10Gigkey still use million year to scan puzzle need algorithm to calculate but make it faster is good to prepare for next algorithm
|
|
|
Thank you this version 2 work better generating point still feel slow than normal version (but ok when compare generating ) normal Generating 262,144 starting points (10.0MB) modify Generating 20,971,520 starting points (800.0MB) I don't know use technic method generate more memory and calculate large size same time but memory use better #1 first modify can run only 1 bitcrack only, program use all memory if open more will found out of memory #2 modify can run with 1 normal bitcrack to tal 2 bitcrack may be optimize use memory enough to use more one 10mb point generate
|
|
|
Did you do this first?
yes I use nano edit "Makefile"
|
|
|
Did you just type "make" or "make gpu=1"? (What will work is "make gpu=1 ccap=52" or 61 or 75 or whatever your CUDA compute cap is)
By the way. WSL speed will be slower than just compiling it on Windows itself, because WSL emulates system calls. The GPUs will also not be recognized unless you install the Ubuntu(?) WSL drivers from NVIDIA's download page, the Windows drivers don't work from WSL.
I use "make" only make can compile success and can run kangaroo but can not using option -gpu show error GPU code not compiled, use -DWITHGPU when compiling. make gpu=1 mkdir -p obj cd obj && mkdir -p SECPK1 cd obj && mkdir -p GPU /usr/local/cuda-8.0/bin/nvcc -maxrregcount=0 --ptxas-options=-v --compile --compiler-options -fPIC -ccbin /usr/bin/g++-4.8 -m64 -O2 -I/usr/local/cuda-8.0/include -gencode=arch=compute_,code=sm_ -o obj/GPU/GPUEngine.o -c GPU/GPUEngine.cu make: /usr/local/cuda-8.0/bin/nvcc: Command not found make: *** [Makefile:75: obj/GPU/GPUEngine.o] Error 127
make gpu=1 ccap=52 cd obj && mkdir -p SECPK1 cd obj && mkdir -p GPU /usr/local/cuda-8.0/bin/nvcc -maxrregcount=0 --ptxas-options=-v --compile --compiler-options -fPIC -ccbin /usr/bin/g++-4.8 -m64 -O2 -I/usr/local/cuda-8.0/include -gencode=arch=compute_52,code=sm_52 -o obj/GPU/GPUEngine.o -c GPU/GPUEngine.cu make: /usr/local/cuda-8.0/bin/nvcc: Command not found make: *** [Makefile:75: obj/GPU/GPUEngine.o] Error 127
I will try on real Ubuntu on small harddisk try install
|
|
|
|