Merhabalar, basitçe açıklamaya çalışayım
m.update('a')
m.hexdigest()
m.update('a')
m.hexdigest()
şeklinde kullandığınızda ilk seferinde md5('a') ikinci seferinde md5('aa')
çıktısı almış oluyorsunuz, update fonksiyonu sona ekleyerek çalışıyor çok
büyük miktardaki verilerin parça parça yüklenebilmesi için, bunun yerine
her üreteceğiniz md5 için 'hashlib.md5(line).hexdigest()' şeklinde ayrı bir
nesne oluşturursanız bu sorunu yaşamazsınız.Kolay gelsin 2013/3/8 Kayhan KAYIHAN <[email protected]> > Herkeze selam, > > python ile ilgili bir sorun yasıyorum, tecrübesi olan birisi benimle > paylasaşabilir diye düşünüyorum. > 123456 değerini elle vererek md5 li değerini ekrana yazdırdığım da doğru > değeri alabiliyorum. > > password.txt içerisine 123456 yazıyorum, bunu python ile okuyarak md5 ni > alıyorum, karakter sayısı v.s. kontrol ettiriyorum 6 adet karakter var, > ekrana bastırıyorum değer 123456 ancak md5 li çıktısı 123456 nın md5 li > çıktısı değil. > > Bunun nedeni ile ilgili bilgisi olan birisi var mı? > > Kolay gelsin. > > password = open('password.txt', 'r+') > passlist=password.readlines() > for y in passlist: > y=123456 > m = hashlib.md5() #m değişkeni > m.update('123456') #m değişkenine 123456 değerini atıyorum > print m.hexdigest() # m değişkenini ekrana basıyorum > > #Burada sorun yok 123456 değerinin md5 karşılığını ekrana basıyor. > > m.update(str(y)) #m değişkenine y dene gelen datayı atıyor, y ile > gelen data dosya dan okuduğu 123456 değeri > print m.hexdigest() #m i ekrana basıyorum, 123456 nın md5 karşılıgı > değil, değişken içeriğinde \n değeri geliyor. > count=len(y.rstrip()) #dosyadan okunana değerin karakter sayısına > bakıyorum 6 > print count #karakter sayısını ekrana basıyorum. > print y.rstrip() #değişkenin içindeki değeri ekrana basıyorum, 123456 > m.update(y.rstrip()) #m değişkenine içinde \n değeri olmayana karakter > sayı 6 olan 123456 değerini atıyorum > print m.hexdigest() # md5 değerini print ediyorum ancak ekrana > bastıgı değer ile 123456 nın md5 i aynı değil, kısaca dosyadan okuduğu > 123456 değeri ile elle verilen 123456 değerinin md5 li çıktısı arasında > fark var, bu fark neden kaynklanıyor? > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php >
_______________________________________________ Linux-programlama mailing list [email protected] https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php
