Bitcoin Forum
April 28, 2024, 03:35:00 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 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 »
  Print  
Author Topic: Bitcoin puzzle transaction ~32 BTC prize to who solves it  (Read 184934 times)
nomachine
Member
**
Offline Offline

Activity: 243
Merit: 12


View Profile
February 28, 2024, 09:55:57 AM
Last edit: February 28, 2024, 11:33:34 AM by nomachine
 #4541

The concept of a logarithm was invented just a few centuries ago and immediately changed engineering as we know it.

Code:
import math
from mpmath import mp

def calculate_log2(decimal_value):
    log2_value = mp.log(decimal_value, 2)
    return log2_value

def calculate_reverse_log2(log2_value):
    decimal_value = mp.power(2, log2_value)
    return decimal_value

target_numbers = [
    (1, 1), (2, 3), (3, 7), (4, 8), (5, 21), (6, 49), (7, 76), (8, 224), (9, 467), (10, 514),
    (11, 1155), (12, 2683), (13, 5216), (14, 10544), (15, 26867), (16, 51510),
    (17, 95823), (18, 198669), (19, 357535), (20, 863317), (21, 1811764),
    (22, 3007503), (23, 5598802), (24, 14428676), (25, 33185509),
    (26, 54538862), (27, 111949941), (28, 227634408), (29, 400708894),
    (30, 1033162084), (31, 2102388551), (32, 3093472814), (33, 7137437912),
    (34, 14133072157), (35, 20112871792), (36, 42387769980), (37, 100251560595),
    (38, 146971536592), (39, 323724968937), (40, 1003651412950),
    (41, 1458252205147), (42, 2895374552463), (43, 7409811047825),
    (44, 15404761757071), (45, 19996463086597), (46, 51408670348612),
    (47, 119666659114170), (48, 191206974700443), (49, 409118905032525),
    (50, 611140496167764), (51, 2058769515153876), (52, 4216495639600700),
    (53, 6763683971478124), (54, 9974455244496707), (55, 30045390491869460),
    (56, 44218742292676575), (57, 138245758910846492), (58, 199976667976342049),
    (59, 525070384258266191), (60, 1135041350219496382), (61, 1425787542618654982),
    (62, 3908372542507822062), (63, 8993229949524469768),
    (64, 17799667357578236628), (65, 30568377312064202855)
]

mp.dps = 20  # Set the high decimal precision

for ordinal, decimal_value in target_numbers:
    log2_result = calculate_log2(decimal_value)
    reverse_result = calculate_reverse_log2(log2_result)
    print(f"Puzzle:{ordinal}: Log(2) for {decimal_value} is approximately {log2_result}. Reverse calculation: {reverse_result}")

Look result of this madness:

