Search content
Sort by

Showing 20 of 48 results by mabdlmonem
Post
Topic
Board Bitcoin Discussion
Topic OP
Need help Puzzle GSMG.IO 5BTC
by
mabdlmonem
on 18/02/2025, 00:05:36 UTC
Hello everyone
I decrypted the phase 2 and phase 3 of the puzzle The puzzle GSMG.IO
https://privatekeys.pw/puzzles/gsmg-puzzle

It gaves me a phrase. My question is: what is the method to use it to unlock the address and claim the reward

https://gsmg.io/choiceisanillusioncreatedbetweenthosewithpowerandthosewithoutaveryspecialdessertiwroteitmyself
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 12/12/2024, 12:01:53 UTC

Could you please share the tool you are using for scan that range?
Post
Topic
Board Development & Technical Discussion
Re: Pollard's kangaroo ECDLP solver
by
mabdlmonem
on 17/11/2024, 17:57:46 UTC
Hello everyone, I have a problem when compiling Kangaroo on windows

error: '_udiv128' was not declared in this scope , any solution?
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 12/11/2024, 22:35:35 UTC
Some people here have made very strange conclusions. Again, to stop it:
1. I never said that I did not solve puzzles.
2. I never said that I used 20 GPUs for #125 and #130.
3. I have no idea how some people calculated time two months between solving #125 and #130  Huh it was a year or so.

Reality is:
1. I used 20 GPUs for #120. I had to get access and use >100 GPUs for #125 and #130.
2. There is no magic in solving these puzzles, just pure math and skills. And some money.
3. I'm not puzzle creator, this is a ridiculous idea if you think about it.
4. I'm working on 135, but it will take a lot of time, I'm not in a hurry. If you think that you compete - welcome Grin But 99% of people even cannot correctly calculate chances and cost of this game.
5. I want to share my experience in open source, step by step. But it won't be ready-to-use software so everyone can just run it and wait for money  Cheesy

First of all congratulations . I agree with you that with math everything is possible. I am curious about puzzle 130 because I was trying to solve it with math , just answer yes/no/too far/close enough. The private key start with 0x3A8 and it was even number at the end ?
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 13/10/2024, 19:38:07 UTC
Simple program for puzzle 66 below.

If you want to search from a specific private key number both ways up and down, just use it:

Code:
#!/usr/bin/env python3

from hdwallet import HDWallet
from hdwallet.symbols import BTC
from tqdm import tqdm
from tqdm.contrib.concurrent import process_map

hdwallet = HDWallet(symbol=BTC)

p=0x000000000000000000000000000000000000000000000001a838b13505b26867
middle=p*2
mid=1000000

def go(i):
b=hex(i)
b='0'*(66-len(b))+b[2:]
hdwallet.from_private_key(private_key=b)
a=hdwallet.p2pkh_address()
if a=='13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so':
print('private key: 0x'+b+'\a')
exit()

process_map(go, [x for i in range(mid) for x in {middle-i:0,middle+i:0}], max_workers=10, chunksize=10000)

import sys
print('\a',end='',file=sys.stderr)

Here I set p for previous puzzle pvk and double it.
Middle is the variable from where the search will start.

I think your version have some errors, this version work to me:

Code:
#!/usr/bin/env python3

from hdwallet import HDWallet
from hdwallet.symbols import BTC
from tqdm.contrib.concurrent import process_map
import sys
import concurrent.futures

# Initialize HDWallet for BTC
hdwallet = HDWallet(symbol=BTC)

# Define constants
p = 0x000000000000000000000000000000000000000000000001a838b13505b26867
middle = p * 2
mid = 1000000

# Function to process private keys and check addresses
def go(i):
    # Calculate the private key from the iteration index
    private_key = middle - i if i % 2 == 0 else middle + i
    # Convert the private key to a hex string and ensure it's 64 characters
    b = hex(private_key)[2:].zfill(64)
    # Initialize wallet from private key
    hdwallet.from_private_key(private_key=b)
    # Get address
    address = hdwallet.p2pkh_address()
    # Check if the address matches the target
    if address == '13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so':
        print('Private key: 0x' + b + '\a')
        sys.exit()

