Timing attack: по времени ответа можно угадать правильный пароль/токен. Проблема: string === string прерывается при первом несовпадении → разное время. Решение: crypto.timingSafeEqual(a, b) — всегда сравнивает целиком, одинаковое время. Используй при: сравнении HMAC, JWT подписей, API ключей. bcrypt.compare() уже защищён. Для паролей всегда bcrypt/argon2 — они медленные намеренно. timingSafeEqual требует одинаковую длину буферов — паддинг или хеш фиксированной длины.
Как защитить от timing attacks в Node.js?
Senior
216 просмотровAFK Offer AI
Как использовать Agenda для scheduled jobs в Node.js?