Puzzle:1: Log(2) for 1 is approximately 0.0. Reverse calculation: 1.0
Puzzle:2: Log(2) for 3 is approximately 1.5849625007211561815. Reverse calculation: 3.0
Puzzle:3: Log(2) for 7 is approximately 2.8073549220576041074. Reverse calculation: 7.0
Puzzle:4: Log(2) for 8 is approximately 3.0. Reverse calculation: 8.0
Puzzle:5: Log(2) for 21 is approximately 4.3923174227787602889. Reverse calculation: 21.0
Puzzle:6: Log(2) for 49 is approximately 5.6147098441152082149. Reverse calculation: 49.0
Puzzle:7: Log(2) for 76 is approximately 6.2479275134435854938. Reverse calculation: 76.0
Puzzle:8: Log(2) for 224 is approximately 7.8073549220576041074. Reverse calculation: 224.0
Puzzle:9: Log(2) for 467 is approximately 8.8672787397096619133. Reverse calculation: 467.0
Puzzle:10: Log(2) for 514 is approximately 9.0056245491938781069. Reverse calculation: 514.0
Puzzle:11: Log(2) for 1155 is approximately 10.173677136303419893. Reverse calculation: 1155.0
Puzzle:12: Log(2) for 2683 is approximately 11.389631339260521112. Reverse calculation: 2683.0
Puzzle:13: Log(2) for 5216 is approximately 12.348728154231077553. Reverse calculation: 5216.0
Puzzle:14: Log(2) for 10544 is approximately 13.364134655008051742. Reverse calculation: 10544.0
Puzzle:15: Log(2) for 26867 is approximately 14.713547616912692731. Reverse calculation: 26867.0
Puzzle:16: Log(2) for 51510 is approximately 15.652564919610652675. Reverse calculation: 51510.0
Puzzle:17: Log(2) for 95823 is approximately 16.548084361224413154. Reverse calculation: 95823.0
Puzzle:18: Log(2) for 198669 is approximately 17.600007248708430135. Reverse calculation: 198669.0
Puzzle:19: Log(2) for 357535 is approximately 18.447724952285439321. Reverse calculation: 357535.0
Puzzle:20: Log(2) for 863317 is approximately 19.719530872026151871. Reverse calculation: 863317.00000000000001
Puzzle:21: Log(2) for 1811764 is approximately 20.788963611792287227. Reverse calculation: 1811764.0
Puzzle:22: Log(2) for 3007503 is approximately 21.520134745822105762. Reverse calculation: 3007503.0
Puzzle:23: Log(2) for 5598802 is approximately 22.416686729787820277. Reverse calculation: 5598802.0
Puzzle:24: Log(2) for 14428676 is approximately 23.782435585948494073. Reverse calculation: 14428676.0
Puzzle:25: Log(2) for 33185509 is approximately 24.984050066697330736. Reverse calculation: 33185509.0
Puzzle:26: Log(2) for 54538862 is approximately 25.700781261712878111. Reverse calculation: 54538862.0
Puzzle:27: Log(2) for 111949941 is approximately 26.738278526958637998. Reverse calculation: 111949941.0
Puzzle:28: Log(2) for 227634408 is approximately 27.762143403294801415. Reverse calculation: 227634408.0
Puzzle:29: Log(2) for 400708894 is approximately 28.577979290797464122. Reverse calculation: 400708894.0
Puzzle:30: Log(2) for 1033162084 is approximately 29.944419458082398243. Reverse calculation: 1033162084.0
Puzzle:31: Log(2) for 2102388551 is approximately 30.969382178280594153. Reverse calculation: 2102388551.0
Puzzle:32: Log(2) for 3093472814 is approximately 31.526580209327912218. Reverse calculation: 3093472814.0
Puzzle:33: Log(2) for 7137437912 is approximately 32.732759144627864676. Reverse calculation: 7137437912.0000000001
Puzzle:34: Log(2) for 14133072157 is approximately 33.718356052472843908. Reverse calculation: 14133072157.0
Puzzle:35: Log(2) for 20112871792 is approximately 34.22740003868583903. Reverse calculation: 20112871792.0
Puzzle:36: Log(2) for 42387769980 is approximately 35.302929017096708804. Reverse calculation: 42387769980.000000001
Puzzle:37: Log(2) for 100251560595 is approximately 36.544833738746849477. Reverse calculation: 100251560595.0
Puzzle:38: Log(2) for 146971536592 is approximately 37.096745824716051977. Reverse calculation: 146971536592.0
Puzzle:39: Log(2) for 323724968937 is approximately 38.235977688802476225. Reverse calculation: 323724968937.0
Puzzle:40: Log(2) for 1003651412950 is approximately 39.868395419757349213. Reverse calculation: 1003651412950.0
Puzzle:41: Log(2) for 1458252205147 is approximately 40.407377394423366271. Reverse calculation: 1458252205147.0
Puzzle:42: Log(2) for 2895374552463 is approximately 41.396887129359569265. Reverse calculation: 2895374552463.0
Puzzle:43: Log(2) for 7409811047825 is approximately 42.752573892536879788. Reverse calculation: 7409811047825.0
Puzzle:44: Log(2) for 15404761757071 is approximately 43.808441604030467369. Reverse calculation: 15404761757071.0
Puzzle:45: Log(2) for 19996463086597 is approximately 44.184810076602017917. Reverse calculation: 19996463086597.0
Puzzle:46: Log(2) for 51408670348612 is approximately 45.547076931749783679. Reverse calculation: 51408670348612.0
Puzzle:47: Log(2) for 119666659114170 is approximately 46.766014580697737785. Reverse calculation: 119666659114170.0
Puzzle:48: Log(2) for 191206974700443 is approximately 47.442128478217754077. Reverse calculation: 191206974700443.0
Puzzle:49: Log(2) for 409118905032525 is approximately 48.539513532885657356. Reverse calculation: 409118905032525.00001
Puzzle:50: Log(2) for 611140496167764 is approximately 49.118497410306637905. Reverse calculation: 611140496167764.0
Puzzle:51: Log(2) for 2058769515153876 is approximately 50.870703748687580964. Reverse calculation: 2058769515153876.0
Puzzle:52: Log(2) for 4216495639600700 is approximately 51.904965885818221825. Reverse calculation: 4216495639600700.0
Puzzle:53: Log(2) for 6763683971478124 is approximately 52.586730675690989872. Reverse calculation: 6763683971478124.0
Puzzle:54: Log(2) for 9974455244496707 is approximately 53.147159473916182081. Reverse calculation: 9974455244496706.9998
Puzzle:55: Log(2) for 30045390491869460 is approximately 54.737993190511333013. Reverse calculation: 30045390491869460.0
Puzzle:56: Log(2) for 44218742292676575 is approximately 55.295507509568065689. Reverse calculation: 44218742292676575.0
Puzzle:57: Log(2) for 138245758910846492 is approximately 56.940012835374135824. Reverse calculation: 138245758910846492.0
Puzzle:58: Log(2) for 199976667976342049 is approximately 57.472609298293031082. Reverse calculation: 199976667976342049.0
Puzzle:59: Log(2) for 525070384258266191 is approximately 58.865288438176815787. Reverse calculation: 525070384258266190.99
Puzzle:60: Log(2) for 1135041350219496382 is approximately 59.977450564669282481. Reverse calculation: 1135041350219496382.0
Puzzle:61: Log(2) for 1425787542618654982 is approximately 60.306464728992728608. Reverse calculation: 1425787542618654982.0
Puzzle:62: Log(2) for 3908372542507822062 is approximately 61.761273698209320329. Reverse calculation: 3908372542507822061.9
Puzzle:63: Log(2) for 8993229949524469768 is approximately 62.963545065677060031. Reverse calculation: 8993229949524469767.8
Puzzle:64: Log(2) for 17799667357578236628 is approximately 63.948484083037149251. Reverse calculation: 17799667357578236628.0
Puzzle:65: Log(2) for 30568377312064202855 is approximately 64.728673773273428832. Reverse calculation: 30568377312064202855.0

So, puzzle 66 private key is from
65.000000000000000000  log(2)
to
66.000000000000000000  log(2)


You can test puzzle 15 (or any) with this formula :

Code:
from mpmath import mp
import random
import secp256k1 as ice
import sys