# Main script execution with multiprocessing guard
if __name__ == "__main__":
    try:
        # Use process_map to parallelize the work
        process_map(go, range(mid), max_workers=10, chunksize=10000)
    except concurrent.futures.process.BrokenProcessPool:
        print("A process in the pool was terminated abruptly.", file=sys.stderr)
    except KeyboardInterrupt:
        print("Process interrupted.", file=sys.stderr)

    # Optional alert on script completion (in stderr)
    print('\a', end='', file=sys.stderr)
It would work only if the private for the next puzzle is even not odd .
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 12/10/2024, 13:26:15 UTC
How many GPU needs to find a key in range 119 with kangaroo and how much time it takes? Is there any calculator.
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 02/06/2024, 20:49:32 UTC
السلام عليكم في اي حد عربي او بيحكي عربي متابع الموضوع انا حسن من لبنان من 2021 بحاول حل اللغز من ناحية الرياضية ووجدة كثير نقاط مهمة واخره علاقة رياضة من خلالها احصل على اول 4 ارقام من كل محفظة مثال النتائج لي توصلتلها من خلال عدة عمليات رياضية 99 بالمئة ان هذا التحدي عمل من خلال معادلة معينة وليست ارقام عشوائية
61:1425600000000000000
62:3908100000000000000
63:89932000000000000000
64:17798000000000000000
65:30567000000000000000
هيدي الارقام لي وصلتها من خلال بعض المعادلات الرياضية والجبرية
بالاضافة لي كامل اللغز اول اربع ارقام قدرة احصل عليها لم انشرها بعد لان اذا نشرتها سيتم فتح المحافظ الثلالث القادة بسهولة ببسب النطاق التي  يعتبر صغير نوعا ما
كل محفظة من المحافظ  66 67 68 بنقدر نفتحها بي 31 يوم فقط لكن ليس لدي القدرة الحوسبية حاسوبي لا يحتوي على معالج قوي او كرت شاشة
  اذا في حد مهتم وحابب نتعاون بفتح الثلالث محافظ القادمة الامر كله يحتاج الى 3500 دولار لشراء جهاز يحتوي على كرت شاشة 4090 ومصاريف كهرباء كما تعلمون الوضوع في لبنان كيف لا كهرباء
والجائزة مناصفة وبعد ما نفتح  المحفظة الاولى انا مستعد اعطيه المعادلة الرياضية
No one will give you money without sharing your thoughts, we don't understand what you are trying to tell us with these numbers
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 22/02/2024, 21:55:00 UTC
Has anyone ever seen a tool that tries only a set of keys? Let me explain, imagine you have this key
0x397f5aa7b90de4
What if you want to set the public key of this one 0x5aa7b90de4 and then try all combinations for the first 4 missing characters? as I understand it,  no tool exist to scan selected parts of a range, or do they exist?

You would have to give a better example of how many leading characters, because what you have now would only take a few seconds/minute, to iterate all possible combos, even with a single thread python script. Even if you do not know the leading character, you are looking at 16^4 combos, 65,536 possible combos.

But initially, I was thinking the same thing as albert0bsd was, it is similar to BSGS, because BSGS basically cuts off the last x characters, depending on your baby step file (how many public keys it contains), but for your specific example, you would need a baby step file with 2^40 keys, or modify the keys known down, to use a smaller size file.

But as is, without mod, you would merely start with 0x1000 + 0x5aa7b90de4; and increment 0x1000 by +=1 until match is found. 0x1000, 0x1001, 0x1002, etc. Not a very difficult script to put together, using python.

Buuuuuuut,

Quote
In fact I can say that I am sure about first few digits but I want to quickly try different first digits

