Bitcoin Forum
July 09, 2025, 10:09:01 AM *
News: Latest Bitcoin Core release: 29.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 [322] 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 ... 549 »
  Print  
Author Topic: Bitcoin puzzle transaction ~32 BTC prize to who solves it  (Read 316312 times)
kTimesG
Full Member
***
Offline Offline

Activity: 518
Merit: 130


View Profile
October 18, 2024, 10:58:18 PM
Merited by citb0in (1)
 #6421

if you use bsgs(kangaroo)

What is bsgs(kangaroo) Huh

BSGS(Kangaroo)

In the cryptic world of Elliptic Curve Land, there lived two kangaroos on a mission to solve one of Bitcoin’s deepest mysteries: finding k such that k · G = P. To be fair, no one asked kangaroos to solve the discrete logarithm problem, but that’s where we ended up. Blame cryptographers. They just really love making things unnecessarily complex.

So, we had two types of kangaroos: one Tame and one Wild, both with vastly different ideas about how to go about the job.



The Tame Kangaroo: Mr. Organized (a bit too much)

The Tame Kangaroo was the sort of kangaroo that kept spreadsheets for everything. It approached the problem with the Baby Step Giant Step (BSGS) method. Step one: methodically start from a known point and hop forward in baby steps, taking small, calculated leaps along the elliptic curve. Every step was carefully recorded in what cryptographers would call a “hash table,” but really it was just a fancy scroll of distinguished points.

Each point was a “distinguished point,” which is cryptographer-speak for "the Tame Kangaroo decided this point was important, even if no one else cares." The kangaroo filled its scroll with these, convinced that someday, all this careful planning would pay off.

“Slow and steady,” the Tame Kangaroo mumbled, hopping one tiny step at a time. Of course, slow and steady also means slow, like the kind of slow that makes you question if elliptic curves are really worth it. But the Tame Kangaroo was committed, carefully calculating every single move, knowing it was storing each of these baby steps for future reference.

Once the scroll was filled with baby steps, the Tame Kangaroo moved on to giant steps. Now, instead of inching along like a cautious librarian, it started bounding across the elliptic curve with bigger leaps. Giant steps! Progress! But of course, every few hops, the Tame Kangaroo had to stop and check its giant scroll of baby steps, making sure it wasn’t missing anything. This was still BSGS, after all. Planning was everything.



The Wild Kangaroo: Leaping Without a Plan

Meanwhile, the Wild Kangaroo couldn’t have cared less about precomputation. Baby steps? Scrolls? Giant steps? Nah, it had a different strategy: random hopping. Armed with nothing but a vague sense of direction and the Kangaroo Method, it launched itself into the curve, jumping around at random like it was trying to escape the logic of elliptic curves altogether. The Wild Kangaroo didn’t precompute anything. Why would it? If it hopped enough, surely it’d land on something important.

Now, this hopping wasn’t completely without structure. The Wild Kangaroo relied on those distinguished points—because even chaos needs occasional markers to know it’s not completely lost. Every time the Wild Kangaroo landed on one of these distinguished points, it would stop and look around, hoping the Tame Kangaroo was nearby.

“Who needs a plan when you can just bounce around until something works?” thought the Wild Kangaroo, probably mid-leap. And, honestly, it wasn’t wrong. The Wild Kangaroo’s approach was all about finding k through sheer trial and error, covering large parts of the curve quickly, and hoping the Tame Kangaroo would eventually cross paths with it.



The Moment of Collision

Both kangaroos were now bounding around the elliptic curve, one methodical, one chaotic. The Tame Kangaroo carefully hopping in giant steps, pausing to check its scroll every few leaps, and the Wild Kangaroo bouncing between distinguished points, blissfully ignoring the concept of “memory.”

And then it happened. They collided.

Right on the same distinguished point, both kangaroos landed at the exact same time. For a brief moment, they just stared at each other, both surprised that they had ended up in the same place.

“I spent days calculating every hop,” the Tame Kangaroo muttered, exhausted from all the memory management. “Giant steps, baby steps, a whole scroll of computations.”

“Oh,” said the Wild Kangaroo, scratching its head. “I just kinda… jumped around and got lucky.”

The Tame Kangaroo sighed. After all that work, the Wild Kangaroo had stumbled onto the same solution without bothering with any of the precomputation, baby steps, or giant scrolls. They both had the value of k, but only one of them had bothered to keep notes.



The Final Lesson: Kangaroo Chaos Works, Sort of