def calculate_reverse_log2(log2_value):
    decimal_value = mp.power(2, log2_value)
    return decimal_value

mp.dps = 20  # Set the decimal precision to a sufficiently high value
target = "1QCbW9HWnwQWiQqVo5exhAnmfqKRrCRsvW"

while True:
    random_log2_value = mp.mpf(random.uniform(14.0, 15.0))
    reverse_result = calculate_reverse_log2(random_log2_value)
    HEX = "%064x" % int(reverse_result)
    dec = int(HEX, 16)
    caddr = ice.privatekey_to_address(0, True, dec)
    message = "[+] {}".format(dec);messages = [];messages.append(message);output = ''.join(messages) + "\r";sys.stdout.write(output);sys.stdout.flush()
    if target in caddr:
       wifc = ice.btc_pvk_to_wif(HEX)
       print(f"\n\033[32m[+] PUZZLE SOLVED: {wifc} \033[0m")
       break

Result is instant.

I can not see pattern here... Can you see ?? Grin

You can even do regression analysis


I'm lost between the size of the numbers and the precision required here . . .

There is no pattern. But it's not random either according to the polynomial analysis. There is an exact math formula for making this puzzle with some script, errors = ZERO.  With high decimal precision (mp.dps = 20 at least)
And the formula is in the creator's mind.
1714275300
Hero Member
*
Offline Offline

Posts: 1714275300

View Profile Personal Message (Offline)

Ignore
1714275300
Reply with quote  #2

1714275300
Report to moderator
1714275300
Hero Member
*
Offline Offline

Posts: 1714275300

View Profile Personal Message (Offline)

Ignore
1714275300
Reply with quote  #2

1714275300
Report to moderator
1714275300
Hero Member
*
Offline Offline

Posts: 1714275300

View Profile Personal Message (Offline)

Ignore
1714275300
Reply with quote  #2

1714275300
Report to moderator
"If you don't want people to know you're a scumbag then don't be a scumbag." -- margaritahuyan
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714275300
Hero Member
*
Offline Offline

Posts: 1714275300

View Profile Personal Message (Offline)

Ignore
1714275300
Reply with quote  #2

1714275300
Report to moderator
1714275300
Hero Member
*
Offline Offline

Posts: 1714275300

View Profile Personal Message (Offline)

Ignore
1714275300
Reply with quote  #2

1714275300
Report to moderator
kTimesG
Jr. Member
*
Offline Offline

Activity: 38
Merit: 6


View Profile
February 28, 2024, 11:35:09 AM
Merited by citb0in (1)
 #4542

Look result of this madness:

Puzzle:1: Log(2) for 1 is approximately 0.0. Reverse calculation: 1.0
...
Result is instant.

I can not see pattern here... Can you see ?? Grin
I'm lost here between the size of the numbers and the precision required here . . .
Result is instant because you know the result, this is called a verification. Otherwise on average you need precision to represent 2**n values for each range. In reality the precision needs to gradually increase according to log-scale rules. In even more reality floating points can't hold any rational numbers, just close-enough values (think about 1/3 which is impossible to represent as a non-fraction by a binary-based computer), so most likely you'll skip the value you're looking for unless you know its floating point formula (based on mantissa and exponent) can represent it exactly. High-level decimal libraries expansions can't save you from these problems.


