• 23-10-2006, 23:13:40
    #1
    Selamlar,

    Bugün size sha1 ve md5 şifrelemenin asp.net ile ne kadar basit olduğunu anlatacam

    Üyelik sistemi yazarken kullanıcı şifrelerini veritabanına direk kaydetmek pek güvenli bir yöntem değildir. Veritabanın kötü niyetli insanların eline geçme ihtimali göz önünde bulundurularak bazı şifreleme algoritmaları kullanılır.

    Bu algoritmalardan SHA1 ve MD5 i kullanmak için asp.net de hazır fonksiyonlar bulunmakta. Tek satır kod ile şifreleri daha güvenli hale getirebilirsiniz.

    SHA1
    string metin = "şifrelenecek metin";
    string password = FormsAuthentication.HashPasswordForStoringInConfigFile(metin, "sha1");
    MD5
    string metin = "şifrelenecek metin";
    string password = FormsAuthentication.HashPasswordForStoringInConfigFile(metin, "md5");
    bu kodlar size "P33L45M6N7B3H2P7A9L5D9K0J5G7E5B8NV57BS5J" gibi karışık bir string dizisi döndürür.

    bu şifrelenmiş string dizilerinin geri dönüşü yoktur.
    Yani "P33L45M6N7B3H2P7A9L5D9K0J5G7E5B8NV57BS5J" değerini bir fonksiyon ile tekrar eski haline çeviremezsiniz.

    üye girişi yaparken izlemeniz gereken algoritma şudur.

    üyenin giriş yaparken girdiği şifrede ilk önce yukardaki metodlardan biri ile ( kayıt işleminde hangisi kullanıldıysa ) şifrelenmiş hale çevrilir. Şifrelenmiş haliyle veritabanındaki değer karşılaştırılmalıdır.

    şifrem daha güvenli olsun diye 2 algoritmayı aynı anda kullanabilirsiniz. ilk önce sha1'e daha sonra sha1'e şifrelenmiş metni md5'e şifreleyebilirsiniz.

    artık veritabanınız çalınsada şifrelerinizin öğrenilmesi çok zor.

    Saygılar...
  • 23-10-2006, 23:28:01
    #2
    yuh .... çok uzun md5("selam"); bole kısa bi yontemi yok mu ?
  • 23-10-2006, 23:35:15
    #3
    md5 kırıcılarda var piyasada. ben 4 haneli şifreyi hemen kımıştım. ama şifreyi uzun tutar ve kelime + rakam yapıp şifrelenirse kırmak epey vakit alır.
  • 24-10-2006, 01:20:26
    #4
    4 haneli ve harf ise sadece. bir kaç dk da kırılır sanırım
    şifreleri uzun, rakam + harf + karakter olarak yapmak gerekiyor.
  • 24-10-2006, 01:26:20
    #5
    dsgnr adlı üyeden alıntı: mesajı görüntüle
    yuh .... çok uzun md5("selam"); bole kısa bi yontemi yok mu ?
    public string md5(string sifre) {
    return FormsAuthentication.HashPasswordForStoringInConfigFile(sifre, "md5");
    }
    sayfana bu fonksiyonu eklersin 1 defa.
    ondan sonra md5("şifre") diye kullanırsın
  • 25-10-2006, 18:54:37
    #6
    Misafir
    tşk. sting
  • 03-02-2007, 23:54:45
    #7
    sağol kullanıyorum