Veysel Uğur KIZMAZ

C# ile MD5 Sifreleme

16.06.2012Okunma Sayısı: 11117Kategori: C#.Net

MD5 ( Message-Digest Alghoritm 5) isimli algoritma, günümüzde sifreleme konusunda en çok kullanilan sifreleme algoritmalarindan birisidir. Sifrelemek istenilen veriyi 128 bit uzunlugunda sifreler ve tek yönlü sifreleme algoritmasi (sadece sifreleme özelligi var) olarak da bilinir.

Genellikle sifre saklamak için kullanilmaktadir.

MD5 algoritmasi, .Net'in kütüphanesinde mevcuttur. Simdi bu algoritmanin C# dili ile nasil kullanilacagini inceleyelim.

Öncelikle projemize

using System.Security.Cryptography;

namespace'ini ekleyelim.

 

Veritabanina sifremizi MD5 algoritmasiyla sifreleyerek kaydetmek istiyoruz. Bunun için MD5eDönüstür isimli fonksiyonu inceleyelim.

 

    public static string MD5eDonustur(string metin)
    {
        MD5CryptoServiceProvider pwd = new MD5CryptoServiceProvider();
        return Sifrele(metin, pwd);
    }
 

 

Sifremizi, MD5CryptoProvider isimli degisken yardimiyla sifremi Sifrele fonksiyonunda MD5'e dönüstürdük:

 

    private static string Sifrele(string metin, HashAlgorithm alg)
    {
        byte[] byteDegeri = System.Text.Encoding.UTF8.GetBytes(metin);
        byte[] sifreliByte = alg.ComputeHash(byteDegeri);
        return Convert.ToBase64String(sifreliByte);
    }

 

Metnimizi Sifrele fonksiyonuyla sifreledik. Önce metnimizi byte dizisine aktardik ve bu diziyi MD5 algoritmasiyla sifreleyip sonucu string türünde geri döndürdük.

Kodumuzu bir örnek ile deneyelim:

label1.Text = MD5eDonustur(textBox1.Text);

 

Veysel Ugur KIZMAZ