мне не понятно, как сервер ищет значение по базе. Или куда он загружает все это?
Берёт хеш от пароля и ищет такой-же хеш в БД.
Хеши паролей попадают в базу путём поиска слитых паролей в открытом доступе (и не только), далее
импортируется в БД сервиса.
Автор этого сервиса Трой Хант
Вот его блог:
https://www.troyhunt.com/project-svalbard-the-futu...
Тут многие пишут, что подобным сервисам лучше не доверять. И в общем-то они правы.
Но касательно haveibeenpwned, есть возможность скачать дамп хешей паролей (SHA-1, NTLM) email там нет по понятным причинам
haveibeenpwned.com/Passwords (внизу страницы).
Скачав можно залить себе в БД, сгенерировать хеш от нужного пароля и поскать совпадение в базе.