def createNewSession(self, account, passphrase, confirm_passphrase, secret): if account == self.session: print("already signed in !") return None if passphrase != confirm_passphrase: print("wrong confirmation passphrase") return None key = self.pgp.genKey(account, passphrase) if secret == '': secret = genSeed() try: self.otp = reqTOTP.reqTOTP(secret) except binascii.Error: self.pgp.deleteKey(key.fingerprint) return None self.pgp.encryptFile(account, secret) self.session = account return self.otp.get()
def openExistingSession(self, account, passphrase): if account == self.session: print("already signed in !") return -1 data = str() try: data = self.pgp.decryptFile(account, passphrase) if data == '': if self.connectTry < 3: self.connectTry += 1 return None else: print("3 password errors, exiting now...") sys.exit() except FileNotFoundError: print("this account does not exist") return None self.connectTry = 0 self.session = account self.otp = reqTOTP.reqTOTP(data) return self.otp.get()
def updateKey(self, account, passphrase, secret=''): data = str() try: data = self.pgp.decryptFile(account, passphrase) if data == '': if self.connectTry < 3: self.connectTry += 1 return None else: print("3 password errors, exiting now...") sys.exit() except FileNotFoundError: print("this account does not exist") return None self.connectTry = 0 if secret == '': secret = genSeed() try: self.otp = reqTOTP.reqTOTP(secret) except binascii.Error: return self.pgp.encryptFile(account, secret) return self.otp.get()