Maybe you should define, "pure math" before I indulge in a response
Sure. Pure math is reasoning. Don't confuse that with arithmetics. Your examples are bad because 1 + 1 is the basis for subtraction, multiplication, and division. It's also the first rule in the definition of arithmetics (there exists a value 0, and every possible number x has a successor, hey, let's call that x + 1). So in a "pure math" way only an additive definition is enough, and you develop up from that. So a Riemann integral is also pure math. I really don't get where exactly you draw the line between "math" and "pure math". An EC equation is still pure math. Moving electrons in a circuit according to some principles is not math, it's physics or programming.
citb0in
Hero Member
*****
Offline Offline

Activity: 658
Merit: 656


Bitcoin g33k


View Profile
February 28, 2024, 05:39:23 PM
 #4543

Look result of this madness:

Puzzle:1: Log(2) for 1 is approximately 0.0. Reverse calculation: 1.0
...
Result is instant.

I can not see pattern here... Can you see ?? Grin
I'm lost here between the size of the numbers and the precision required here . . .
Result is instant because you know the result, this is called a verification. Otherwise on average you need precision to represent 2**n values for each range. In reality the precision needs to gradually increase according to log-scale rules. In even more reality floating points can't hold any rational numbers, just close-enough values (think about 1/3 which is impossible to represent as a non-fraction by a binary-based computer), so most likely you'll skip the value you're looking for unless you know its floating point formula (based on mantissa and exponent) can represent it exactly. High-level decimal libraries expansions can't save you from these problems.

I agree.

@nomachine:
I'm not entirely sure, but I can't see anything spectacular here. The log(2) is just a different notation. It makes no difference whether you use the range as a decimal number and generate random numbers there, or whether you use log(2). You could also chase the numbers through other algorithms, the result will always be the same. You cannot predict the range.

So what exactly did you want to show us or point out ?

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
Cryptoman2009
Newbie
*
Offline Offline

Activity: 9
Merit: 1


View Profile
February 28, 2024, 06:57:49 PM
 #4544

All wallets in the puzzle were simply created randomly within their exponent.
There is no point in engaging in any type of hypothesis/study.

This is my opinion.
ccinet
Newbie
*
Offline Offline

Activity: 38
Merit: 0


View Profile
February 28, 2024, 08:34:12 PM
 #4545

All wallets in the puzzle were simply created randomly within their exponent.
There is no point in engaging in any type of hypothesis/study.

This is my opinion.

I totally agree, look at the % of the Range column

#puzzle  Private Key Range                  Private Key                 % of the Range
-----------------------------------------------------------------------------------------
1     1...1 (2^0...2^1-1)                                  1                   --> 100%
2     2...3 (2^1...2^2-1)                                  3                   --> 100%
3     4...7 (2^2...2^3-1)                                  7                   --> 100%
4     8...f (2^3...2^4-1)                                  8                   --> 0%
5     10...1f (2^4...2^5-1)                                15                  --> 33.33%
6     20...3f (2^5...2^6-1)                                31                  --> 54.84%
7     40...7f (2^6...2^7-1)                                4c                  --> 19.05%
8     80...ff (2^7...2^8-1)                                e0                  --> 75.59%
9     100...1ff (2^8...2^9-1)                              1d3                 --> 82.75%
10   200...3ff (2^9...2^10-1)                             202                 --> 0.39%
11   400...7ff (2^10...2^11-1)                            483                 --> 12.81%
12   800...fff (2^11...2^12-1)                            a7b                 --> 31.02%
13   1000...1fff (2^12...2^13-1)                          1460                --> 27.35%
14   2000...3fff (2^13...2^14-1)                          2930                --> 28.71%
15   4000...7fff (2^14...2^15-1)                          68f3                --> 63.99%
16   8000...ffff (2^15...2^16-1)                          c936                --> 57.2^%
17   10000...1ffff (2^16...2^17-1)                        1764f               --> 46.2^1%
18   20000...3ffff (2^17...2^18-1)                        3080d               --> 51.57%
19   40000...7ffff (2^18...2^19-1)                        5749f               --> 36.39%
20   80000...fffff (2^19...2^20-1)                        d2c55               --> 64.66%
21   100000...1fffff (2^20...2^21-1)                      1ba534              --> 72.78%
22   200000...3fffff (2^21...2^22-1)                      2de40f              --> 43.41%
23   400000...7fffff (2^22...2^23-1)                      556e52              --> 33.49%
24   800000...ffffff (2^23...2^24-1)                      dc2a04              --> 72%
25   1000000...1ffffff (2^24...2^25-1)                    1fa5ee5             --> 97.8%
26   2000000...3ffffff (2^25...2^26-1)                    340326e             --> 62.54%
27   4000000...7ffffff (2^26...2^27-1)                    6ac3875             --> 66.82%
28   8000000...fffffff (2^27...2^28-1)                    d916ce8             --> 69.6%
29   10000000...1fffffff (2^28...2^29-1)                  17e2551e            --> 49.2^8%
30   20000000...3fffffff (2^29...2^30-1)                  3d94cd64            --> 92.44%
31   40000000...7fffffff (2^30...2^31-1)                  7d4fe747            --> 95.8%
32   80000000...ffffffff (2^31...2^32-1)                  b862a62e            --> 44.05%
33   100000000...1ffffffff (2^32...2^33-1)                1a96ca8d8           --> 66.18%
34   200000000...3ffffffff (2^33...2^34-1)                34a65911d           --> 64.53%
35   400000000...7ffffffff (2^34...2^35-1)                4aed21170           --> 17.07%
36   800000000...fffffffff (2^35...2^36-1)                9de820a7c           --> 23.36%
37   1000000000...1fffffffff (2^36...2^37-1)              1757756a93          --> 45.89%
38   2000000000...3fffffffff (2^37...2^38-1)              22382facd0          --> 6.94%
39   4000000000...7fffffffff (2^38...2^39-1)              4b5f8303e9          --> 17.77%
40   8000000000...ffffffffff (2^39...2^40-1)              e9ae4933d6          --> 82.56%
41   10000000000...1ffffffffff (2^40...2^41-1)            153869acc5b         --> 32.63%
42   20000000000...3ffffffffff (2^41...2^42-1)            2a221c58d8f         --> 31.67%
43   40000000000...7ffffffffff (2^42...2^43-1)            6bd3b27c591         --> 68.48%
44   80000000000...fffffffffff (2^43...2^44-1)            e02b35a358f         --> 75.13%
45   100000000000...1fffffffffff (2^44...2^45-1)          122fca143c05        --> 13.67%
46   200000000000...3fffffffffff (2^45...2^46-1)          2ec18388d544        --> 46.11%
47   400000000000...7fffffffffff (2^46...2^47-1)          6cd610b53cba        --> 70.06%
48   800000000000...ffffffffffff (2^47...2^48-1)          ade6d7ce3b9b        --> 35.86%
49   1000000000000...1ffffffffffff (2^48...2^49-1)        174176b015f4d       --> 45.35%
50   2000000000000...3ffffffffffff (2^49...2^50-1)        22bd43c2e9354       --> 8.56%
51   4000000000000...7ffffffffffff (2^50...2^51-1)        75070a1a009d4       --> 82.86%
52   8000000000000...fffffffffffff (2^51...2^52-1)        efae164cb9e3c       --> 87.2^5%
53   10000000000000...1fffffffffffff (2^52...2^53-1)      180788e47e326c      --> 50.18%
54   20000000000000...3fffffffffffff (2^53...2^54-1)      236fb6d5ad1f43      --> 10.74%
55   40000000000000...7fffffffffffff (2^54...2^55-1)      6abe1f9b67e114      --> 66.79%
56   80000000000000...ffffffffffffff (2^55...2^56-1)      9d18b63ac4ffdf      --> 22.73%
57   100000000000000...1ffffffffffffff (2^56...2^57-1)    1eb25c90795d61c     --> 91.85%
58   200000000000000...3ffffffffffffff (2^57...2^58-1)    2c675b852189a21     --> 38.76%
59   400000000000000...7ffffffffffffff (2^58...2^59-1)    7496cbb87cab44f     --> 82.17%
60   800000000000000...fffffffffffffff (2^59...2^60-1)    fc07a1825367bbe     --> 96.9%
61   1000000000000000...1fffffffffffffff (2^60...2^61-1)  13c96a3742f64906    --> 23.67%
62   2000000000000000...3fffffffffffffff (2^61...2^62-1)  363d541eb611abee    --> 69.5%
63   4000000000000000...7fffffffffffffff (2^62...2^63-1)  7cce5efdaccf6808    --> 95.01%
64   8000000000000000...ffffffffffffffff (2^63...2^64-1)  f7051f27b09112d4    --> 92.98%
65   10000000000000000...1ffffffffffffffff (2^64...2^65-1)1a838b13505b26867   --> 65.71%
                                                           
Cryptoman2009
Newbie
*
Offline Offline

Activity: 9
Merit: 1


View Profile
February 28, 2024, 09:14:13 PM
 #4546

All wallets in the puzzle were simply created randomly within their exponent.
There is no point in engaging in any type of hypothesis/study.

This is my opinion.

I totally agree, look at the % of the Range column

#puzzle  Private Key Range                  Private Key                 % of the Range
-----------------------------------------------------------------------------------------
1     1...1 (2^0...2^1-1)                                  1                   --> 100%
2     2...3 (2^1...2^2-1)                                  3                   --> 100%
3     4...7 (2^2...2^3-1)                                  7                   --> 100%
4     8...f (2^3...2^4-1)                                  8                   --> 0%
...........................
                                                           

I see that I'm not the only one who made this table :-)

best way to search with keyhunt is to go for sectors of 5% each randomly.
Maybe starting from the end between 100%-95% and 95%-90% of the range.....
satashi_nokamato
Jr. Member
*
Offline Offline

Activity: 48
Merit: 2


View Profile
February 28, 2024, 10:16:45 PM
 #4547

Pure math is reasoning
What do you know about math?  if you know how to solve a key by using pure math,  then this is for you if you know things.
We have 4 points and 4 scalar, 3 points are unknown but they do relate to all 4 scalar keys. Can you point out a hint as to how we can solve any of the 3 points?

Here are our 3 points
Code:
P1=
03f4bef7834ec36e40f1c007a4c27c2f7d2ded709fda3333fdd5801625736ed152
P2=
03389523df912b20e7f5b2223f50a3e074551d3859487701d9e6297b950c9a78ea
P3=
032b0d9abd02f210631ca0fdf138a19c6725f6b67f2dba6c22bf181c73e81abd08
Here are 4 scalar
Code:
A1=
0x1c16e0f93f27c98dfa5
A2=
0x3f6feeff01e9e8d265
A3=
0x181fe2094f092b00d40
A4=
0x200ddfe92f46681b20a
P1+P2= A4, P2-P1= P3, P3-A4= P2*2, P1-A4/2= P3/2.
Here is the trick, A1, A2 and A3 point to different public keys,  however if we subtract A1-1 from P1, subtract A2-1 from P2 and add the results,  we would get 2, which means P1 and P2 are close they are also close to P3 because half of A4 subtracted from P1 equals half of P3.  This is pure math,  but how can we solve any of the 3 points while we only have A4 and why A1, A2 and A3 behave similar to our 3 points?  They are in close range with each other but where are they exactly?
nomachine
Member
**
Offline Offline

Activity: 243
Merit: 12


View Profile
February 29, 2024, 08:06:17 AM
Last edit: February 29, 2024, 08:31:50 AM by nomachine
 #4548


So what exactly did you want to show us or point out ?

I believe there is a formula that can solve all puzzles at once.  I'm not kidding.
Logarithms and polynomials are in play. But I can't prove it. It's a matter of belief for now.

The complexity is great. Maybe lifetime won't be enough Grin
9TONNN
Copper Member
Newbie
*
Offline Offline

Activity: 73
Merit: 0


View Profile
February 29, 2024, 09:46:01 AM
 #4549

It could be an instance of a successful lattice attack on someone's wallet. Looks like a trail of transactions after the successful hack. I am not sure though.


Hi guys,

In continuation to this thread: https://bitcointalk.org/index.php?topic=1305887.0

While playing around with my bot, I found out this mysterious transaction:

https://blockchain.info/tx/08389f34c98c606322740c0be6a7125d9860bb8d5cb182c02f98461e5fa6cd15

those 32.896 BTC were sent to multiple addresses, all the private keys of those addresses seem to be generated by some kind of formula.

For example:

Address 2:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU74sHUHy8S
1CUNEBjYrCn2y1SdiUMohaKUi4wpP326Lb
Biginteger PVK value: 3
Hex PVK value: 3

Address 3:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU76rnZwVdz
19ZewH8Kk1PDbSNdJ97FP4EiCjTRaZMZQA
Biginteger PVK value: 7
Hex PVK value: 7

Address 4:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU77MfhviY5
1EhqbyUMvvs7BfL8goY6qcPbD6YKfPqb7e
Biginteger PVK value: 8
Hex PVK value: 8

Address 5:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU7Dq8Au4Pv
1E6NuFjCi27W5zoXg8TRdcSRq84zJeBW3k
Biginteger PVK value: 21
Hex PVK value: 15

Address 6:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU7Tmu6qHxS
1PitScNLyp2HCygzadCh7FveTnfmpPbfp8
Biginteger PVK value: 49
Hex PVK value: 31

Address 7:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU7hDgvu64y
1McVt1vMtCC7yn5b9wgX1833yCcLXzueeC
Biginteger PVK value: 76
Hex PVK value: 4C

Address 8:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU8xvGK1zpm
1M92tSqNmQLYw33fuBvjmeadirh1ysMBxK
Biginteger PVK value: 224
Hex PVK value: E0

Address 9:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFUB3vfDKcxZ
1CQFwcjw1dwhtkVWBttNLDtqL7ivBonGPV
Biginteger PVK value: 467
Hex PVK value: 1d3

Address 10:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFUBTL67V6dE
1LeBZP5QCwwgXRtmVUvTVrraqPUokyLHqe
Biginteger PVK value: 514
Hex PVK value: 202

Address 11:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFUGxXgtm63M
1PgQVLmst3Z314JrQn5TNiys8Hc38TcXJu
Biginteger PVK value: 1155
Hex PVK value: 483

Address 12:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFUW5RtS2JN1
1DBaumZxUkM4qMQRt2LVWyFJq5kDtSZQot
Biginteger PVK value: 2683
Hex PVK value: a7b

Address 13:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFUspniiQZds
1Pie8JkxBT6MGPz9Nvi3fsPkr2D8q3GBc1
Biginteger PVK value: 5216
Hex PVK value: 1460

Address 14:

KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFVfZyiN5iEG
1ErZWg5cFCe4Vw5BzgfzB74VNLaXEiEkhk
Biginteger PVK value: 10544
Hex PVK value: 2930

and so on...

until the addresses 50 (1MEzite4ReNuWaL5Ds17ePKt2dCxWEofwk) it was already cracked by someone.

Any ideas what's the formula behind the generation of these addresses?

Address 2, pvk decimal value: 3
Address 3, pvk decimal value: 7
Address 4, pvk decimal value: 8
Address 5, pvk decimal value: 21
Address 6, pvk decimal value: 49
Address 7, pvk decimal value: 76
Address 8, pvk decimal value: 224
Address 9, pvk decimal value: 467
Address 10, pvk decimal value: 514
Address 11, pvk decimal value: 1155
Address 12, pvk decimal value: 2683
Address 13, pvk decimal value: 5216
Address 14, pvk decimal value: 10544
Address 15 and after, pvk decimal value: ?

The prize would be ~32 BTC Smiley

EDIT: If you find the solution feel free to leave a tip Smiley 1DPUhjHvd2K4ZkycVHEJiN6wba79j5V1u3
AzizLeBG
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
February 29, 2024, 07:14:35 PM
 #4550

Pure math is reasoning
What do you know about math?  if you know how to solve a key by using pure math,  then this is for you if you know things.
We have 4 points and 4 scalar, 3 points are unknown but they do relate to all 4 scalar keys. Can you point out a hint as to how we can solve any of the 3 points?

Here are our 3 points
Code:
P1=
03f4bef7834ec36e40f1c007a4c27c2f7d2ded709fda3333fdd5801625736ed152
P2=
03389523df912b20e7f5b2223f50a3e074551d3859487701d9e6297b950c9a78ea
P3=
032b0d9abd02f210631ca0fdf138a19c6725f6b67f2dba6c22bf181c73e81abd08
Here are 4 scalar
Code:
A1=
0x1c16e0f93f27c98dfa5
A2=
0x3f6feeff01e9e8d265
A3=
0x181fe2094f092b00d40
A4=
0x200ddfe92f46681b20a
P1+P2= A4, P2-P1= P3, P3-A4= P2*2, P1-A4/2= P3/2.
Here is the trick, A1, A2 and A3 point to different public keys,  however if we subtract A1-1 from P1, subtract A2-1 from P2 and add the results,  we would get 2, which means P1 and P2 are close they are also close to P3 because half of A4 subtracted from P1 equals half of P3.  This is pure math,  but how can we solve any of the 3 points while we only have A4 and why A1, A2 and A3 behave similar to our 3 points?  They are in close range with each other but where are they exactly?


Pure math is reasoning
What do you know about math?  if you know how to solve a key by using pure math,  then this is for you if you know things.
We have 4 points and 4 scalar, 3 points are unknown but they do relate to all 4 scalar keys. Can you point out a hint as to how we can solve any of the 3 points?

Here are our 3 points
Code:
P1=
03f4bef7834ec36e40f1c007a4c27c2f7d2ded709fda3333fdd5801625736ed152
P2=
03389523df912b20e7f5b2223f50a3e074551d3859487701d9e6297b950c9a78ea
P3=
032b0d9abd02f210631ca0fdf138a19c6725f6b67f2dba6c22bf181c73e81abd08
Here are 4 scalar
Code:
A1=
0x1c16e0f93f27c98dfa5
A2=
0x3f6feeff01e9e8d265
A3=
0x181fe2094f092b00d40
A4=
0x200ddfe92f46681b20a
P1+P2= A4, P2-P1= P3, P3-A4= P2*2, P1-A4/2= P3/2.
Here is the trick, A1, A2 and A3 point to different public keys,  however if we subtract A1-1 from P1, subtract A2-1 from P2 and add the results,  we would get 2, which means P1 and P2 are close they are also close to P3 because half of A4 subtracted from P1 equals half of P3.  This is pure math,  but how can we solve any of the 3 points while we only have A4 and why A1, A2 and A3 behave similar to our 3 points?  They are in close range with each other but where are they exactly?



It seems you're dealing with elliptic curve cryptography (ECC) where you have points on a curve and scalar multiplication operations. From your provided information, you have points P1, P2, and P3, as well as scalars A1, A2, A3, and A4.

Your hint suggests that A1, A2, and A3 are related to P1, P2, and P3 respectively, in a way that when you subtract 1 from each scalar and subtract that from its corresponding point, adding the results gives you 2. This indicates that P1, P2, and P3 are likely related to A1-1, A2-1, and A3-1 respectively in some manner.

The relationship between P1, P2, and P3 is also given in terms of scalar operations involving A4. From the relationships provided:

P1 + P2 = A4:

If you add point P1 and point P2 together on the elliptic curve, you get the point A4.
P2 - P1 = P3:

If you subtract point P1 from point P2 on the elliptic curve, you get the point P3.
P3 - A4 = 2P2:

If you subtract point A4 from point P3 on the elliptic curve, you get twice the value of point P2.
P1 - (A4 / 2) = (P3 / 2):

If you subtract half of the value of A4 from point P1 on the elliptic curve, you get half of point P3.
 
Given only A4 and these relationships, it's possible to find the coordinates of at least one of the points P1, P2, or P3 by performing scalar operations with A4.

To find the exact coordinates of the points P1, P2, and P3, you can use scalar multiplication operations on a known base point on the elliptic curve, which is usually provided in ECC. By performing scalar multiplication operations with A4 and using the provided relationships, you can compute the coordinates of at least one of the points. Once you have the coordinates of one point, you can use the relationships between the points to deduce the coordinates of the others.

citb0in
Hero Member
*****
Offline Offline

Activity: 658
Merit: 656


Bitcoin g33k


View Profile
February 29, 2024, 08:19:43 PM
Merited by albert0bsd (1)
 #4551

What do you know about math?  if you know how to solve a key by using pure math,  then this is for you if you know things.
...,  however if we subtract A1-1 from P1, subtract A2-1 from P2 and add the results,  we would get 2, which means P1 and P2 are close they are also close to P3 because half of A4 subtracted from P1 equals half of P3.  This is pure math, ...

...
If you subtract point P1 from point P2 on the elliptic curve, you get the point P3.
P3 - A4 = 2P2:

If you subtract point A4 from point P3 on the elliptic curve, you get twice the value of point P2.
P1 - (A4 / 2) = (P3 / 2):

If you subtract half of the value of A4 from point P1 on the elliptic curve, you get half of point P3.
 
...

@Digaran: are you not tired creating new accounts and talk to yourself? Why not substracting yourself from this thread?
stop acting like God or Satoshi Nakamoto, you are neither a Satoshi nor a Nakamoto but universes away from it. Please stop spamming the thread with nonsense. Two more users on the ignore list...

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
satashi_nokamato
Jr. Member
*
Offline Offline

Activity: 48
Merit: 2


View Profile
March 01, 2024, 12:10:20 PM
 #4552

you can compute the coordinates of at least one of the points
Thanks for the reply,  all I need now is to figure out which one from P1 and P2 is inverse,  definitely one of them is negative,  given that I know the original range from where I started my calculations,  it should be easy to work out the nearest point to one of the above points.
I understand that P1 could be a number like 600, then P2 could be a number like 50, having just 550 as their distance is enough on it's own if I can guess which one is my known scalar to solve one of the points.
cujo10226
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
March 03, 2024, 12:20:32 PM
 #4553

How about binary Tetris Smiley any pattern from the binary notations of the pks?

https://i.ibb.co/c6m2fTq/Screenshot-2024-03-03-at-13-11-49.png


https://i.ibb.co/8xJKNt0/Screenshot-2024-03-03-at-13-11-29.png


https://i.ibb.co/ySsySq7/Screenshot-2024-03-03-at-13-11-03.png

isellkarma
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
March 03, 2024, 01:10:48 PM
 #4554

COMP MODE    : COMPRESSED
COIN TYPE    : BITCOIN
SEARCH MODE  : Single Address
DEVICE       : GPU
CPU THREAD   : 0
GPU IDS      : 0
GPU GRIDSIZE : 256x256
SSE          : YES
RKEY         : 5 Mkeys
MAX FOUND    : 65536
BTC ADDRESS  : 13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so
OUTPUT FILE  : Found.txt

Start Time   : Sun Mar  3 09:55:18 2024
Base Key     : Randomly changes on every 5 Mkeys
Global start : 20000000000000000 (66 bit)
Global end   : 3FFFFFFFFFFFFFFFF (66 bit)
Global range : 1FFFFFFFFFFFFFFFF (65 bit)

Can someone answer me one question? I'm having trouble understanding how RKEY works (I'm new). My guess is that it has a Base key then goes from there and tries 5m keys and then changes the base key to a random one within the range and goes through another 5m keys? Correct?
WanderingPhilospher
Full Member
***
Offline Offline

