Bitcoin Forum
May 01, 2026, 07:15:50 AM *
News: Latest Bitcoin Core release: 30.2 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 [496] 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 ... 657 »
  Print  
Author Topic: Bitcoin puzzle transaction ~32 BTC prize to who solves it  (Read 382596 times)
teguh54321
Jr. Member
*
Offline Offline

Activity: 144
Merit: 1


View Profile
May 05, 2025, 05:38:34 PM
 #9901



So puzzle 71 start with 0x6....   ? 😅

I dont count , just copy all ur method to chat gpt and deep research to predict 71. It said 0x6... 😅😅😅🙃


No. He told me it starts with
0x7dd...  Tongue
🤣🤣🤣🤣🤣🙏
Akito S. M. Hosana
Jr. Member
*
Offline Offline

Activity: 434
Merit: 8


View Profile
May 05, 2025, 05:45:07 PM
 #9902



So puzzle 71 start with 0x6....   ? 😅

I dont count , just copy all ur method to chat gpt and deep research to predict 71. It said 0x6... 😅😅😅🙃


No. He told me it starts with
0x7dd...  Tongue
🤣🤣🤣🤣🤣🙏

It's not funny. Can anyone solve, say, puzzle 50 in Python in 10 seconds?  Tongue
nomachine
Full Member
***
Offline Offline

Activity: 826
Merit: 135



View Profile
May 05, 2025, 06:17:58 PM
Last edit: May 06, 2025, 09:52:48 PM by nomachine
 #9903

Can anyone solve, say, puzzle 50 in Python in 10 seconds?  Tongue

Why does it have to be Puzzle 50? Of course I can — but I'll use a random seed.

Code:
import time
import os
import sys
import random
import gmpy2
import multiprocessing
from math import log2, sqrt, log
from multiprocessing import Pool, cpu_count

os.system("cls||clear")
t = time.ctime()
sys.stdout.write(f"\033[?25l")
sys.stdout.write(f"\033[01;33m[+]\033[32m KANGAROO: \033[01;33m{t}\n")
sys.stdout.flush()

modulo = gmpy2.mpz(0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F)
Gx = gmpy2.mpz(0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798)
Gy = gmpy2.mpz(0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8)
PG = (Gx, Gy)

Z = (0, 0)  # zero-point, infinite in real x, y - plane

def add(P, Q, p=modulo):
    Px, Py = P
    Qx, Qy = Q
    if P == Z:
        return Q
    elif Q == Z:
        return P
    elif Px == Qx and (Py != Qy or Py == 0):
        return Z
    elif Px == Qx:
        m = (3 * Px * Px) * gmpy2.invert(2 * Py, p) % p
    else:
        m = (Qy - Py) * gmpy2.invert(Qx - Px, p) % p
   
    x = (m * m - Px - Qx) % p
    y = (m * (Px - x) - Py) % p
    return (x, y)


def mul2(P, p=modulo):
    Px, Py = P
    if P == Z:
        return Z
    m = gmpy2.f_mod(3 * Px * Px * gmpy2.invert(2 * Py, p), p)
    x = gmpy2.f_mod(m * m - 2 * Px, p)
    y = gmpy2.f_mod(m * (Px - x) - Py, p)
    return (x, y)

