Bitcoin Forum
November 05, 2024, 04:34:08 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 [206] 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 ... 327 »
  Print  
Author Topic: Bitcoin puzzle transaction ~32 BTC prize to who solves it  (Read 223040 times)
mcdouglasx
Member
**
Offline Offline

Activity: 328
Merit: 90

New ideas will be criticized and then admired.


View Profile WWW
December 08, 2023, 09:24:10 PM
 #4101

BSGS with binaries soon... Cool
It will be interesting to see your spin on BSGS with binaries, however, I doubt it can match the existing BSGS scripts/programs out there.

BSGS eats up some disk space (mine is about 4GB) but Once the binary file is built, it doesn't eat up any RAM during the search (Cuda).

And on a single mid-level GPU, I check a 2^66 range, each second.

Looking forward to your spin on it.

At the moment I have it in python, it is working, sequential. I haven't had time to add new options to upload it, work has me tied up.

BTC bc1qxs47ttydl8tmdv8vtygp7dy76lvayz3r6rdahu
WanderingPhilospher
Full Member
***
Online Online

Activity: 1204
Merit: 237

Shooters Shoot...


View Profile
December 08, 2023, 09:58:18 PM
Last edit: December 09, 2023, 11:22:43 PM by Mr. Big
 #4102

BSGS with binaries soon... Cool
It will be interesting to see your spin on BSGS with binaries, however, I doubt it can match the existing BSGS scripts/programs out there.

BSGS eats up some disk space (mine is about 4GB) but Once the binary file is built, it doesn't eat up any RAM during the search (Cuda).

And on a single mid-level GPU, I check a 2^66 range, each second.

Looking forward to your spin on it.

At the moment I have it in python, it is working, sequential. I haven't had time to add new options to upload it, work has me tied up.
Let me know when you upload it. I'll run some tests for you and find any bugs Smiley



Hello all, is there any python code for public key addition and checking it's hash ?
Yes, look at the iceland2k14/secp256k1 script and create your script to fit within his script.

Also, what do you mean by "checking it's hash"? H160?
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 34
Merit: 1


View Profile
December 08, 2023, 10:06:59 PM
 #4103

Hello all, is there any python code for public key addition and checking it's hash ?
Yes, look at the iceland2k14/secp256k1 script and create your script to fit within his script.

Also, what do you mean by "checking it's hash"? H160?
Yes , hash160 . I saw his code , I am just good at math but very bad at programming so I couldn't understand the code honestly
nomachine
Member
**
Offline Offline

Activity: 476
Merit: 35


View Profile
December 08, 2023, 10:45:31 PM
Last edit: December 23, 2023, 09:24:05 AM by nomachine
 #4104

Hello all, is there any python code for public key addition and checking it's hash ?
Yes, look at the iceland2k14/secp256k1 script and create your script to fit within his script.

Also, what do you mean by "checking it's hash"? H160?
Yes , hash160 . I saw his code , I am just good at math but very bad at programming so I couldn't understand the code honestly

Simplest

Code:
import sys, secrets, secp256k1 as ice
while True:
    dec = secrets.SystemRandom().randrange(36893488147419103231, 73786976294838206463)
    h160 = ice.privatekey_to_h160(0, True, dec).hex()
    message = "\r{}".format(h160);messages = []
    messages.append(message);output = "\033[01;33m" + ''.join(messages) + "\r"
    sys.stdout.write(output);sys.stdout.flush()
    if h160 == "20d45a6a762535700ce9e0b216e31994335db8a5":
        HEX = "%064x" % dec;wifc = ice.btc_pvk_to_wif(HEX)
        with open("KEYFOUNDKEYFOUND.txt", "a") as f:
          f.write(f'Private key (wif) Compressed : {wifc}\n')
        break

bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 34
Merit: 1


View Profile
December 08, 2023, 11:07:03 PM
 #4105

Hello all, is there any python code for public key addition and checking it's hash ?
Yes, look at the iceland2k14/secp256k1 script and create your script to fit within his script.

Also, what do you mean by "checking it's hash"? H160?
Yes , hash160 . I saw his code , I am just good at math but very bad at programming so I couldn't understand the code honestly

Simplest