So, in the end, they both cracked the elliptic curve problem. But here’s the thing: the BSGS(Kangaroo) method works, sure, but the Kangaroo Method doesn’t care about your fancy scrolls or precomputed baby steps. It hops randomly from distinguished point to distinguished point, hoping to get lucky—and sometimes, it does.

The moral of the story? You can spend ages carefully calculating every baby step, or you can jump around without a plan. Both approaches will get you to k, but the Tame Kangaroo will be left wondering if all that meticulous planning was really worth it when the Wild Kangaroo got there by sheer dumb luck. In the world of elliptic curves, sometimes random hopping works just as well as careful thought—especially when the math is more stubborn than a kangaroo in mid-leap.

Off the grid, training pigeons to broadcast signed messages.
Akito S. M. Hosana
Jr. Member
*
Offline Offline

Activity: 350
Merit: 8


View Profile
October 18, 2024, 11:53:39 PM
 #6422

The moral of the story?

ChatGPT language analysis.

AI Indicators:
Structured Narrative: The text has a playful, somewhat formulaic narrative structure that is reminiscent of how AI might organize a story, especially when blending humor and technical content.
Consistent Voice: The tone is consistent throughout, which is typical of AI-generated content, as AI tends to maintain a steady writing style and tone.
Lack of Personal Experience or Deep Subjectivity: The text presents abstract concepts in a playful manner but doesn’t delve into personal experiences or unique subjective perspectives, which can sometimes be a giveaway of AI content.

I would estimate the likelihood of human versus AI authorship as follows:

AI-written: 60%
Human-written: 40%


I don't have the ability to directly access information about specific users like Digaran or their writing. If this is someone whose work you are familiar with, you might be able to identify their style or content based on your own knowledge of their writing patterns, but I can't definitively say whether this text was initiated by them or not.
nomachine
Full Member
***
Offline Offline

Activity: 700
Merit: 107


View Profile
October 19, 2024, 12:03:17 AM
 #6423

Hahahaha! For god's sake... how did we even get here? One minute, we're discussing technical nuances, and the next, AI-generated texts are spiraling out of control.  Roll Eyes Grin

BTC: bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
albert0bsd
Hero Member
*****
Offline Offline

Activity: 1120
Merit: 718



View Profile
October 19, 2024, 12:39:53 AM
 #6424

I would estimate the likelihood of human versus AI authorship as follows:

AI-written: 60%
Human-written: 40%

@Akito obviously it was partially or fully generated by AI. But to be Honest I really like such comparative and explanation.

@kTimesG thank you very much about your post, i am reading the papers that you linked the other day in some other topic.

@albert0bsd: why would I ever need to break my own key? I will already know it...

No, I will not try to replace the TX.

Thanks for the clarification, in that case it is going to be a really nice challenge. Sorry for spoil the public key transformation/rotation.
karrask
Newbie
*
Offline Offline

Activity: 38
Merit: 0


View Profile
October 19, 2024, 06:48:24 AM
Last edit: October 19, 2024, 07:14:15 AM by karrask
 #6425

if you use bsgs(kangaroo)

What is bsgs(kangaroo) Huh

Those are different things, ONE think is Kangaroo and another complete different thing is bsgs.
Kangaroo is much more faster because it doesn't depend of memory like BSGS does.

kangaroo can solve that challenge in less of one minute with the proper data already precomputed.
This is the choice of bsgs or kangaroo...
You are too critical of words.
by reading my comments and responding to them, you contradict what you said. You don't have much time to talk...Or am I wrong again somewhere?
Tepan
Jr. Member
*
Offline Offline

Activity: 82
Merit: 1


View Profile
October 21, 2024, 07:32:38 PM
 #6426

Puzzle #60 with a MacBook M1 Max
4.01e+03 seconds is 4010 seconds. So 1 hour and 11 minutes
I'm curious how much would it be with multithreading.

Code:
Ops: 1640142848 Table size: 25626624 Speed: 408909 ops/s
Ops: 1640964096 Table size: 25639463 Speed: 408910 ops/s
Private Key: 0xfc07a1825367bbe
Ops: 1641142272 Stored: 25642283
Speed: 408885 ops/s
Finished in 4.01e+03 s


can i try your script code ?
Kamoheapohea
Jr. Member
*
Offline Offline

Activity: 48
Merit: 12


View Profile
October 23, 2024, 06:58:14 AM
 #6427

bump lol
brainless
Member
**
Offline Offline

Activity: 391
Merit: 35


View Profile
October 24, 2024, 08:23:04 AM
 #6428

Who buy me a coffee

