1. К авторизации этот вопрос не имеет отношения.
поскольку буквальный ответ на вопрос из заголовка будет, разумеется -
НЕТ. Одними средствами БД авторизовать никого нельзя.
2. Вопрос, на самом деле -
где хэшировать пароль. В скрипте или БД.
В итоге вопрос получается дурацкий, поскольку очевидно, что в БД придется городить код из гуана и палок, без малейшей на то причины.
Еще одно соображение - безопасность. Пароль в принципе нежелательно отправлять в БД в открытом виде, чтобы он потом не засветился в каких-либо логах.
3. Весь этот детский лепет с sha1 в цикле заменить на
php.net/manual/en/function.password-verify.php