Activity: 1050
Merit: 219

Shooters Shoot...


View Profile
March 03, 2024, 03:40:21 PM
 #4555

COMP MODE    : COMPRESSED
COIN TYPE    : BITCOIN
SEARCH MODE  : Single Address
DEVICE       : GPU
CPU THREAD   : 0
GPU IDS      : 0
GPU GRIDSIZE : 256x256
SSE          : YES
RKEY         : 5 Mkeys
MAX FOUND    : 65536
BTC ADDRESS  : 13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so
OUTPUT FILE  : Found.txt

Start Time   : Sun Mar  3 09:55:18 2024
Base Key     : Randomly changes on every 5 Mkeys
Global start : 20000000000000000 (66 bit)
Global end   : 3FFFFFFFFFFFFFFFF (66 bit)
Global range : 1FFFFFFFFFFFFFFFF (65 bit)

Can someone answer me one question? I'm having trouble understanding how RKEY works (I'm new). My guess is that it has a Base key then goes from there and tries 5m keys and then changes the base key to a random one within the range and goes through another 5m keys? Correct?

No, this looks like key-hunt cuda, therefore, there is no basekey.

The program generates x amount of random points within the given range, based on your GPU grid size.

In your example, 256x256 is your grid size so the program generates 65,536 random points. Now, from there the program starts adding to each random point, in a sequential manner, until the RKEY number is reached. Once the RKEY number is reached, the program generates 65,536 new random points, and repeats the process. In your example, 5 MKeys is the rekey number.