Even if you knew the first 5 characters (which there is no way that you do), that does not mean much in the scope of this challenge, for example #130, because that would leave you with 2^112 left to search. Which can be done now via subtraction/division with a file full of 2^18 keys. But let's be real, as far as this challenge goes, people may say they know the leading x amount of characters, which they obviously do not; but maybe you have a different purpose/reason for what you are wanting to do.
Interesting,  could you please share a code for this method you mentioned?
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 11/02/2024, 01:24:38 UTC
Is there any code for scanning address in sequence using GPU?
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 06/02/2024, 13:14:45 UTC
But how do devs calculate their speed when using BSGS?

I see a lot of peta, exa keys per second, I’m trying to figure out how they calculate the speed…and then apply it to my script.

Well, if you were the person you claim to be (WanderingPhilosopher Keyhunt), you probably wouldn't had put this question.

The source code of Keyhunt is open and you can see how the speed is determined. It is in the nature of the BSGS algorithm that you cannot compare these values with the classic searches. The same applies to Kangaroo, which is a completely different approach. A comparison would be like comparing apples and oranges. These are completely different algorithms, for example: if you run Kangaroo well-tuned and you would rely on the speed rate the tool shows you and then compare it to the speed of let's say BSGS you would be disappointed. Because BSGS will report a much higher rate. But in fact, the  Kangaroo will always run faster than BSGS. Again, you cannot compare them.

In BSGS mode of keyhunt for example the speed shown also depends on the pubkeys used. More keys will result in less speed.

Honestly, it’s a simple question, maybe you shouldn’t try to answer.

I’m not trying to compare potatoes and cabbage.

If I am using BSGS and can find a 52 bit key in 30 seconds, what’s the speed? 😂

It really wasn't meant to spurn any controversy. I know others have disagreed in the past, so I was curious to what people had to say.

If I use albertobsd method, I can say that the speed of my single core python script gets roughly, 140,549,854,653,356  Keys/s.
I wasn't trying to say it was fast or anything, just curious as to the actual speed and how different people view it.
I've been working on a low memory BSGS script; this one only uses about 500MB of RAM. Low memory, for various reasons but my reason is because I wrote a server/client script (python) and some of my machines have 8-16 GB max on them so I needed a way to employ them via low memory.



Quote
my search rate per hour for 30 bit above is approximately 800,324 keys per hours (like what i said before about leaking the cpu speed and more usage ram when 30 bit above)

Time to find 66-bit key≈1.75×108years
Your code does seem on the slower side of speed, but I was just going to show you some ways/see if we could speed it up (using python only). Not saying it will ever solve a puzzle, but more speed never hurts.

hi sir, i'm very motivated with your opinion about search speed.

i do some Experiment, trial and error for 66 bit

Let's say i take one 66 bit address for practice
000000000000000000000000000000000000000000000002be7989dd1a1a63ad | Hash 160 20cb77af1a425c5e74483d9b30cf950911a090de | 13zQNJwpREZogcPSkNJmYQzZ9HZQZS48Hx [TARGET]

result scan :
000000000000000000000000000000000000000000000002b809677889fb1078 | Hash 160 20cb78b594b77cf97259be5cc414f0a49f1bde81 | 13zQNb5x4P7vCjag18rZKCVHkBcqtddaLS | 102.92 sec | 136.0 keys/sec |
00000000000000000000000000000000000000000000000285a7e79fd01fc2a4 | Hash 160 20cbc445f68147eb89314c6710de2a7c5fc2e0fb | 13zQj6btR6awFjac835xsvDqeCtVyioiiW | 112.67 sec | 124.9 keys/sec |
000000000000000000000000000000000000000000000002757de2916bb72c92 | Hash 160 20cbc889d5186984e2189dd818e67d990f992459 | 13zQkFk3v2WXrhLVVhP2NKM1JT4Gbd6VoY | 153.39 sec | 110.4 keys/sec |
000000000000000000000000000000000000000000000002a6bdd8aaca2a5a56 | Hash 160 20cbb6398c3a2a9ad13eec60d2ffd84ed113d96d | 13zQfHTEd9EZncjXmiKMoZV7SqSZP39myL | 159.93 sec | 100.8 keys/sec |