Code:
import sys, secrets, secp256k1 as ice
while True:
    dec = secrets.SystemRandom().randrange(36893488147419103231, 73786976294838206463)
    h160 = ice.privatekey_to_h160(1, True, dec).hex()
    message = "\r{}".format(h160);messages = []
    messages.append(message);output = "\033[01;33m" + ''.join(messages) + "\r"
    sys.stdout.write(output);sys.stdout.flush()
    if h160 == "20d45a6a762535700ce9e0b216e31994335db8a5":
        HEX = "%064x" % dec;wifc = ice.btc_pvk_to_wif(HEX)
        with open("KEYFOUNDKEYFOUND.txt", "a") as f:
          f.write(f'Private key (wif) Compressed : {wifc}\n')
        break

Thank you, but that is not what I asked for, I asked about script for public key addition, this script is for generating address from private
nomachine
Member
**
Offline Offline

Activity: 476
Merit: 35


View Profile
December 08, 2023, 11:22:32 PM
 #4106

Thank you, but that is not what I asked for, I asked about script for public key  

Public key ??  Grin

Here you go (but you must know the target public key)........

puzzle 65
Code:
import sys, secrets, secp256k1 as ice
while True:
    A0 = secrets.SystemRandom().randrange(18446744073709551615, 36893488147419103231)
    A1 = ice.scalar_multiplication(A0);B0 = ice.to_cpub(A1.hex())
    message = "\r{}".format(B0);messages = []
    messages.append(message);output = "\033[01;33m" + ''.join(messages) + "\r"
    sys.stdout.write(output);sys.stdout.flush()
    if B0 == "0230210c23b1a047bc9bdbb13448e67deddc108946de6de639bcc75d47c0216b1b":
        HEX = "%064x" % A0;wifc = ice.btc_pvk_to_wif(HEX)
        with open("KEYFOUNDKEYFOUND.txt", "a") as f:
          f.write(f'Private key (wif) Compressed : {wifc}\n')
        break

bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 34
Merit: 1


View Profile
December 08, 2023, 11:28:42 PM
 #4107

Thank you, but that is not what I asked for, I asked about script for public key 

Public key ??  Grin

Here you go

puzzle 65

Code:
import sys, secrets, secp256k1 as ice
while True:
    A0 = secrets.SystemRandom().randrange(18446744073709551615, 36893488147419103231)
    A1 = ice.scalar_multiplication(A0);B0 = ice.to_cpub(A1.hex())
    message = "\r{}".format(B0);messages = []
    messages.append(message);output = "\033[01;33m" + ''.join(messages) + "\r"
    sys.stdout.write(output);sys.stdout.flush()
    if B0 == "0230210c23b1a047bc9bdbb13448e67deddc108946de6de639bcc75d47c0216b1b":
        HEX = "%064x" % dec;wifc = ice.btc_pvk_to_wif(HEX)
        with open("KEYFOUNDKEYFOUND.txt", "a") as f:
          f.write(f'Private key (wif) Compressed : {wifc}\n')
        break

It's the same idea, it generate public from private then compare. It's not public key addition
nomachine
Member
**
Offline Offline

Activity: 476
Merit: 35


View Profile
December 08, 2023, 11:36:56 PM
Last edit: December 08, 2023, 11:49:26 PM by nomachine
 #4108

It's the same idea, it generate public from private then compare. It's not public key addition

And how else do you imagine generating a public key for a specific range, with a glass ball by magic?
The problem is that we don't know any public keys. Except the Puzzle 130 and above...

bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 34
Merit: 1


View Profile
December 08, 2023, 11:40:06 PM
 #4109

It's the same idea, it generate public from private then compare. It's not public key addition

And how else do you imagine generating a public key for a range, with a glass ball by magic?
The problem is that we don't know any public keys. Except the Puzzle 130 and above...
I never talked about generating public key, I asked for public point addition with python script, that's all
WanderingPhilospher
Full Member
***
Online Online

Activity: 1204
Merit: 237

Shooters Shoot...


View Profile
December 08, 2023, 11:40:14 PM
 #4110

Thank you, but that is not what I asked for, I asked about script for public key  

Public key ??  Grin

Here you go

puzzle 65

Code:
import sys, secrets, secp256k1 as ice
while True:
    A0 = secrets.SystemRandom().randrange(18446744073709551615, 36893488147419103231)
    A1 = ice.scalar_multiplication(A0);B0 = ice.to_cpub(A1.hex())
    message = "\r{}".format(B0);messages = []
    messages.append(message);output = "\033[01;33m" + ''.join(messages) + "\r"
    sys.stdout.write(output);sys.stdout.flush()
    if B0 == "0230210c23b1a047bc9bdbb13448e67deddc108946de6de639bcc75d47c0216b1b":
        HEX = "%064x" % dec;wifc = ice.btc_pvk_to_wif(HEX)
        with open("KEYFOUNDKEYFOUND.txt", "a") as f:
          f.write(f'Private key (wif) Compressed : {wifc}\n')
        break

