Yeni Bir Tuz
Coddy'nin Node.js Journey'sinin Kimlik Doğrulama ve Güvenlik bölümünün bir parçası. Ders 3 / 24.
İnsanlar aynı parolayı seçebilir. Salt, saklanan parola anahtarı türetilirken eklenen rastgele veridir. Yeni bir salt, aynı parolaların farklı saklanan anahtarlar üretmesini sağlar. Salt, anahtarın yanında saklanır; gizli tutulması gerekmez.
const salt = randomBytes(8).toString('hex');
// 16 hex karakter olarak yazılmış 8 rastgele baytHer yeni parola için çağrılan fonksiyonun içinde salt oluştur. Sunucu başlatılırken bir kez oluşturulan değer yeniden kullanılır. Sabit bir uygulama salt'ı kullanarak bir anahtar türettin. Parola saklama işlemi artık her seferinde yeni bir salt gerektiriyor. Burada yalnızca salt oluşturmayı ve 32 karakterlik metin uzunluğunu görmeyi dene.
randomBytes, kriptografik bir rastgele sayı üreteci kullanır. Math.random(), güvenliğe duyarlı değerler için tasarlanmamıştır. Salt için içe aktarılan kriptografik fonksiyonu kullan.
Görev
KolayBu küçük bir alıştırma projesidir. Kurulumu sağlanmıştır; yalnızca exercise.js dosyasını düzenle.
salt içinde onaltılık biçimde yeni bir 16 baytlık rastgele salt döndür. /result adresine iki kez çalıştırıp GET isteği gönder: her yanıt farklı, 32 karakterlik bir onaltılık dize içerir. Sabit bir salt kullanma.
Kendin dene
import { randomBytes } from 'node:crypto';
export function exercise() {
return { salt: '00000000000000000000000000000000' };
}
Kimlik Doğrulama ve Güvenlik bölümündeki tüm dersler
Kendi başına pratik yap: Express playground