Next scheduled rescrape ... never
Version 1
Last scraped
Scraped on 06/05/2025, 20:57:33 UTC
self-evolving seeds. Grin

This is the first time I'm hearing that term. What does it mean—like a DNA chain or something?

The challenge here is automating the expansion of the prefix. Each time a valid seed is found, i take a portion of its bytes as the new constant prefix. The key steps are:

1. Iteratively build up the constant prefix.
2. For each iteration, search for a seed with the current prefix followed by random bytes that produces a dec starting with the target string.
3. Once found, expand the prefix by taking some bytes from the found seed.
4. Repeat until the target string's required length is matched or no progress is made.

For example

Code:
import random, os
puzzle = 65
lower_range_limit = 2 ** (puzzle - 1)
upper_range_limit = (2 ** puzzle) - 1
for x in range(1000000000000):
 constant_prefix = b''
 prefix_length = len(constant_prefix)
 length = 9
 ending_length = length - prefix_length
 ending_bytes = os.urandom(ending_length)
 random_bytes = constant_prefix + ending_bytes
 random.seed(random_bytes)
 dec = random.randint(lower_range_limit, upper_range_limit)
 if str(dec).startswith("3056"):
  print(dec, random_bytes)
  break

Define the target decimal string as "30568377312064202855".
Start with an empty prefix.
Start with a target prefix length of 4 .
In each iteration:
Generate random seeds with current prefix + random bytes to make up total length (fixed to 9 bytes).
For each seed, set the random state and generate dec.
Check if dec starts with current target prefix.
If found, extract the seed bytes used.
Extend the constant prefix by taking additional bytes from the beginning of the seed.
Increase the target prefix length (e.g., add 2 digits each time if possible).
Repeat until target prefix reaches 10 digits or more, or no solution found.

So the first target is "3056", then "30568", then "305683", etc., up to at least 10 digits.

Then hit the next puzzle. Keep going in a loop till you land on the same seed for three of 'em.
Coming up with a script to automate that is a real pain to brainstorm.. Grin
Original archived Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
Scraped on 29/04/2025, 20:57:16 UTC
self-evolving seeds. Grin

This is the first time I'm hearing that term. What does it mean—like a DNA chain or something?

The challenge here is automating the expansion of the prefix. Each time a valid seed is found, i take a portion of its bytes as the new constant prefix. The key steps are:

1. Iteratively build up the constant prefix.
2. For each iteration, search for a seed with the current prefix followed by random bytes that produces a dec starting with the target string.
3. Once found, expand the prefix by taking some bytes from the found seed.
4. Repeat until the target string's required length is matched or no progress is made.

For example

Code:
import random, os
puzzle = 65
lower_range_limit = 2 ** (puzzle - 1)
upper_range_limit = (2 ** puzzle) - 1
for x in range(1000000000000):
 constant_prefix = b''
 prefix_length = len(constant_prefix)
 length = 9
 ending_length = length - prefix_length
 ending_bytes = os.urandom(ending_length)
 random_bytes = constant_prefix + ending_bytes
 random.seed(random_bytes)
 dec = random.randint(lower_range_limit, upper_range_limit)
 if str(dec).startswith("3056"):
  print(dec, random_bytes)
  break

Define the target decimal string as "30568377312064202855".
Start with an empty prefix.
Start with a target prefix length of 4 .
In each iteration:
Generate random seeds with current prefix + random bytes to make up total length (fixed to 9 bytes).
For each seed, set the random state and generate dec.
Check if dec starts with current target prefix.
If found, extract the seed bytes used.
Extend the constant prefix by taking additional bytes from the beginning of the seed.
Increase the target prefix length (e.g., add 2 digits each time if possible).
Repeat until target prefix reaches 10 digits or more, or no solution found.

So the first target is "3056", then "30568", then "305683", etc., up to at least 10 digits.

Then hit the next puzzle. Keep going in a loop till you land on the same seed for three of 'em.
Coming up with a script to automate that is a real pain to brainstorm.. Grin