It's the same idea, it generate public from private then compare. It's not public key addition
Maybe provide step by step of what you are wanting.

Sounds like you want to add public key a to public key b and look at the resulting hash160.

So you'd have to provide 2 public keys, if that's the case.
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 34
Merit: 1


View Profile
December 08, 2023, 11:49:36 PM
 #4111

Thank you, but that is not what I asked for, I asked about script for public key  

Public key ??  Grin

Here you go

puzzle 65

Code:
import sys, secrets, secp256k1 as ice
while True:
    A0 = secrets.SystemRandom().randrange(18446744073709551615, 36893488147419103231)
    A1 = ice.scalar_multiplication(A0);B0 = ice.to_cpub(A1.hex())
    message = "\r{}".format(B0);messages = []
    messages.append(message);output = "\033[01;33m" + ''.join(messages) + "\r"
    sys.stdout.write(output);sys.stdout.flush()
    if B0 == "0230210c23b1a047bc9bdbb13448e67deddc108946de6de639bcc75d47c0216b1b":
        HEX = "%064x" % dec;wifc = ice.btc_pvk_to_wif(HEX)
        with open("KEYFOUNDKEYFOUND.txt", "a") as f:
          f.write(f'Private key (wif) Compressed : {wifc}\n')
        break

It's the same idea, it generate public from private then compare. It's not public key addition
Maybe provide step by step of what you are wanting.

Sounds like you want to add public key a to public key b and look at the resulting hash160.

So you'd have to provide 2 public keys, if that's the case.
I want to make sure from something about binary and public key. So I need a script to see what happens when we add 2 to the public key A and see the results of B . If what I think works I will share with everyone my idea, that's all
WanderingPhilospher
Full Member
***
Online Online

Activity: 1204
Merit: 237

Shooters Shoot...


View Profile
December 09, 2023, 12:00:00 AM
 #4112

Quote
I want to make sure from something about binary and public key. So I need a script to see what happens when we add 2 to the public key A and see the results of B . If what I think works I will share with everyone my idea, that's all
Ok, so again, still confusing, at least to me.

You want to take a known public key "A" and add decimal number 2, to it, and see what the results are, "B"?
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 34
Merit: 1


View Profile
December 09, 2023, 12:03:05 AM
Last edit: December 09, 2023, 11:18:57 PM by Mr. Big
 #4113

Quote
I want to make sure from something about binary and public key. So I need a script to see what happens when we add 2 to the public key A and see the results of B . If what I think works I will share with everyone my idea, that's all
Ok, so again, still confusing, at least to me.

You want to take a known public key "A" and add decimal number 2, to it, and see what the results are, "B"?
Yes, something like this



Quote
I want to make sure from something about binary and public key. So I need a script to see what happens when we add 2 to the public key A and see the results of B . If what I think works I will share with everyone my idea, that's all
Ok, so again, still confusing, at least to me.

You want to take a known public key "A" and add decimal number 2, to it, and see what the results are, "B"?


Basepoint G:   (55066263022277343669578718895168534326250603453777594175500187360389116729240L, 32670510020758816978083085130507043184471273380659243275938904335757337482424L)

Alice's secret key:   17436825491055586112755527818298542034755947930418580382030036978914692463183
Alice's public key:   (105679268965026450260338478364512614840272341529552480851333141374575362812020L, 16626610969520910407950657067133267950619549449019363437330088722436240164467L)

Bob's secret key:   32291818723468099298317452759803795679231875044644200373977689553806184529332
Bob's public key:   (91972152888645730114115627070016955368567223430226022010551427574648772204461L, 38446745167120461740412855329188667802416705205856357237503216472671667494148L)

=========Now we compare if same =================
(Alice Private+Bob Private)*G (101985652621362431772155823262934243650512147323486167826619770748482854554391L, 55338466074231142921426831718703469030196983642662166495910251269532062902125L)
Alice Public+Bob Public (101985652621362431772155823262934243650512147323486167826619770748482854554391L, 55338466074231142921426831718703469030196983642662166495910251269532062902125L)
nomachine
Member
**
Offline Offline