So from each random point, the program will check 76 sequential points from each random point, before a rekey. 5,000,000 / 65,536 = 76.

Make sense?
isellkarma
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
March 03, 2024, 04:17:10 PM
 #4556

COMP MODE    : COMPRESSED
COIN TYPE    : BITCOIN
SEARCH MODE  : Single Address
DEVICE       : GPU
CPU THREAD   : 0
GPU IDS      : 0
GPU GRIDSIZE : 256x256
SSE          : YES
RKEY         : 5 Mkeys
MAX FOUND    : 65536
BTC ADDRESS  : 13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so
OUTPUT FILE  : Found.txt

Start Time   : Sun Mar  3 09:55:18 2024
Base Key     : Randomly changes on every 5 Mkeys
Global start : 20000000000000000 (66 bit)
Global end   : 3FFFFFFFFFFFFFFFF (66 bit)
Global range : 1FFFFFFFFFFFFFFFF (65 bit)

Can someone answer me one question? I'm having trouble understanding how RKEY works (I'm new). My guess is that it has a Base key then goes from there and tries 5m keys and then changes the base key to a random one within the range and goes through another 5m keys? Correct?

No, this looks like key-hunt cuda, therefore, there is no basekey.

The program generates x amount of random points within the given range, based on your GPU grid size.

