class AccountManager: def __init__(self): self.DbManager = DbManager() def makeHash(self, inputText): inputText = inputText.encode() hashObject = hashlib.sha256() hashObject.update(inputText) hexDig = hashObject.hexdigest() return hexDig def logIn(self, id, pw): hexDig = self.makeHash(pw) userPw = self.DbManager.readUserPw(id) if userPw == (hexDig, ): #userPw가 튜플임. return True else: return False def registerUser(self, id, pw, sQuestionNum, answer): pw = self.makeHash(pw) answer = self.makeHash(answer) self.DbManager.saveUserInfo(id=id, pw=pw, sQuestionNum=sQuestionNum, answer=answer) return True def deleteId(self, id): self.DbManager.deleteUserInfo(id) def findId(self, sQuestionNum, answer): answer = self.makeHash(answer) id = self.DbManager.readUserIdByQA(sQuestionNum, answer) if len(id) == 1: id = id[0] else: return -1 return id def resetPw(self, id): newPw = 'aXeYCQV' newPw = newPw.encode() hashObject = hashlib.sha256() hashObject.update(newPw) hexDig = hashObject.hexdigest() newPw = hexDig self.DbManager.updatePw(id, newPw)