Activity: 476
Merit: 35


View Profile
December 09, 2023, 01:20:44 AM
Last edit: December 09, 2023, 09:42:53 AM by nomachine
 #4114

Python

Code:
def point_addition(p, q, a, p_curve):
    if p == "infinity":
        return q
    if q == "infinity":
        return p

    x_p, y_p = p
    x_q, y_q = q

    if p != q:
        m = ((y_q - y_p) * pow(x_q - x_p, -1, p_curve)) % p_curve
    else:
        m = ((3 * x_p**2 + a) * pow(2 * y_p, -1, p_curve)) % p_curve

    x_r = (m**2 - x_p - x_q) % p_curve
    y_r = (m * (x_p - x_r) - y_p) % p_curve

    return (x_r, y_r)

# Elliptic curve parameters
p_curve = 2**256 - 2**32 - 2**9 - 2**8 - 2**7 - 2**6 - 2**4 - 1
a_curve = 0
g_basepoint = (
    55066263022277343669578718895168534326250603453777594175500187360389116729240,
    32670510020758816978083085130507043184471273380659243275938904335757337482424
)

# Alice's private and public keys
alice_private_key = 17436825491055586112755527818298542034755947930418580382030036978914692463183
alice_public_key = (
    105679268965026450260338478364512614840272341529552480851333141374575362812020,
    16626610969520910407950657067133267950619549449019363437330088722436240164467
)

# Bob's private and public keys
bob_private_key = 32291818723468099298317452759803795679231875044644200373977689553806184529332
bob_public_key = (
    91972152888645730114115627070016955368567223430226022010551427574648772204461,
    38446745167120461740412855329188667802416705205856357237503216472671667494148
)

# Calculate (Alice Private + Bob Private) mod p
combined_private_key = (alice_private_key + bob_private_key) % p_curve

# Calculate combined public key
combined_public_key = "infinity"
for i in range(combined_private_key.bit_length()):
    if (combined_private_key >> i) & 1:
        combined_public_key = point_addition(combined_public_key, g_basepoint, a_curve, p_curve)

print("(Alice Private + Bob Private) * G:", combined_public_key)
print("Alice Public + Bob Public:", point_addition(alice_public_key, bob_public_key, a_curve, p_curve))

Result:

(Alice Private + Bob Private) * G: (42781960159024299958163639356878453190501432691827926213851649420102986506453, 26209845635735715128050436215405957538148584136159453271268754283021438363749)
Alice Public + Bob Public: (101985652621362431772155823262934243650512147323486167826619770748482854554391, 55338466074231142921426831718703469030196983642662166495910251269532062902125)


This is off-topic and not directly related to brute-forcing Bitcoin (BTC).
The focus here is on brute-forcing (trial-and-error guessing) BTC puzzles.
And this code is demonstration of elliptic curve cryptography operations (a combined public key from the sum of two private keys)
rather than an attempt to crack or exploit BTC.
There doesn't appear to be any straightforward way to solve the presented challenge without resorting to years of brute force.

bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
citb0in
Hero Member
*****
Offline Offline

Activity: 840
Merit: 730


Bitcoin g33k


View Profile
December 09, 2023, 11:53:57 AM
 #4115

I have digaran on ignore but it seems I see him again posting under the new user account mabdlmonem, humm?

  _      _   _       __  _          _  _   __
 |_) |  / \|/   (_  / \ | \  / |_ |_) (_ 
 |_) |_ \_/ \_ |\   __) \_/ |_ \/  |_ | \ __)
--> citb0in Solo-Mining Group <--- low stake of only 0.001 BTC. We regularly rent about 5 PH/s hash power and direct it to SoloCK pool. Wanna know more? Read through the link and JOIN NOW
nomachine
Member
**
Offline Offline

Activity: 476
Merit: 35


View Profile
December 09, 2023, 01:07:46 PM
 #4116

I have digaran on ignore but it seems I see him again posting under the new user account mabdlmonem, humm?

It really reminds me of his additions/subtractions  Grin

bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 34
Merit: 1


View Profile
December 09, 2023, 02:11:49 PM
 #4117

@nomachine, can you have this work with points without using ice? I'm just a newbie needing help, a totally stranger newbie.😂

Code:
from sympy import mod_inverse

N = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141

