crypto.timingSafeEqual în Node.js

Compară două buffere în timp constant pentru a proteja verificarea token-urilor și a semnăturilor împotriva atacurilor de tip timing.

Sintaxă
crypto.timingSafeEqual(a, b)

Ce face crypto.timingSafeEqual

Operatorul standard === se oprește la primul caracter diferit, permițând atacatorilor să măsoare nanosecundele necesare răspunsului (Timing Attack) pentru a ghici caracterele unui secret. crypto.timingSafeEqual() garantează un timp constant de comparare indiferent de poziția nepotrivirii.

Compararea securizată a token-urilor
import crypto from 'node:crypto';

function valideazaToken(tokenPrimit, tokenAsteptat) {
  const bufA = Buffer.from(tokenPrimit);
  const bufB = Buffer.from(tokenAsteptat);

  if (bufA.length !== bufB.length) return false;
  return crypto.timingSafeEqual(bufA, bufB);
}

const esteValid = valideazaToken('token_secret_123', 'token_secret_123');
console.log('Token valid:', esteValid);
Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: crypto.timingSafeEqual

Ai o nelămurire despre utilizarea comenzii crypto.timingSafeEqual sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.