Программа для проверки пароля на утечку в сеть интернет, иными словами, она проверяет наличие введенного пользователем пароля во взломанных и утекших в сеть интернет базах данных.
По сути pwnCheck представляет собой графический интерфейс к сервису api.pwnedpasswords.com. Она написана при помощи языка программирования python и библиотеки графического интерфейса pyQT4.
Программа вычисляет хеш пароля, а затем ищет совпадения с первыми 5 символами (префиксом) в api.pwnedpasswords.com,
далее полное совпадение хеша будет найдено локально на ПК пользователя. Она отправляет не сам пароль на сайт api.pwnedpasswords.com, а его хэш. На сервис отправляются только первые 5 символов хэша, а не весь, поэтому можно спокойно проверять пароль на утечку в интернет.
Исполняемые файлы pwnCheck были созданы с помощью библиотеки pyinstaller.
Зависимости:
- Python 2.7;
- pyQT4.
Как работает программа:
- Вычисление SHA1-хэша для пароля.
- Префиксная переменная устанавливается на первые 5 символов хеша.
- Все хэши с совпадающим префиксом извлекаются из базы данных pwnedpasswords.com.
- Соответствие хэша пароля проверяется локально на ПК пользователя.
Если пароль не найден во взломанных базах данных, которые утекли в сеть интернет, тогда будет отображено сообщение с зеленым фоном:
PASSWORD WAS NOT FOUND IN THE DB
Если пароль найден во взломанных базах данных, которые утекли в сеть интернет, тогда будет отображено сообщение с красным фоном (вместо N - количество раз):
PASSWORD PWNED N TIMES!
Программа позволяет проверить свой пароль на утечку в сеть интернет и тем самым обезопасить свои учетные данные.
s-r-grass
11 октября 2020 г. 21:20
Отличная программа!))))) сначала хотел обновить до pyqt5, но быстро понял, что много времени нужно на это потратить, а с нуля интерфейс создавать лень. Пара старых паролей, которые давно не использую, оказывается утекли в интернет =) На самом деле, полезная история, и было бы круто через API при помощи того же python скрипта проверять вводимый пароль на утечку при регистрации пользователя. Сейчас все нормальные хостинг-провайдеры поддерживают python.
mrkaban
11 октября 2020 г. 20:28
Исходный код опубликован, любой желающий может его скачать и изучить. Алгоритм простой, можно взять и переписать под себя. Только тут PyQT4, проще взять только основной алгоритм, а графику просто с нуля нарисовать, чем оптимизировать pyqt4 до pyqt5. Сам по себе сервис отличный, заходил проверять пароль на одном веб-сайте работающим с ним через API, но это программа мне удобнее для проверки пароля на утечку в интернет. PS: Для демонстрации работы программы использовались не настоящие пароли, поэтому хэш этих паролей я не стал замазывать.