def ters(scalar, target):
    k = mod_inverse(2, N)
    scalar_bin = bin(scalar)[2:]
    for i in range(len(scalar_bin)):
        if scalar_bin[i] == '0':
            result = (target * k) % N
        else:
            result = ((target * k) % N + N - 57896044618658097711785492504343953926418782139537452191302581570759080747169 ) % N
        target = result
    return result

target1 = 1361129467683753853853498429727072845824
target2 = 961437616415839130310402076835011931977

print("Target results:")
for x in range(1, 256):
    result1 = ters(x, target1)
    print(f"T1: {result1:x}")
for x in range(1, 256):
    result2 = ters(x, target2)
    print(f"T2: {result2:x}")
for x in range(1, 256):
    result1 = ters(x, target1)
    result2 = ters(x, target2)
    subtraction = (result1  - result2) % N
    print(f"S: {subtraction:x}")

could you please explain what is target1 and target2 ,, range (1,256) its length ?
citb0in
Hero Member
*****
Offline Offline

Activity: 840
Merit: 730


Bitcoin g33k


View Profile
December 09, 2023, 03:30:46 PM
 #4118

I have digaran on ignore but it seems I see him again posting under the new user account mabdlmonem, humm?

It really reminds me of his additions/subtractions  Grin

yeah Wink not only that but also ...

I am just good at math but very bad at programming so I couldn't understand the code honestly

 Grin Grin

  _      _   _       __  _          _  _   __
 |_) |  / \|/   (_  / \ | \  / |_ |_) (_ 
 |_) |_ \_/ \_ |\   __) \_/ |_ \/  |_ | \ __)
--> citb0in Solo-Mining Group <--- low stake of only 0.001 BTC. We regularly rent about 5 PH/s hash power and direct it to SoloCK pool. Wanna know more? Read through the link and JOIN NOW
Woz2000
Jr. Member
*
Offline Offline

Activity: 85
Merit: 2


View Profile
December 10, 2023, 02:39:57 AM
Last edit: December 10, 2023, 11:00:01 PM by Mr. Big
 #4119

@mods: is there a rule against multiple accounts? same ip = ban???

I guess my ignore list gets a little longer.


I have digaran on ignore but it seems I see him again posting under the new user account mabdlmonem, humm?

It really reminds me of his additions/subtractions  Grin

yeah Wink not only that but also ...

I am just good at math but very bad at programming so I couldn't understand the code honestly

 Grin Grin



Unbelievable!!! The A hole sends me a PM quoting some of the rules. I've reported him to the mods, not sure if something will be done, but maybe some others that are annoyed can do the same???

@mods: is there a rule against multiple accounts? same ip = ban???

I guess my ignore list gets a little longer.


I have digaran on ignore but it seems I see him again posting under the new user account mabdlmonem, humm?

It really reminds me of his additions/subtractions  Grin

yeah Wink not only that but also ...

I am just good at math but very bad at programming so I couldn't understand the code honestly

 Grin Grin
brainless
Member
**
Offline Offline

Activity: 336
Merit: 34


View Profile
December 10, 2023, 08:08:02 AM
 #4120

Hello all, is there any python code for public key addition and checking it's hash ?
Yes, look at the iceland2k14/secp256k1 script and create your script to fit within his script.

Also, what do you mean by "checking it's hash"? H160?
Yes , hash160 . I saw his code , I am just good at math but very bad at programming so I couldn't understand the code honestly

Simplest

Code:
import sys, secrets, secp256k1 as ice
while True:
    dec = secrets.SystemRandom().randrange(36893488147419103231, 73786976294838206463)
    h160 = ice.privatekey_to_h160(1, True, dec).hex()
    message = "\r{}".format(h160);messages = []
    messages.append(message);output = "\033[01;33m" + ''.join(messages) + "\r"
    sys.stdout.write(output);sys.stdout.flush()
    if h160 == "20d45a6a762535700ce9e0b216e31994335db8a5":
        HEX = "%064x" % dec;wifc = ice.btc_pvk_to_wif(HEX)
        with open("KEYFOUNDKEYFOUND.txt", "a") as f:
          f.write(f'Private key (wif) Compressed : {wifc}\n')
        break

Thank you, but that is not what I asked for, I asked about script for public key addition, this script is for generating address from private
I am traveling, tomorrow I will post friendly script for your easy work

13sXkWqtivcMtNGQpskD78iqsgVy9hcHLF
Pages: « 1 ... 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 [206] 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 ... 327 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!