Menu
CoddyTech

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 bayt

Her 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.

challenge icon

Görev

Kolay

Bu 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