From 0490806b5e2416a14712f00131cff9cf86e1a24f Mon Sep 17 00:00:00 2001 From: Shawn Wilkinson Date: Sat, 30 May 2015 22:23:10 -0400 Subject: [PATCH] Building Challenge Class --- dataserv/Challenge.py | 16 ++++++++++++++++ dataserv/Farmer.py | 14 +------------- 2 files changed, 17 insertions(+), 13 deletions(-) create mode 100644 dataserv/Challenge.py diff --git a/dataserv/Challenge.py b/dataserv/Challenge.py new file mode 100644 index 0000000..5cec806 --- /dev/null +++ b/dataserv/Challenge.py @@ -0,0 +1,16 @@ +import random + +class Challenge: + def seed_list(self, height): + """Generate a list of seeds for challenges based on the Bitcoin address.""" + seeds = [] + last_seed = sha256(self.btc_addr) + for i in range(height+1): + seeds.append(last_seed) + last_seed =sha256(last_seed) + return seeds + + def gen_challenge(self): + """Generate a random challenge for the Farmer.""" + iter_seed = random.randrange(0, len(app.config['SEED_HEIGHT'])) + seeds = self.seed_list(app.config['SEED_HEIGHT']) diff --git a/dataserv/Farmer.py b/dataserv/Farmer.py index 3f3c71b..8a5bbf5 100644 --- a/dataserv/Farmer.py +++ b/dataserv/Farmer.py @@ -7,6 +7,7 @@ app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///dataserv.db' +app.config['SEED_HEIGHT'] = 100 db = SQLAlchemy(app) @@ -76,16 +77,3 @@ def ping(self): """ self = Farmer.query.filter_by(btc_addr=self.btc_addr) self.update(dict(last_seen=datetime.utcnow())) - - def seed_list(self, height): - """Generate a list of seeds for challenges based on the Bitcoin address.""" - seeds = [] - last_seed = sha256(self.btc_addr) - for i in range(height): - seeds.append(last_seed) - last_seed =sha256(last_seed) - return seeds - - def gen_challenge(self): - """Generate a random challenge for the Farmer.""" - pass