C# ile MD5 şifreleme ve çözme

Bu dersimzide C# ile textbox'a girilen metni MD5 ile şifreleyip tekrardan çözeceğiz.

Bu dersimzide C# ile textbox'a girilen metni MD5 ile şifreleyip tekrardan çözeceğiz.

C# Form uygulaması oluşturalım ve formumuza 2 adet Textbox, 2 adet Button ve 1 adet Label ekleyelim.

Formun görüntüsü:



Aşağıdaki sınıfları entegre edelim:


using System.IO;

using System.Security.Cryptography;



Aşağıdaki kodları Formun cs kısmına ekleyelim.

private string password = "1";



        private byte[] Sifrele(byte[] SifresizVeri, byte[] Key, byte[] IV)

        {

            MemoryStream ms = new MemoryStream();

            Rijndael alg = Rijndael.Create();



            alg.Key = Key;

            alg.IV = IV;



            CryptoStream cs = new CryptoStream(ms,



            alg.CreateEncryptor(), CryptoStreamMode.Write);

            cs.Write(SifresizVeri, 0, SifresizVeri.Length);

            cs.Close();



            byte[] sifrelenmisVeri = ms.ToArray();

            return sifrelenmisVeri;

        }



        private byte[] SifreCoz(byte[] SifreliVeri, byte[] Key, byte[] IV)

        {

            MemoryStream ms = new MemoryStream();

            Rijndael alg = Rijndael.Create();



            alg.Key = Key;

            alg.IV = IV;



            CryptoStream cs = new CryptoStream(ms, alg.CreateDecryptor(), CryptoStreamMode.Write);



            cs.Write(SifreliVeri, 0, SifreliVeri.Length);

            cs.Close();



            byte[] SifresiCozulmusVeri = ms.ToArray();

            return SifresiCozulmusVeri;

        }



        public string TextSifrele(string sifrelenecekMetin)

        {

            byte[] sifrelenecekByteDizisi = System.Text.Encoding.Unicode.GetBytes(sifrelenecekMetin);



            PasswordDeriveBytes pdb = new PasswordDeriveBytes(password, new byte[] {0x49, 0x76, 0x61, 0x6e, 0x20, 0x4d,



            0x65, 0x64, 0x76, 0x65, 0x64, 0x65, 0x76});



            byte[] SifrelenmisVeri = Sifrele(sifrelenecekByteDizisi,



                 pdb.GetBytes(32), pdb.GetBytes(16));



            return Convert.ToBase64String(SifrelenmisVeri);

        }



        public string TextSifreCoz(string text)

        {

            byte[] SifrelenmisByteDizisi = Convert.FromBase64String(text);



            PasswordDeriveBytes pdb = new PasswordDeriveBytes(password,



                new byte[] {0x49, 0x76, 0x61, 0x6e, 0x20, 0x4d, 0x65,



            0x64, 0x76, 0x65, 0x64, 0x65, 0x76});



            byte[] SifresiCozulmusVeri = SifreCoz(SifrelenmisByteDizisi,



                pdb.GetBytes(32), pdb.GetBytes(16));



            return System.Text.Encoding.Unicode.GetString(SifresiCozulmusVeri);

        }



Şifrele butonunun kod kısmına gelelim ve aşağıdaki kodu yazalım :

label1.Text= TextSifrele(TextBox1.Text);



Daha sonra ise çöz butonunun kod kısmına aşağıdaki kodu yazalım:

TextBox2.Text= TextSifreCoz(label1.Text);



Kod kısmı bu kadar artık programı çalıştıralım.

TextBox1'e metnimizi girelim ve Şifrele diyelim. Aşağıdaki gibi bir görüntüsü olacaktır.,



Şimdi ise Çöz butonuna tıklayalım. Aşağıdaki gibi bir görüntüsü olacaktır.



Programımız başarılı bir şekilde çalıştı.

  • Etiketler;
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git