none
Trigger Md5 encrypt /decrypt RRS feed

  • Soru

  • Selamlar,

    Database'e kullanıcı ekleme kısmı olmadığı için trigger ile yeni bir kullanıcıyı database'e eklediğim zaman, trigger after insert  ile bunu md5'e çevirmek istiyorum.Login sayfasının kod tarafında kullanıcı giriş yaptığında bunu database'den çekip çözmek(decrypt)  gerekiyor.Bu konuda herhangi bir önerisi olan veya daha önce buna benzer birşey yapan var mı ?

    29 Aralık 2012 Cumartesi 10:35

Yanıtlar

  • md5 decrypt etmede pek başarılı bir yöntem duymadım, bu tür işlemlerde veritabanındaki md5 i decrypt etme yerine gelen veriyi md5 cryptolayıp karşılaştırma yapman gerekiyor, yani veritabanında zaten daha önce üye olurken cryptoladığın şifre olucak, sonrasında üye girişi yapılırken kullanıcının girdiği şifreyi tekrar md5 ile cryptolayıp , cryptolanmış hali ile veritabanında karşılaştırarak sonraki aşamaya yönlendireceksin
    • Yanıt Olarak Öneren makul 29 Aralık 2012 Cumartesi 10:43
    • Yanıt Olarak İşaretleyen Dogan_Fred 29 Aralık 2012 Cumartesi 11:01
    29 Aralık 2012 Cumartesi 10:39
  • MD5 ile veriyi şifreleyip DB ye kayıt ettim. Ancak geri çektiğimde o veriyi tekrar Encode Etmem Gerekiyor. Örneğin bir kredi kartı bilgisini şifreleyip veritabanına kayıt ettim. Ama bankaya göndereceğim zaman bunu tekrar Decode edip göndermem gerekiyor. 

    MD5 bu şekilde geri dönüşü olan bir kripto değildir. MD5 ya da SHA ile karıştırdığınız verileri geri alamazsınız. Geri dönebilen karıştırma algoritması kullanmalısınız; TripleDES gibi.

    Ayrıca kredi kartı numaraları 20adet rakamdan oluşur tüm olasılıkları deneyip kart numaralarına ulaşmak çocuk oyuncağı. Sonuçta md5 kullanmanız çok yanlış olmuş

    Bunun yanında kredi kartı numarasını database de tutmak bence riskli her seferinde kart numarası sormak daha güvenilir.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    26 Ağustos 2013 Pazartesi 10:21
    Moderatör
  • MD5 , SHA gibi tek yönlü (hash) şifreleme yöntemlerinde mutlaka metne bir "salt" ekleyin.

    Örneğin kullanıcı "parola" yazmış olsun. Siz bunu her zaman

    "parola" + "sadıuhwq89d7uh23ıu4bn23987" şeklinde hesaba sokun. Bu sayede hashleriniz birilerinin eline geçerse en azından basit parolaları güvene almış olursunuz. Çünkü internette bir çok md5 sözlüğü var. Bu sözlüklerde ~11 haneye kadar olan kelimeler için ters hash yapmak mümkün oluyor.

    Kredi kartı için "Önay" ın dediği gibi çift yönlü bir şifreleme yapmalısınız, fakat kilit (algoritma) ne kadar sağlam olursa olsun anahtar ele geçirildikten sonra yapacak bir şey kalmayacaktır. Güvenliği işin ehli kişilerce kontrol ettirmeden yayına almanız ciddi bir risk olacaktır.


    26 Ağustos 2013 Pazartesi 10:32
    Moderatör

Tüm Yanıtlar

  • md5 decrypt etmede pek başarılı bir yöntem duymadım, bu tür işlemlerde veritabanındaki md5 i decrypt etme yerine gelen veriyi md5 cryptolayıp karşılaştırma yapman gerekiyor, yani veritabanında zaten daha önce üye olurken cryptoladığın şifre olucak, sonrasında üye girişi yapılırken kullanıcının girdiği şifreyi tekrar md5 ile cryptolayıp , cryptolanmış hali ile veritabanında karşılaştırarak sonraki aşamaya yönlendireceksin
    • Yanıt Olarak Öneren makul 29 Aralık 2012 Cumartesi 10:43
    • Yanıt Olarak İşaretleyen Dogan_Fred 29 Aralık 2012 Cumartesi 11:01
    29 Aralık 2012 Cumartesi 10:39
  • MD5 ile veriyi şifreleyip DB ye kayıt ettim. Ancak geri çektiğimde o veriyi tekrar Encode Etmem Gerekiyor. Örneğin bir kredi kartı bilgisini şifreleyip veritabanına kayıt ettim. Ama bankaya göndereceğim zaman bunu tekrar Decode edip göndermem gerekiyor. 
    26 Ağustos 2013 Pazartesi 09:28
  • MD5 ile veriyi şifreleyip DB ye kayıt ettim. Ancak geri çektiğimde o veriyi tekrar Encode Etmem Gerekiyor. Örneğin bir kredi kartı bilgisini şifreleyip veritabanına kayıt ettim. Ama bankaya göndereceğim zaman bunu tekrar Decode edip göndermem gerekiyor. 

    MD5 bu şekilde geri dönüşü olan bir kripto değildir. MD5 ya da SHA ile karıştırdığınız verileri geri alamazsınız. Geri dönebilen karıştırma algoritması kullanmalısınız; TripleDES gibi.

    Ayrıca kredi kartı numaraları 20adet rakamdan oluşur tüm olasılıkları deneyip kart numaralarına ulaşmak çocuk oyuncağı. Sonuçta md5 kullanmanız çok yanlış olmuş

    Bunun yanında kredi kartı numarasını database de tutmak bence riskli her seferinde kart numarası sormak daha güvenilir.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    26 Ağustos 2013 Pazartesi 10:21
    Moderatör
  • MD5 , SHA gibi tek yönlü (hash) şifreleme yöntemlerinde mutlaka metne bir "salt" ekleyin.

    Örneğin kullanıcı "parola" yazmış olsun. Siz bunu her zaman

    "parola" + "sadıuhwq89d7uh23ıu4bn23987" şeklinde hesaba sokun. Bu sayede hashleriniz birilerinin eline geçerse en azından basit parolaları güvene almış olursunuz. Çünkü internette bir çok md5 sözlüğü var. Bu sözlüklerde ~11 haneye kadar olan kelimeler için ters hash yapmak mümkün oluyor.

    Kredi kartı için "Önay" ın dediği gibi çift yönlü bir şifreleme yapmalısınız, fakat kilit (algoritma) ne kadar sağlam olursa olsun anahtar ele geçirildikten sonra yapacak bir şey kalmayacaktır. Güvenliği işin ehli kişilerce kontrol ettirmeden yayına almanız ciddi bir risk olacaktır.


    26 Ağustos 2013 Pazartesi 10:32
    Moderatör
  • ilave olarak sunucuda kriptolamanız da çok bişey ifade etmeyecektir, clientten sunucuya gelene kadar yolda ele geçirilebilir. Bunun için https şart.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    26 Ağustos 2013 Pazartesi 13:21
    Moderatör