In your example, 256x256 is your grid size so the program generates 65,536 random points. Now, from there the program starts adding to each random point, in a sequential manner, until the RKEY number is reached. Once the RKEY number is reached, the program generates 65,536 new random points, and repeats the process. In your example, 5 MKeys is the rekey number.

So from each random point, the program will check 76 sequential points from each random point, before a rekey. 5,000,000 / 65,536 = 76.

Make sense?
Yes. Thank you!
pbies
Full Member
***
Offline Offline

Activity: 244
Merit: 126



View Profile
March 03, 2024, 07:46:06 PM
 #4557

I believe there is a formula that can solve all puzzles at once.  I'm not kidding.
Logarithms and polynomials are in play. But I can't prove it. It's a matter of belief for now.

The complexity is great. Maybe lifetime won't be enough Grin

I also think that too.

Maybe some HD wallet with some specific parameters...

There should be an algorithm.

BTC: bc1qmrexlspd24kevspp42uvjg7sjwm8xcf9w86h5k
I have 9900K and 1080 Ti, gathering funds for new desktop PC for Bitcoin operations - 14900K and RTX 4090
ccinet
Newbie
*
Offline Offline

Activity: 38
Merit: 0


View Profile
March 03, 2024, 09:20:45 PM
 #4558

The concept of a logarithm was invented just a few centuries ago and immediately changed engineering as we know it.

