C# Veri Şifreleme ve Çözme (Encrypt & Decrypt)

C# Veri Şifreleme ve Çözme (Encrypt & Decrypt)

Bu dersimizde C# Veri Şifreleme ve Çözme (Encrypt & Decrypt) işlemlerini göreceğiz

Selamlar arkadaşlar,

Bu dersimizde C# Veri Şifreleme ve Çözme (Encrypt & Decrypt) işlemlerini nasıl yapacağımızı anlatmaya çalışacağım. Bu konudaki kodlar hazır olduğundan ditek kodları paylaşacağım. Ancak dilerseniz bu kodları geliştirebilirsiniz. Benim amacım SQL Conneciton String deki şifre kısmını şifrelemekti. İşimi de fazlası ile gördü.

Encrypt = Şifrelemek

public string Encrypt(string sifre)
        {
            byte[] data = UTF8Encoding.UTF8.GetBytes(sifre);
            using (MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider())
            {
                byte[] keys = md5.ComputeHash(UTF8Encoding.UTF8.GetBytes(hash));
                using (TripleDESCryptoServiceProvider tripDes = new TripleDESCryptoServiceProvider() { Key = keys, Mode = CipherMode.ECB, Padding = PaddingMode.PKCS7 })
                {
                    ICryptoTransform transform = tripDes.CreateEncryptor();
                    byte[] results = transform.TransformFinalBlock(data, 0, data.Length);
                    return Convert.ToBase64String(results, 0, results.Length);
                }
            }
        }

Decrypt = Çözümlemek

 public string Decrypt(string SifrelenmisDeger)
        {
            byte[] data = Convert.FromBase64String(SifrelenmisDeger);
            using (MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider())
            {
                byte[] keys = md5.ComputeHash(UTF8Encoding.UTF8.GetBytes(hash));
                using (TripleDESCryptoServiceProvider tripDes = new TripleDESCryptoServiceProvider() { Key = keys, Mode = CipherMode.ECB, Padding = PaddingMode.PKCS7 })
                {
                    ICryptoTransform transform = tripDes.CreateDecryptor();
                    byte[] results = transform.TransformFinalBlock(data, 0, data.Length);
                    return UTF8Encoding.UTF8.GetString(results);
                }
            }
        }

Arkadaşlar bu iki kod bloğu arasında ortak bir nokta vardır. Oda Hash degiskenidir.

     byte[] keys = md5.ComputeHash(UTF8Encoding.UTF8.GetBytes(hash));

Bu satırda görüğünüz hash adında bir değişkenimiz olacak. Bu değişken Encrypt içinde Decrypt için de aynı olmalıdır aksi takdirde sonuç hatalı olacaktır.

 public string hash = "MustafaBÜKÜLMEZ";

Bu dersimizde bu kadar arkadaşlar,

Diğer derslerde görüşmek üzere.

Bol Kodlu Günler

http://mustafabukulmez.com/

Yorum Yaz

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

Yukarı Git