2012-03-01 6 views
0

J'essaie de comprendre comment un simple algorithme d'exploration de Bitcoin fonctionne en langage c simple ou C# ou en pseudo langage. J'ai trouvé un exemple au http://pastebin.com/EXDsRbYH, mais malheureusement ce n'est pas clair. J'étais incapable de l'exécuter. Supposons que je n'ai qu'une seule entrée: un portefeuille Bitcoin "abc ..." que je voudrais utiliser pour les Bitcoins à extraire. J'ai besoin d'un algorithme simple pour comprendre l'extraction bitcoin sur une machine avec un thread sur un cpu [je sais que ça prendra des années pour terminer :)]Algorithme simple d'exploration de bitcoins

+0

Je ne suis pas sûr de cela, mais peut-être [ce sujet] (https://bitcointalk.org/index.php?topic=49657.0) peut aider? – ApprenticeHacker

+1

voir aussi [bitcoin.se] – AakashM

+0

Merci, je vais essayer de demander à bitcoin – Lu4

Répondre

4

Super-bête et plutôt inutile, mais j'ai fait ça pour des fins de démonstration une fois:

from hashlib import md5 
from random import random 
import sys 

# what to hash 
data = "Bitcoins!" 

# This is just a first run to init the variables 
h = md5(data.encode('utf-8')) 
v = h.digest() 
best = v 
best_i = data 
best_vhex = h.hexdigest() 

# x ist just a helper to only display 
# a subset of all updates (calculates faster) 
x = 0 
step = 100 

# In reality, this loop stops when the "h" hash 
# is below a certain threshold (called "difficulty") 
while True: 
    i = data + str(random()) 
    h = md5(i.encode('utf-8')) 
    v = h.digest() 
    vhex = h.hexdigest() 

    # log progress 
    if v < best or x > step: 
    msg = "%-25s | %-25s -> %s" % (i, best_i, best_vhex) 
    sys.stdout.write('\r' + msg) 
    x = 0 
    else: 
    x += 1 

    # check if new best one 
    if v < best: 
    best_i, best, best_vhex = i, v, vhex 
    print 
+0

Pourquoi utilisez-vous MD5 ? Je comprends l'extraction de bitcoin doit être fait avec SHA256 ... ou? – tucson

+0

pourquoi est-ce super stupide et inutile? Je suis désolé, mais je ne connais pas vraiment le bitcoin, et je cherchais du code source (dans n'importe quelle langue), que je pourrais utiliser pour comprendre ce qu'est réellement l'algorithme d'exploration de données. –

+0

Dans ce code, quand un bloc soit sorti? essayer de me renseigner ... –

Questions connexes