def reg(): """User register""" form = g.form # The user login password is also the wallet's payment password. password = rsahelper.decrypt(form.password.data).decode('u8') pay_password = generate_password_hash(password) form.password.data = pay_password try: server = get_jsonrpc_server() # print(form.username.data, pay_password) result = server.create(form.username.data, pay_password) if result.get('success') is not True: print(result) return return_result(20205, result=result) except Exception as e: print(e) return return_result(20205) role = Role.query.filter_by(name='normal').first() user = User(**form.data) user.role_id = role.id db.session.add(user) db.session.commit() return return_result(result=dict(id=user.id))
def __call__(self, form, field): try: password = rsahelper.decrypt(field.data).decode('u8') except Exception as e: print(e) self.message="The encryption format is not correct." raise ValidationError(self.message) if len(password) < 3 or len(password) > 128: self.message="Password must be between 3 and 128 characters long." raise ValidationError(self.message)
def login(): username = g.form.username.data password = rsahelper.decrypt(g.form.password.data).decode('u8') user = User.query.filter_by(username=username).first() if user is None: return return_result(20003) if not user.check_password(password): return return_result(20004) token = user.generate_auth_token( expiration=current_app.config['EXPIRATION']) return return_result(result=dict(token=token))
def change_password(): user = g.user old_password_hash = user.password_hash password = rsahelper.decrypt(g.form.password.data).decode('u8') if not user.check_password(password): return return_result(20004) new_password_hash = generate_password_hash( rsahelper.decrypt(g.form.new_password.data).decode('u8')) try: server = get_jsonrpc_server() result = server.password(user.username, old_password_hash, new_password_hash) if result.get('success') is not True: print(result) return return_result(20207, result=result) except Exception as e: print(e) return return_result(20207) user.password = new_password_hash # update password, auto commit return return_result()