You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@steve.apache.org by hu...@apache.org on 2015/03/21 10:57:01 UTC
svn commit: r1668219 - /steve/trunk/pytest/www/cgi-bin/lib/voter.py
Author: humbedooh
Date: Sat Mar 21 09:57:01 2015
New Revision: 1668219
URL: http://svn.apache.org/r1668219
Log:
cleanup and make voter ID a bit shorter. We don't need the full 512 bits here, 224 will do.
Modified:
steve/trunk/pytest/www/cgi-bin/lib/voter.py
Modified: steve/trunk/pytest/www/cgi-bin/lib/voter.py
URL: http://svn.apache.org/viewvc/steve/trunk/pytest/www/cgi-bin/lib/voter.py?rev=1668219&r1=1668218&r2=1668219&view=diff
==============================================================================
--- steve/trunk/pytest/www/cgi-bin/lib/voter.py (original)
+++ steve/trunk/pytest/www/cgi-bin/lib/voter.py Sat Mar 21 09:57:01 2015
@@ -1,4 +1,4 @@
-import hashlib, json, random, os, sys
+import hashlib, json, random, os, sys, time
from __main__ import homedir, config
# SMTP Lib
@@ -21,20 +21,19 @@ def get(election, basedata, uid):
return None
def add(election, basedata, email):
- uid = hashlib.sha512(email + basedata['hash'] + time.time() + random.randint(1,99999999)).hexdigest()
+ uid = hashlib.sha224("%s%s%s%s" % (email, basedata['hash'], time.time(), random.randint(1,99999999))).hexdigest()
xhash = hashlib.sha512(basedata['hash'] + uid).hexdigest()
elpath = os.path.join(homedir, "issues", election)
with open(elpath + "/voters.json", "r") as f:
voters = json.loads(f.read())
f.close()
+ voters[email] = xhash
with open(elpath + "/voters.json", "w") as f:
f.write(json.dumps(voters))
f.close()
return uid, xhash
def remove(election, basedata, email):
- uid = hashlib.sha512(email + basedata['hash'] + time.time() + random.randint(1,99999999)).hexdigest()
- xhash = hashlib.sha512(basedata['hash'] + uid).hexdigest()
elpath = os.path.join(homedir, "issues", election)
with open(elpath + "/voters.json", "r") as f:
voters = json.loads(f.read())
@@ -44,7 +43,6 @@ def remove(election, basedata, email):
with open(elpath + "/voters.json", "w") as f:
f.write(json.dumps(voters))
f.close()
- return uid, xhash
def hasVoted(election, issue, uid):
issue = issue.strip(".json")