C# MD5 İle Şifreleme
C# MD5 İle Şifreleme
MD5 tek yönlü bir şifreleme algoritmasıdır. Girilen verinin boyutu ne olursa olsun 128 bitlik bir veri çıkartır.
bunun için System.Security.Cryptography kutüphanesini kullanmamız gereklidir.
public static string MD5Sifrele(string metin) { // MD5CryptoServiceProvider nesnenin yeni bir instance'sını oluşturalım. MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); //Girilen veriyi bir byte dizisine dönüştürelim ve hash hesaplamasını yapalım. byte[] btr = Encoding.UTF8.GetBytes(metin); btr = md5.ComputeHash(btr); //byte'ları biriktirmek için yeni bir StringBuilder ve string oluşturalım. StringBuilder sb = new StringBuilder(); //hash yapılmış her bir byte'ı dizi içinden alalım ve her birini hexadecimal string olarak formatlayalım. foreach (byte ba in btr) { sb.Append(ba.ToString("x2").ToLower()); } //hexadecimal(onaltılık) stringi geri döndürelim. return sb.ToString(); }
yukarıdaki function ile şifreleme yapabiliyoruz. şifrelemek istediğimiz veriyi bu function a yolladığımızda geriye şifrelenmiş halini döner. unutmamak lazım tek yönlüdür. şifrelenen veri geri dönüştürülemez.
string sifre = MD5Sifrele("erkandursun"); Console.Write(sifre);
yaptığımız da ekrana "a103938b6563207cbf208d8bf8b042d0" yazacaktır.
doğru çalıştığınız test etmeniz için örnek bir kaç data :
Data | MD5 ile şifrelenmiş Data |
---|---|
erkandursun | a103938b6563207cbf208d8bf8b042d0 |
123123 | 4297f44b13955235245b2497399d7a93 |
şifre123!*+ | 2b69d44459afddb70bb6d2036709b00e |
test-+/*!'^+%5567889651test*erkandursun-com | 063e2f82000f53b99c578e337aafb4f2 |