<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def configure_authentication(self, database):
 """ Configure the authentication """

        options = {"plugins": [], "superadmins": []}

        self._display_info("We will now create the first user.")

        username = self._ask_with_default("Enter the login of the superadmin", "superadmin")
        realname = self._ask_with_default("Enter the name of the superadmin", "INGInious SuperAdmin")
        email = self._ask_with_default("Enter the email address of the superadmin", "superadmin@inginious.org")
        password = self._ask_with_default("Enter the password of the superadmin", "superadmin")

        database.users.insert({"username": username,
                               "realname": realname,
                               "email": email,
                               "password": hashlib.sha512(password.encode("utf-8")).hexdigest(),
                               "bindings": {},
                               "language": "en"})

        options["superadmins"].append(username)

        while True:
            if not self._ask_boolean("Would you like to add another auth method?", False):
                break

            self._display_info("You can choose an authentication plugin between:")
            self._display_info("- 1. LDAP auth plugin. This plugin allows to connect to a distant LDAP host.")

            plugin = self._ask_with_default("Enter the corresponding number to your choice", '1')
            if plugin not in ['1']:
                continue
            elif plugin == '1':
                options["plugins"].append(self.ldap_plugin())
        return options