13sXkWqtivcMtNGQpskD78iqsgVy9hcHLF
kTimesG
Full Member
***
Offline Offline

Activity: 518
Merit: 130


View Profile
October 24, 2024, 09:48:35 AM
 #6429

Code:
Google Colab 2 CpU modify r += 7
Private Key: 0xade6d7ce3b9b
Ops: 1068032 Stored: 66716
Speed: 84669 ops/s
Finished in 12.6 s

That's just dumb luck, just as well as randomly replacing a strategic "+ 1" (a jump distance needs to be added) by "+ 7" (which has no rational explanation). So the average jump distance is 7x larger, the jump table is five times smaller (never mind that its computation is screwed up anyway), and still, puzzle 48 is found 10 times faster.

However if you try to use this "r += 7" tweak in general (or even for other 48 bit puzzles), then on average the time to solve grows many several times than expected. Some limited brains here may not agree, because of the 48-bit puzzle counter example, but it's actually expected that the time to solve actually grows, and this will always happen as soon as the average jump distance is messed around with (either making it lower or higher than the optimal value for the case of the 2-kangaroo algorithm).

You can always find some weird setup that solves a particular public key in very few steps, but it only work for that single case, while on average case the number of steps will increase. Math and probabilities can't be cheated. Even when sticking to the rules, there will always be puzzles that will be solved much faster, and puzzles that will get solved much slower, and this applies to any algorithm. We only know the average though.

Off the grid, training pigeons to broadcast signed messages.
cctv5go
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
October 24, 2024, 11:52:19 PM
 #6430

Priv#130????
Priv#125????
Who know?
COBRAS
Member
**
Offline Offline

Activity: 1130
Merit: 25


View Profile
October 25, 2024, 12:52:05 AM
 #6431

Who buy me a coffee


input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x20ec559e1efc0dfed6d56c7e38ed2e2ceb863be1a65de099e3cdbbed62bb7ee7
y 0x1d8285b9320c3f15e7c596a87aff5c 108945

y - xivided pub 120


108945 is i,  - "trick", is a number what known and for many(mybe any) privkes / pubkeys  before brute. Possible not brute fool range Grin .



y 0x1d8285b9320c3f15e7c596a87aff5c 108945



additional demo:


y 0x1621e44ae5892f506dd430fe5c3f85 8170875

input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x2bd9674194ca33570744b1b9950c9c9ef402e8b645dca52a6a915712a1d2c73e
y 0x1d8285b9320c3f15e7c596a87aff5c 10894500
input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x80b5a45a8c795201045c6aa28ca12ac5437ae3fcd66e3ccaf311c076b460f80c
y 0x24e327277e8f4edb61b6fc5299bf33 13618125


someone can calculate  what is divisor ?  Grin p.s
 I know answer.


@brainless, you steal think what if divide only one integer answer can be ?   Grin

