Полное руководство по алгоритмам
Base32: Читаемость и стандарты
Base32 использует 32-символьный алфавит (A-Z и 2-7). Главное преимущество перед Base64 — регистронезависимость. Это критически важно, когда коды передаются голосом или записываются вручную.
- Алфавит: A-Z и цифры 2-7.
- Применение: TOTP коды (Google Authenticator), кодирование URL, файловые системы.
- Standard: RFC 4648.
Base58: Стандарт криптовалют
Base58 был разработан Сатоши Накамото для адресов Bitcoin. Основная цель — убрать визуальную неоднозначность.
0 (ноль) и O (заглавная о), I (заглавная i) и l (строчная L), а также символы + и /.
Это позволяет пользователям легко выделять строку двойным щелчком (так как нет разделителей вроде "/") и снижает риск ошибки при ручном вводе.
Bcrypt: Почему он так важен?
Простые хэши (MD5, SHA) вычисляются невероятно быстро. Современные GPU могут перебирать миллиарды MD5-хэшей в секунду. Это делает их непригодными для хранения паролей.
Bcrypt специально спроектирован быть медленным. Он использует алгоритм blowfish и параметр Work Factor (Salt Rounds), который определяет количество итераций.
Сравнение хэш-функций
| Алгоритм | Длина (бит) | Безопасность | Лучшее использование |
|---|---|---|---|
| MD5 | 128 | Низкая (Взломан) | Проверка целостности (Checksums), не криптография. |
| SHA-1 | 160 | Средняя (Deprecated) | Git (исторически), старые системы. Не рекомендуется для новых. |
| SHA-256 | 256 | Высокая | SSL сертификаты, блокчейн, цифровые подписи. |
| SHA-512 | 512 | Очень высокая | Системы с высокими требованиями к безопасности (64-битные CPU). |