MD5 şifreleri neden farklı bir şekilde saklanıyor?


22

Bir süredir merak ediyorum, neden "echo 'helloworld' | openssl passwd -1 -stdin" çalıştırmak her seferinde farklı sonuçlar veriyor? şifremi sisteme giriş yapıp nasıl çalışır?

computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$xlm86SKN$vzF1zs3vfjC9zRVI15zFl1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$/0.20NIp$pd4X9xTZ6sF8ExEGqAXb9/
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$sZ65uxPA$pENwlL.5a.RNVZITN/zNJ1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$zBFQ0d3Z$SibkYmuJvbmm8O8cNeGMx1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$PfDyDWER$tWaoTYym8zy38P2ElwoBe/

Bu şifreyi sisteme şifremin ne olması gerektiğini açıklamak için kullandığım için her zaman aynı sonuçları almam gerektiğini düşünürdüm. Neden yapmıyorum


3
Her seferinde aynı olsaydı, bir saldırgan milyarlarca ortak şifreye sahip olabilir ve kolayca kontrol edebilirdi.
David Schwartz

Yanıtlar:


37

Hepsinin farklı bir tuzu var . Her seferinde benzersiz bir tuz seçilir, çünkü tuzlar asla tekrar kullanılmamalıdır. Her şifre için benzersiz bir tuz kullanılması, onları gökkuşağı masa saldırılarına karşı dirençli hale getirir .



6
Çıktının $ 1 $ 'dan sonra tuzu içerdiğini belirtmek iyi bir fikir olabilir (dolar sembolleri ayraçtır).
sokmak

6
Yani '$ 1 $ xlm86SKN $ vzF1zs3vfjC9zRVI15zFl1' karesinde xlm86SKN tuzlu ve vzF1zs3vfjC9zRVI15zFl1 tuzlanmış helloworld'ün karısı mı?
Peter

2
@Peter: tam olarak.
Joachim Sauer

3

Aslında, tuzu komut satırına verirseniz, daima aynı sonucu elde edersiniz.

$ echo 'helloworld' | openssl passwd -1 -stdin -salt my-salt
$1$my-salt$S/PsLSioHR8ffN8bpIzsk/
$ echo 'helloworld' | openssl passwd -1 -stdin -salt my-salt
$1$my-salt$S/PsLSioHR8ffN8bpIzsk/
$ echo 'helloworld' | openssl passwd -1 -stdin -salt my-salt
$1$my-salt$S/PsLSioHR8ffN8bpIzsk/
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.