I'm very grateful the result seem make some chance to hit the targeted and correct key
000000000000000000000000000000000000000000000002b809677889fb1078 | Hash 160 20cb78b594b77cf97259be5cc414f0a49f1bde81 | 13zQNb5x4P7vCjag18rZKCVHkBcqtddaLS | 102.92 sec | 136.0 keys/sec |

i make some checkpoint rules and check if at least 10 addresses have similarity in hash160 derived from private key.
Could you please share your code
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 30/01/2024, 21:09:08 UTC
Anyone know how to get the private key for 58.5?
What about 58.51?)

Code:
import bitcoin

target= 585

Div=10

N=115792089237316195423570985008687907852837564279074904382605163141518161494337

a=bitcoin.inv(Div,N)

b= target*a % N

print("target r:",target/Div)
print("pk:",b)

58.5

PK 0.5
57896044618658097711785492504343953926418782139537452191302581570759080747169

pk 58
58

58.5
57896044618658097711785492504343953926418782139537452191302581570759080747169
+
58
=
57896044618658097711785492504343953926418782139537452191302581570759080747227

in hex
0x7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20db
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 30/01/2024, 17:13:24 UTC
Anyone know how to get the private key for 58.5?

Sure, nothing could be easier Cheesy

Just generate it from decimal 58.5 or HEX 3a.8  Roll Eyes Grin

Jokes aside - if you want to derive a private key from a floating-point decimal for experimental or educational purposes, you could devise your own method. Bitcoin private key from a floating-point decimal isn't standard practice, as Bitcoin private keys are typically generated using cryptographic algorithms that rely on random numbers.

good luck in whatever you're trying to achieve