def mulk(k, P=PG, p=modulo):
    if k == 0:
        return Z
    elif k == 1:
        return P
    elif k % 2 == 0:
        return mulk(k // 2, mul2(P, p), p)
    else:
        return add(P, mulk((k - 1) // 2, mul2(P, p), p), p)

def X2Y(X, y_parity, p=modulo):
    X_cubed = gmpy2.powmod(X, 3, p)
    X_squared = gmpy2.powmod(X, 2, p)
    tmp = gmpy2.f_mod(X_cubed + 7, p)
    Y = gmpy2.powmod(tmp, gmpy2.f_div(gmpy2.add(p, 1), 4), p)
    if y_parity == 1:
        Y = gmpy2.f_mod(-Y, p)
    return Y

def comparator(A, Ak, B, Bk, core_number, random_seed):
    result = set(A).intersection(set(B))
    if result:
        sol_kt = A.index(next(iter(result)))
        sol_kw = B.index(next(iter(result)))
        HEX = "%064x" % abs(Ak[sol_kt] - Bk[sol_kw])
        dec = int(HEX, 16)
        total_time = time.time() - starttime
        print('\n[+] total time: %.2f sec' % (total_time))
        t = time.ctime()
        print(f"\033[32m[+] PUZZLE SOLVED: {t}, Core: {core_number+1:02} \033[0m")
        print(f"\033[32m[+] Random seed used: {random_seed} \033[0m")
        print(f"\033[32m[+] Private key (dec) : {dec} \033[0m")
        dash_line = '-' * 140
        with open("KEYFOUNDKEYFOUND.txt", "a") as file:
            file.write(f"\n{dash_line}")
            file.write("\n\nSOLVED " + t)
            file.write(f"\nTotal Time: {total_time:.2f} sec")
            file.write(f"\nCore: {core_number+1:02}")
            file.write(f"\nRandom seed: {random_seed}")
            file.write("\nPrivate Key (decimal): " + str(dec))
            file.write("\nPrivate Key (hex): " + HEX)
            file.write(f"\n{dash_line}")
        file.close()
        return True
    else:
        return False

def check(P, Pindex, DP_rarity, A, Ak, B, Bk, core_number, random_seed):
    modulo_val = P[0] % DP_rarity
    if modulo_val == 0:
        A.append(gmpy2.mpz(P[0]))
        Ak.append(gmpy2.mpz(Pindex))
        return comparator(A, Ak, B, Bk, core_number, random_seed)
    else:
        return False

def generate_powers_of_two(hop_modulo):
    return [gmpy2.mpz(1 << pw) for pw in range(hop_modulo)]

def search(thread_id, P, W0, DP_rarity, Nw, Nt, hop_modulo, upper_range_limit, lower_range_limit, result_queue, powers_of_two):
    pid = os.getpid()
    core_number = pid % cpu_count()
    # Random seed Config
    constant_prefix = b''
    prefix_length = len(constant_prefix)
    length = 8
    ending_length = length - prefix_length
    ending_bytes = os.urandom(ending_length)
    random_seed = constant_prefix + ending_bytes
    random.seed(random_seed)
    print(f"[+] [Core]: {core_number+1:02}, [Random seed]: {random_seed}")   
    t = [gmpy2.mpz(lower_range_limit + gmpy2.mpz(random.randint(0, upper_range_limit - lower_range_limit))) for _ in range(Nt)]
    T = [mulk(ti) for ti in t]
    dt = [gmpy2.mpz(0) for _ in range(Nt)]
   
    w = [gmpy2.mpz(random.randint(0, upper_range_limit - lower_range_limit)) for _ in range(Nw)]
    W = [add(W0, mulk(wk)) for wk in w]
    dw = [gmpy2.mpz(0) for _ in range(Nw)]
   
    Hops, Hops_old = 0, 0
    t0 = time.time()
    memo = {}
    solution_found = False
   
    while not solution_found:
        for k in range(Nt):
            Hops += 1
            pw = T[k][0] % hop_modulo
            if pw not in memo:
                memo[pw] = powers_of_two[pw]
            dt[k] = memo[pw]
            if check(T[k], t[k], DP_rarity, T, t, W, w, core_number, random_seed):
                result_queue.put((thread_id, T[k], t[k], W[k], w[k], core_number, random_seed))
                solution_found = True
                break
            t[k] += dt[k]
            T[k] = add(P[int(pw)], T[k])
        if solution_found:
            break
           
        for k in range(Nw):
            Hops += 1
            pw = W[k][0] % hop_modulo
            if pw not in memo:
                memo[pw] = powers_of_two[pw]
            dw[k] = memo[pw]
            if check(W[k], w[k], DP_rarity, W, w, T, t, core_number, random_seed):
                result_queue.put((thread_id, T[k], t[k], W[k], w[k], core_number, random_seed))
                solution_found = True
                break
            w[k] += dw[k]
            W[k] = add(P[int(pw)], W[k])
        if solution_found:
            break
           
        t1 = time.time()
        elapsed_time = t1 - starttime
        if t1 - t0 > 1 and thread_id == 0:
            hops_per_second = (Hops - Hops_old) / (t1 - t0) * cores
            hours, rem = divmod(elapsed_time, 3600)
            minutes, seconds = divmod(rem, 60)
            elapsed_time_str = f"{int(hours):02d}:{int(minutes):02d}:{int(seconds):02d}"
            p_2 = f'{log2(Hops*cores):.2f}'
            print(f'[+] [Hops: 2^{p_2} <-> {hops_per_second:.0f} h/s] [{elapsed_time_str}]', end='\r', flush=True)
            t0 = t1
            Hops_old = Hops
   
    print('\r[+] Hops:', Hops* cores)
    print('[+] Average time to solve: %.2f sec' % ((time.time()-starttime)))

def main():
    result_queue = multiprocessing.Queue()
    processes = [
        multiprocessing.Process(target=search, args=(i, P, W0, DP_rarity, Nw, Nt, hop_modulo, upper_range_limit, lower_range_limit, result_queue, powers_of_two)) for i in range(cores)
    ]
    for p in processes:
        p.start()
   
    # Wait for a result
    result = result_queue.get()
    thread_id, T_k, t_k, W_k, w_k, core_number, random_seed = result
   
    # Print the successful core and seed
    print(f"\n[+] Solution found by Core: {core_number+1:02}")
    print(f"[+] Random seed used: {random_seed}")
   
    # Terminate all processes
    for p in processes:
        p.terminate()

# Configuration for the puzzle
cores = cpu_count()
puzzle = 40
compressed_public_key = "03a2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4"
kangaroo_power = 3
lower_range_limit = 2 ** (puzzle - 1)
upper_range_limit = (2**puzzle) - 1

DP_rarity = 1 << int(((puzzle -  2*kangaroo_power)/2 - 2))
hop_modulo = ((puzzle - 1) // 2) + kangaroo_power
Nt = Nw = 2**kangaroo_power

# Precompute powers of two for faster access
powers_of_two = generate_powers_of_two(hop_modulo)

print('[+] [Tame and Wild herds are prepared]')

if len(compressed_public_key) == 66:
    X = gmpy2.mpz(compressed_public_key[2:66], 16)
    Y = X2Y(X, gmpy2.mpz(compressed_public_key[:2]) - 2)
else:
    print("[error] pubkey len(66/130) invalid!")

W0 = (X,Y)
starttime = oldtime = time.time()

Hops = 0

P = [PG]
for k in range(255):
    P.append(mul2(P[k]))
print('[+] [P-table prepared]')

print(f"[+] [Puzzle: {puzzle}]")
print(f"[+] [Lower range limit: {lower_range_limit}]")
print(f"[+] [Upper range limit: {upper_range_limit}]")
print(f"[+] [Expected Hops: 2^{log2(2.2 * sqrt(1 << (puzzle-1))):.2f} ({int(2.2 * sqrt(1 << (puzzle-1)))})]")
print(f"[+] [Using {cores} CPU cores for parallel search]")

if __name__ == '__main__':
    main()


Quote
  • [Kangaroo]: Mon May  5 10:14:12 2025
  • [Puzzle]: 50
  • [Lower range limit]: 562949953421312
  • [Upper range limit]: 1125899906842623
  • [Xcoordinate]: f46f41027bbf44fafd6b059091b900dad41e6845b2241dc3254c7cdd3c5a16c6
  • [Ycoordinate]: eb3dfcc04c320b55c529291478550be6072977c0c86603fb2e4f5283631064fb
  • [Expected Hops: 2^25.64 (52198446)]
  • [Using  12 CPU cores for parallel search]:
  • [Core]: 04, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 05, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 08, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 07, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 06, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 09, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 10, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 11, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 12, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 02, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 01, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Core]: 03, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'
  • [Hops: 2^24.44 <-> 1982097 h/s] [00:00:10]
  • PUZZLE SOLVED: Mon May  5 10:14:22 2025, total time: 10.73 sec, Core: 04
  • HEX:  00000000000000000000000000000000000000000000000000022bd43c2e9354

BTC: bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
POD5
Member
**
Offline Offline

Activity: 335
Merit: 10

Keep smiling if you're loosing!


View Profile
May 05, 2025, 06:41:04 PM
 #9904

  • [Hops: 2^24.44 <-> 1982097 h/s] [00:00:10]
  • PUZZLE SOLVED: Mon May  5 10:14:22 2025, total time: 10.73 sec, Core: 04
  • HEX:  00000000000000000000000000000000000000000000000000022bd43c2e9354
I like you'!  Grin
I'm using only 1 thread... No money for electricity
Code:
[+] [Kangaroo]: Mon May  5 20:38:50 2025
[+] [Puzzle]: 50
[+] [Lower range limit]: 562949953421312
[+] [Upper range limit]: 1125899906842623
[+] [Xcoordinate]: f46f41027bbf44fafd6b059091b900dad41e6845b2241dc3254c7cdd3c5a16c6
[+] [Ycoordinate]: eb3dfcc04c320b55c529291478550be6072977c0c86603fb2e4f5283631064fb
[+] [Expected Hops: 2^25.64 (52198446)]
[+] [Using  1 CPU cores for parallel search]:
[+] [Core]: 04, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'

[+] PUZZLE SOLVED: Mon May  5 20:38:59 2025, total time: 8.82 sec, Core: 04
[+] HEX:  00000000000000000000000000000000000000000000000000022bd43c2e9354

bc1qygk0yjdqx4j2sspswmu4dvc76s6hxwn9z0whlu
citb0in
Hero Member
*****
Offline Offline

Activity: 1078
Merit: 797


Bitcoin g33k


View Profile
May 05, 2025, 07:02:39 PM
 #9905

  • [Hops: 2^24.44 <-> 1982097 h/s] [00:00:10]
  • PUZZLE SOLVED: Mon May  5 10:14:22 2025, total time: 10.73 sec, Core: 04
  • HEX:  00000000000000000000000000000000000000000000000000022bd43c2e9354
I like you'!  Grin
I'm using only 1 thread... No money for electricity
Code:
[+] [Kangaroo]: Mon May  5 20:38:50 2025
[+] [Puzzle]: 50
[+] [Lower range limit]: 562949953421312
[+] [Upper range limit]: 1125899906842623
[+] [Xcoordinate]: f46f41027bbf44fafd6b059091b900dad41e6845b2241dc3254c7cdd3c5a16c6
[+] [Ycoordinate]: eb3dfcc04c320b55c529291478550be6072977c0c86603fb2e4f5283631064fb
[+] [Expected Hops: 2^25.64 (52198446)]
[+] [Using  1 CPU cores for parallel search]:
[+] [Core]: 04, [Random seed]: b'\xbc\x9b\x8cd\xfc\xa1?\xcf'

[+] PUZZLE SOLVED: Mon May  5 20:38:59 2025, total time: 8.82 sec, Core: 04
[+] HEX:  00000000000000000000000000000000000000000000000000022bd43c2e9354

LOL  Grin go ahead and give puzzle 51 (or 49?) a try Wink

Some signs are invisible, some paths are hidden - but those who see, know what to do. Follow the trail - Follow your intuition - [bc1qqnrjshpjpypepxvuagatsqqemnyetsmvzqnafh]
POD5
Member
**
Offline Offline

Activity: 335
Merit: 10

Keep smiling if you're loosing!


View Profile
May 05, 2025, 07:08:46 PM
 #9906

LOL  Grin go ahead and give puzzle 51 (or 49?) a try Wink

Nay, I was thinking of P135, but for that I have BSGS.  Wink

bc1qygk0yjdqx4j2sspswmu4dvc76s6hxwn9z0whlu
nomachine
Full Member
***
Offline Offline

Activity: 826
Merit: 135



View Profile
May 05, 2025, 07:28:31 PM
 #9907

LOL  Grin go ahead and give puzzle 51 (or 49?) a try Wink

For any other puzzle, the constant prefix needs to be set back to an empty byte string: constant_prefix = b''

Each puzzle will then generate a different seed. The fastest seed wins  Wink

BTC: bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
Akito S. M. Hosana
Jr. Member
*
Offline Offline

Activity: 434
Merit: 8


View Profile
May 05, 2025, 07:32:16 PM
 #9908

The fastest seed wins  Wink

So, theoretically, any puzzle can be solved in a few seconds if it's the right seed ?  Tongue
nomachine
Full Member
***
Offline Offline

Activity: 826
Merit: 135



View Profile
May 05, 2025, 07:37:48 PM
 #9909

The fastest seed wins  Wink

So, theoretically, any puzzle can be solved in a few seconds if it's the right seed ?  Tongue

Theoretically, yes. Practically, it takes a long time to guess the correct seed. Also, you have to change the length from length = 8 to length = 9 in order to go up to 70....

BTC: bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
POD5
Member
**
Offline Offline

Activity: 335
Merit: 10

Keep smiling if you're loosing!


View Profile
May 05, 2025, 07:49:57 PM
 #9910

Theoretically, yes. Practically, it takes a long time to guess the correct seed. Also, you have to change the length from length = 8 to length = 9 in order to go up to 70....

If you're searching for 135, the lenght would be?

bc1qygk0yjdqx4j2sspswmu4dvc76s6hxwn9z0whlu
nomachine
Full Member
***
Offline Offline

Activity: 826
Merit: 135



View Profile
May 05, 2025, 07:52:45 PM
 #9911

Theoretically, yes. Practically, it takes a long time to guess the correct seed. Also, you have to change the length from length = 8 to length = 9 in order to go up to 70....

If you're searching for 135, the lenght would be?

20 bytes. Grin

BTC: bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
POD5
Member
**
Offline Offline

Activity: 335
Merit: 10

Keep smiling if you're loosing!


View Profile
May 05, 2025, 07:55:50 PM
 #9912

20 bytes. Grin

The bigger the length, the bigger the seed...

bc1qygk0yjdqx4j2sspswmu4dvc76s6hxwn9z0whlu
Akito S. M. Hosana
Jr. Member
*
Offline Offline

Activity: 434
Merit: 8


View Profile
May 05, 2025, 08:00:14 PM
 #9913

Theoretically, yes. Practically, it takes a long time to guess the correct seed. Also, you have to change the length from length = 8 to length = 9 in order to go up to 70....

If you're searching for 135, the lenght would be?

20 bytes. Grin

So there's no way a random seed for 135 could be found by chance—I'd have better luck winning the lottery. Sad
POD5
Member
**
Offline Offline

Activity: 335
Merit: 10

Keep smiling if you're loosing!


View Profile
May 05, 2025, 08:11:53 PM
 #9914

So there's no way a random seed for 135 could be found by chance—I'd have better luck winning the lottery. Sad

Keep playing! Just keep playing before all puzzles are gone...   Tongue

bc1qygk0yjdqx4j2sspswmu4dvc76s6hxwn9z0whlu
bibilgin
Newbie
*
Offline Offline

Activity: 280
Merit: 0


View Profile
May 05, 2025, 08:49:40 PM
 #9915

Then someone says, 53 bits not found.

1PWo3JeB9jjRj4i7v5WV4gXnchhxRJ2epD

Sha256-Hash = B7B1421A9F6FB380CA798ECB8F25EEA9E801617278F0CFBEAE48F9FC6C983627
H160 = F6F5431D25BBF4D8636EBBCF881EB550A02B7EA2
Mdz21
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
May 05, 2025, 11:02:10 PM
 #9916

Then someone says, 53 bits not found.

1PWo3JeB9jjRj4i7v5WV4gXnchhxRJ2epD

Sha256-Hash = B7B1421A9F6FB380CA798ECB8F25EEA9E801617278F0CFBEAE48F9FC6C983627
H160 = F6F5431D25BBF4D8636EBBCF881EB550A02B7EA2

Mine so far:


F6F5431D253FA685D160CCA831CC4B6326038FA3
F6F5431D2560DC029005ADE2056AF33D9B9AA9E9
F6F5431D25E39593252E798F9DB1A13F204794A9

Cyclone random search
nomachine
Full Member
***
Offline Offline

Activity: 826
Merit: 135



View Profile
May 06, 2025, 07:20:27 AM
Last edit: May 07, 2025, 03:16:11 PM by mprep
 #9917

Cyclone random search

Cyclone and Mutagen have both been updated (Makefile) :

https://github.com/NoMachine1/Cyclone

https://github.com/NoMachine1/Mutagen



Status:   Scan finished. 3/13 scanners reported malware.

You really think you’re gonna get somethin’ for free from them? Nothin’s ever free, man. Everything’s paid one way or another. Only a couple of old fools like me still work for nothin Grin

[moderator's note: consecutive posts merged]

BTC: bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
Akito S. M. Hosana
Jr. Member
*
Offline Offline

Activity: 434
Merit: 8


View Profile
May 06, 2025, 08:31:41 AM
 #9918

Status:   Scan finished. 3/13 scanners reported malware.

You really think you’re gonna get somethin’ for free from them? Nothin’s ever free, man. Everything’s paid one way or another. Only a couple of old fools like me still work for nothin Grin

You're right. I've already lost some coins to the virus. I paid them handsomely.  Cry
POD5
Member
**
Offline Offline

Activity: 335
Merit: 10

Keep smiling if you're loosing!


View Profile
May 06, 2025, 08:54:07 AM
 #9919

You're right. I've already lost some coins to the virus. I paid them handsomely.  Cry

I remember the days, when I received some email to download the update of a BitGreen wallet software. It was a backdoor.
By the time I had some other wallet that were not protected by a password. I've lost around 5000 usd at the time.
I think in the year of 2018. I've started with crypto in 2017.

bc1qygk0yjdqx4j2sspswmu4dvc76s6hxwn9z0whlu
Akito S. M. Hosana
Jr. Member
*
Offline Offline

Activity: 434
Merit: 8


View Profile
May 06, 2025, 09:03:33 AM
 #9920

You're right. I've already lost some coins to the virus. I paid them handsomely.  Cry

I remember the days, when I received some email to download the update of a BitGreen wallet software. It was a backdoor.
By the time I had some other wallet that were not protected by a password. I've lost around 5000 usd at the time.
I think in the year of 2018. I've started with crypto in 2017.

I didn’t do any better either. A similar amount of money—gone in seconds, irrevocably. Every school is paid for. And I also understand those people who put open-source applications on GitHub for free. They’re either ideologically motivated, or they're genuinely good people—or both. But it’s very rare to come across a hacker who is completely clean and good. Everyone has some shade to them—but there are rare exceptions.  Roll Eyes
Pages: « 1 ... 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 [496] 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 ... 657 »
  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!