Esempio n. 1
0
    def encrypt_user_password(self, password):
        """ Returns an encrypted version of the user's password. """
        data = {"password": password}

        message = json.dumps(data)
        cipher = AESCipher(self.secret_key)
        return cipher.encrypt(message)
Esempio n. 2
0
  def _decrypt_user_password(self, encrypted):
    """ Attempts to decrypt the given password and returns it. """
    cipher = AESCipher(self.secret_key)

    try:
      message = cipher.decrypt(encrypted)
    except ValueError:
      return None
    except TypeError:
      return None

    try:
      data = json.loads(message)
    except ValueError:
      return None

    return data.get('password', encrypted)
Esempio n. 3
0
def test_aes_encrypt_decrypt(secret_key, original_msg):
    converted_secret_key = convert_secret_key(secret_key)
    cipher = AESCipher(converted_secret_key)
    encrypted_msg = cipher.encrypt(original_msg)

    assert cipher.decrypt(encrypted_msg) == original_msg
Esempio n. 4
0
def test_aes_decrypt(secret_key, encrypted_msg, expected_msg):
    converted_secret_key = convert_secret_key(secret_key)
    cipher = AESCipher(converted_secret_key)
    decrypted_msg = cipher.decrypt(encrypted_msg)

    assert decrypted_msg == expected_msg