You can even do regression analysis
https://i.ibb.co/jJYVpd6/Figure-1.png

I'm lost between the size of the numbers and the precision required here . . .

There is no pattern. But it's not random either according to the polynomial analysis. There is an exact math formula for making this puzzle with some script, errors = ZERO.  With high decimal precision (mp.dps = 20 at least)
And the formula is in the creator's mind.

Viewing it at that level of precision, it obviously corresponds to a regression line corresponding to 2^n.
The problem comes when inferring where the private address falls in the range 2^n-1 -2^n when n>50, in this case if a random pattern exists here it will be very difficult to find it in the range.
However, a prediction with linear regression can give us a clue that could be +15% -15% or 30% of the predicted value, which in the case of the range for bit 66 and greater is still an astronomical number.
mckemo
Newbie
*
Offline Offline

Activity: 15
Merit: 0


View Profile
March 04, 2024, 07:08:34 AM
 #4559

there is no pattern.
i can exactly tell you why:

The creator of the puzzle posted already, that he created a wallet and masked the keys to match in the key range with 0
Therefore 256 adresses have been generated and he just put as many 000 to fit in. So it is kinda random.
No rythm, no nothing involved.
AndrewWeb
Jr. Member
*
Offline Offline

Activity: 43
Merit: 1


View Profile
March 04, 2024, 10:44:32 PM
 #4560

there is no pattern.
i can exactly tell you why:

The creator of the puzzle posted already, that he created a wallet and masked the keys to match in the key range with 0
Therefore 256 adresses have been generated and he just put as many 000 to fit in. So it is kinda random.
No rythm, no nothing involved.

Not even something unintentional ?
Pages: « 1 ... 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 »
  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!