encode/decode

This commit is contained in:
j 2014-09-09 12:08:04 +02:00
commit 1e09e70574
7 changed files with 22 additions and 16 deletions

View file

@ -55,8 +55,8 @@ class Changelog(db.Model):
c.revision = cls.query.filter_by(user_id=user.id).count()
c.data = json.dumps([action] + list(args))
_data = str(c.revision) + str(c.timestamp) + c.data
_data = _data.encode('utf-8')
c.sig = settings.sk.sign(_data, encoding='base64')
_data = _data.encode()
c.sig = settings.sk.sign(_data, encoding='base64').decode()
state.db.session.add(c)
state.db.session.commit()
if state.nodes:
@ -80,9 +80,9 @@ class Changelog(db.Model):
next_revision = last.revision + 1 if last else 0
if revision == next_revision:
_data = str(revision) + str(timestamp) + data
_data = _data.encode('utf-8')
_data = _data.encode()
if rebuild:
sig = settings.sk.sign(_data, encoding='base64')
sig = settings.sk.sign(_data, encoding='base64').decode()
if valid(user.id, _data, sig):
c = cls()
c.created = datetime.utcnow()
@ -112,14 +112,14 @@ class Changelog(db.Model):
def verify(self):
_data = str(self.revision) + str(self.timestamp) + self.data
_data = _data.encode('utf-8')
return valid(self.user_id, _data, self.sig)
_data = _data.encode()
return valid(self.user_id, _data, self.sig.encode())
@classmethod
def _rebuild(cls):
for c in cls.query.filter_by(user_id=settings.USER_ID):
_data = str(c.revision) + str(c.timestamp) + c.data
_data = _data.encode('utf-8')
_data = _data.encode()
c.sig = settings.sk.sign(_data, encoding='base64')
state.db.session.add(c)
state.db.session.commit()