I know already how to get private key that has floating 0.5 , I just curious if anyone got it
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 30/01/2024, 17:06:05 UTC
Anyone know how to get the private key for 58.5?
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 18/01/2024, 16:48:20 UTC
I can give you some clues for this problem and you can reflect on it...
       *Addresses are in order.
       *Addresses are not random.
       * Addresses always have PVK values ​​that differ by one PVK value.
       * There is a pattern.

    The key is to use the common factor within each address pair and its PVK value.

     A common factor between addresses 1 and 2 is that their PVK value is equal to 3.

     A common factor between addresses 3 and 4 is that their PVK value is equal to 7.

     A common factor between addresses 5 and 6 is that their PVK value is equal to 21.

     Etc...



      PVK values ​​are always in a mathematical progression (in this case, I don't like to use the word "sequence") that appears to be in a progression of prime numbers.


       * What is important is not the PVK values ​​but the mathematical relationship between the PVK values.
       *Addresses are in a progression of prime numbers.
       *The addresses are always in order.
       * There is always a relationship between the PVK value of the following addresses.


       *PVK values ​​do not always have to be prime numbers.
       * PVK addresses are always generated mathematically and never randomly.
       * Don't look for the answer in the Bitcoin blockchain.

      * Think of the relationship between the directions as the common factor between two very large prime numbers.
       * The equation to be solved for the PVK values ​​is a unique mathematical solution.
       *Also remember that PVK addresses are always in order.

       *The key is the PVK value pattern.
       * The pattern goes beyond PVK values.


       * Use a mathematical relationship between the PVK values ​​to calculate the PVK values ​​of the directions in the depressed progressions.

    Some clues are a little more ambiguous, but if you think about it it can give you a little idea of ​​how to decipher the directions in this case.  I can't give you more information about the exact formula behind all this for security reasons, but I hope you have fun and someone very special sends you greetings.  ✌️



If you are satoshi try it by sending me 1 btc, just kidding.
Your analysis is very interesting, friend.

edit:
My doubt is that I believe that there is no common factor for 5 and 6 to have a result of 21.
I agree with you, and I knew already the relationship between all private keys, and how power by 2 working there to make a strong pattern. I still trying to figure the equation
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 12/01/2024, 10:19:05 UTC

The beginning of private key  for 130 is 0x3

You are already stuck with your guesses! Stop spreading spam!
Ok!
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 12/01/2024, 00:29:49 UTC
I have found a few interesting hints regarding the puzzle 130, since I don't know the actual private key, I will just leave them here for the author to verify.
Are the following values related to the puzzle 130 in any way? Like being the last characters, first characters, the key being divisible by them etc?
3c8
f2
ec

If yes then I might be onto something. Then I'd need a hint to follow up on it, you might also want to check the inverse key as well.


I think that if the creator was to come here and give us hints, this would defeat the purpose of his creation which is to measure our cracking capabilities.

Can't really be giving out hints in an experiment like this one, we must check our own leads and see what comes out of it.
The beginning of private key  for 130 is 0x3
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 06/01/2024, 21:23:24 UTC
I uploaded the subtraction program to GitHub. If anyone needs it, you can use it, there is a compiled version for Windows.
https://github.com/Flleowa/ecctools-Subtraction

What is 68719476736 , why this number and how you calculated it?
Post
Topic
Board Development & Technical Discussion
Re: Binary Baby Step Giant Step with lightweight database - Brute force (BSGS)
by
mabdlmonem
on 06/01/2024, 19:11:14 UTC
sorry for jumping in and having to ask what i have to change
binary_bsgs_v1.py using this one starting at another point instead of 1 using this
"lm_upub= ice.scalar_multiplication(Add+(lm*i))"
will go for 120 bit db how to setup after 125 any help on this , mean where are you're specific scripts,
you all have your own scripts share it is care for it..

Example for 65bit

It won't work if there are no chunks. It will throw out that you don't have enough memory even if you have 128GB of RAM.

So this is will create baby_steps_binary.bin from 46117 stages....
Size of file over 5GB ....

So calculate size for 130 bit.  Grin

Code:
import secp256k1 as ice
from bitstring import BitArray

print("creating Baby Step")

# create baby step
num = 92233720368  # Keys number in Binary Babystep. same m in the search script
Low_m = 20
lm = num // Low_m
Add = 18446744073709551615
Add_pub = ice.scalar_multiplication(Add)

# Function to process a chunk and write to binary file
def process_and_write_chunk(start, end):
    res = ice.point_sequential_increment(end - start, Add_pub)

    # Ensure the length of res is a multiple of 65
    res_length = len(res)
    if res_length % 65 != 0:
        res = res[:-(res_length % 65)]

    binary = ''
    for t in range(start, end):
        h = res[t * 65 : (t + 1) * 65].hex()
        hc = int(h[2:], 16) if h else 0  # Handle the case when h is an empty string

        if str(hc).endswith(('0', '2', '4', '6', '8')):
            A = "0"
            binary += ''.join(str(A))

        if str(hc).endswith(('1', '3', '5', '7', '9')):
            A = "1"
            binary += ''.join(str(A))

    my_str = BitArray(bin=binary)

    binary_file = open('baby_steps_binary.bin', 'ab')
    my_str.tofile(binary_file)
    binary_file.close()

# Process the remaining chunks with a smaller chunk size
chunk_size = 100000
for i in range(0, lm, chunk_size):
    print("stage: " + str(i // chunk_size + 1) + "/" + str((lm + chunk_size - 1) // chunk_size))
    end = min(i + chunk_size, lm)
    process_and_write_chunk(i, end)

what about add step size , I think it will more better
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 06/01/2024, 11:31:03 UTC
I have less. Only 5 Ekeys/s, which is very little.

And that's enough to solve 65 in two seconds. Wink


I'm scratching my head to find a way to make baby steps for the H160. There seems to be no way. Grin
There is only one way pub to rmd

And make binary database full with H160. I don't know how long that process would take. I haven't tried it yet. Grin
Serialized point and get hash160 for it on the fly
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
mabdlmonem
on 06/01/2024, 11:01:54 UTC
I have less. Only 5 Ekeys/s, which is very little.

And that's enough to solve 65 in two seconds. Wink


I'm scratching my head to find a way to make baby steps for the H160. There seems to be no way. Grin
There is only one way pub to rmd