[
digitalbear
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
October 25, 2024, 02:05:03 AM
 #6432


input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x20ec559e1efc0dfed6d56c7e38ed2e2ceb863be1a65de099e3cdbbed62bb7ee7
y 0x1d8285b9320c3f15e7c596a87aff5c 108945

y - xivided pub 120


108945 is i,  - "trick", is a number what known and for many(mybe any) privkes / pubkeys  before brute. Possible not brute fool range Grin .



y 0x1d8285b9320c3f15e7c596a87aff5c 108945



additional demo:


y 0x1621e44ae5892f506dd430fe5c3f85 8170875

input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x2bd9674194ca33570744b1b9950c9c9ef402e8b645dca52a6a915712a1d2c73e
y 0x1d8285b9320c3f15e7c596a87aff5c 10894500
input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x80b5a45a8c795201045c6aa28ca12ac5437ae3fcd66e3ccaf311c076b460f80c
y 0x24e327277e8f4edb61b6fc5299bf33 13618125


someone can calculate  what is divisor ?  Grin p.s
 I know answer.


@brainless, you steal think what if divide only one integer answer can be ?   Grin

Can you explain more here or send me a PM please?
where did you got these numbers?
puzzle 120 Public Key is 02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630
can you say what operations you did to come up with this numbers?
because I checked and 0x1d8285b9320c3f15e7c596a87aff5c is not the hex of 108945 or 10894500, without more details nobody can help

you had another post where you posted 9 lines where you need to find i to get the private key of puzzle 130 but you deleted the post...

If anyone else have other ideas I am open to discussions in PM, brainstorming, tests, scripts and team work.
b0dre
Jr. Member
*
Offline Offline

Activity: 59
Merit: 1


View Profile
October 25, 2024, 08:08:51 AM
 #6433

Who buy me a coffee


input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x20ec559e1efc0dfed6d56c7e38ed2e2ceb863be1a65de099e3cdbbed62bb7ee7
y 0x1d8285b9320c3f15e7c596a87aff5c 108945

y - xivided pub 120


108945 is i,  - "trick", is a number what known and for many(mybe any) privkes / pubkeys  before brute. Possible not brute fool range Grin .



y 0x1d8285b9320c3f15e7c596a87aff5c 108945



additional demo:


y 0x1621e44ae5892f506dd430fe5c3f85 8170875

input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x2bd9674194ca33570744b1b9950c9c9ef402e8b645dca52a6a915712a1d2c73e
y 0x1d8285b9320c3f15e7c596a87aff5c 10894500
input:
0x3b050b7264187e2bcf8b2d50f5feb8
0x80b5a45a8c795201045c6aa28ca12ac5437ae3fcd66e3ccaf311c076b460f80c
y 0x24e327277e8f4edb61b6fc5299bf33 13618125


someone can calculate  what is divisor ?  Grin p.s
 I know answer.


@brainless, you steal think what if divide only one integer answer can be ?   Grin

108945! btw is so hard to understand you sentence, check your grammars
kTimesG
Full Member
***
Offline Offline

Activity: 518
Merit: 130


View Profile
October 25, 2024, 08:37:35 AM
Merited by citb0in (1)
 #6434

... the usual non-sense ...

Can you explain more here or send me a PM please?
where did you got these numbers?
puzzle 120 Public Key is 02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630
can you say what operations you did to come up with this numbers?
because I checked and 0x1d8285b9320c3f15e7c596a87aff5c is not the hex of 108945 or 10894500, without more details nobody can help

you had another post where you posted 9 lines where you need to find i to get the private key of puzzle 130 but you deleted the post...

If anyone else have other ideas I am open to discussions in PM, brainstorming, tests, scripts and team work.


Why would you think a disfunctional illiterate and reported scammer has broken ECDLP? All the code he ever posted is pure bullshit, and everyone ignores him so that maybe he will stop spamming with all his dementia about splitting the public key and etc.

Now, think about it: if YOU were to be split in two, or four, or whatever, does any of the parts contain everything about the entire you, and I mean at the lowest possible detail? There's no such thing as "reducing" information to simplify a problem, all you get in return is having to double up on the effort to recover the information that you lost (by checking all the alternatives that you just dismissed).

We have the forum for brainstorming, unless you have some desire to create a KuKluxKlan for breaking secp256k1 or something, and we're not invited.

Off the grid, training pigeons to broadcast signed messages.
frozenen
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
October 25, 2024, 12:58:56 PM
 #6435


What do you all think #67 hex starts with?

#66 I don't believe in randomization, no one can be that lucky! also brute force from the start would of required around 700 billion keys per sec to find in 2years
I think the finder knew exactly the hex started with 2832 or had some mathematical way of working out a starting point of 283 for 000000000000000000000000000000000000000000000002832ed74f2b5e35ee
How do you think they found it?
brainless
Member
**
Offline Offline

Activity: 391
Merit: 35


View Profile
October 25, 2024, 01:13:29 PM
 #6436


What do you all think #67 hex starts with?

#66 I don't believe in randomization, no one can be that lucky! also brute force from the start would of required around 700 billion keys per sec to find in 2years
I think the finder knew exactly the hex started with 2832 or had some mathematical way of working out a starting point of 283 for 000000000000000000000000000000000000000000000002832ed74f2b5e35ee
How do you think they found it?

Real finder never exposed their finding method
Both random finding and/or mathematics all ok

13sXkWqtivcMtNGQpskD78iqsgVy9hcHLF
WanderingPhilospher
Sr. Member
****
Offline Offline

Activity: 1372
Merit: 268

Shooters Shoot...


View Profile
October 25, 2024, 01:26:47 PM
 #6437


What do you all think #67 hex starts with?

#66 I don't believe in randomization, no one can be that lucky! also brute force from the start would of required around 700 billion keys per sec to find in 2years
I think the finder knew exactly the hex started with 2832 or had some mathematical way of working out a starting point of 283 for 000000000000000000000000000000000000000000000002832ed74f2b5e35ee
How do you think they found it?

Real finder never exposed their finding method
Both random finding and/or mathematics all ok
The key was found via a pool, that had checked roughly 51% of all ranges. Which, is in line with probability averages.
So no, the pool did not know the key started with 2832, or 283, or 28, nor even a 2. It was purely, random.
nmedian
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
October 25, 2024, 06:17:02 PM
 #6438

https://www.techrxiv.org/users/837126/articles/1228731-dual-vanity-address-attack-dvaa

someone is researching new ways:)
kTimesG
Full Member
***
Offline Offline

Activity: 518
Merit: 130


View Profile
October 25, 2024, 07:07:27 PM
Last edit: October 25, 2024, 07:18:49 PM by kTimesG
 #6439


The "new way" is much slower than the privKey-to-ripemd attack which is used for address-only puzzles. Basically brute-force on steroids, nothing "advanced" as the paper claims.

Quote
The process of generating dual vanity addresses is computationally intensive, requiring massive numbers of hash calculations. If many users or attackers engage in generating such addresses, it could lead
to increased demand on network resources. Although the Bitcoin network is designed to handle high
volumes of transactions and computations, a significant surge in address generation activities could
strain node resources, potentially affecting network performance and transaction processing times.
Huh Huh Huh

Off the grid, training pigeons to broadcast signed messages.
COBRAS
Member
**
Offline Offline

Activity: 1130
Merit: 25


View Profile
October 27, 2024, 05:51:20 AM
 #6440

Code:

N = 115792089237316195423570985008687907852837564279074904382605163141518161494337

def inv(v):
    return pow(v, N-2, N)

def divnum(a, b):
    return ( (a * inv(b) ) % N )

x = 0x3b050b7264187e2bcf8b2d50f5feb5  # - 0x262794
y = 0x3b050b7264187e2bcf8b2d50f5feb5  # - 0x262794

# Specify the value of i for which you want to get the result
target_i = 99990000000000 # Replace 5000 with the desired value

# Initial value of X
X_initial = divnum(x, 99990000000000)

# Final value of X after target_i steps
X_final = (X_initial - (target_i * divnum(1, 1)) % N) % N

# Sum of all X values over target_i steps
S = divnum((target_i * (X_initial + X_final%N) %N), 2 )% N

# Final value of y
y_final = (y - S) % N

if y_final <= 2**190:
    print("input:")
    print(hex(0x3971621b0ac11b09e7741edd106f916e5))
    print("y", hex(y_final), target_i)
    print("X", hex(X_final* 99990000000000 %N))
    
    print("Xfin",((X_initial- X_final %N)%N))



code not work with pubkeys, this is little modifications need. Next time maybe, sorry

after run scrypt y = 0x1027136fb927635998880000

put y to x and y in scrypt,

target_i = 99990

Code:

N = 115792089237316195423570985008687907852837564279074904382605163141518161494337

def inv(v):
    return pow(v, N-2, N)

def divnum(a, b):
    return ( (a * inv(b) ) % N )

x = 0x1027136fb927635998880000  # - 0x262794
y = 0x1027136fb927635998880000  # - 0x262794

# Specify the value of i for which you want to get the result
target_i = 99990#000000000 # Replace 5000 with the desired value

# Initial value of X
X_initial = divnum(x, 99990000000000)

# Final value of X after target_i steps
X_final = (X_initial - (target_i * divnum(1, 1)) % N) % N

# Sum of all X values over target_i steps
S = divnum((target_i * (X_initial + X_final%N) %N), 2 )% N

# Final value of y
y_final = (y - S) % N

if y_final <= 2**190:
    print("input:")
    print(hex(0x3971621b0ac11b09e7741edd106f916e5))
    print("y", hex(y_final), target_i)
    print("X", hex(X_final* 99990000000000 %N))
    
    print("Xfin",((X_initial- X_final %N)%N))







result y = 0x1027136f73c75f4b7e15bbf2

brute y, frecover priv after



another variant:


Code:

x = 0x1027136fb927635998880000  # - 0x262794
y = 0x1027136fb927635998880000  # - 0x262794

# Specify the value of i for which you want to get the result
target_i = 99990000000000



target_i = 9999000000000#0

resukt :


0x1027136fb927635998880000
y 0xeb2eb4982170b0c69860000 9999000000000
X 0xcec0f8c941f82ae13a00000
Xfin 9999000000000


put new y to x and y in scrypt result:



input:
0xeb2eb4982170b0c69860000
y 0xd63fa5a5088552d58d10000 9999000000000
X 0xb77e7665d0f2a60e49e0000
Xfin 9999000000000

[Program finished]

etc


[
Pages: « 1 ... 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 [322] 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 ... 549 »
  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!