C# İstediğiniz dosyayı istediğiniz uzantıyla şifreleme ve çözme

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
☞ MaMo434376
Seçkin Üye
Katılım
29 Ara 2016
Mesajlar
414
Tepki puanı
65
Yaş
7
9 HİZMET YILI
"Klasör şifreleme yolda"

Arkadaşlar bu kod kolay kolay bulunan bir kod değil bunu ben baştan söyliyim.
Neyse konumuza gelirsek arkadaşlar bu kod istediğiniz dosyayı şifreliyor aynı WANNA CRY'daki gibi ve isterseniz yine çözebilirsiniz ve uzantısını değiştiriyor en sevdiğim özelliği bu zaten xd

En üste gelecek kodlar:
C#:
using System.IO;
using System.Security.Cryptography;
using System.Runtime.InteropServices;

Bu kodları formun boş bir yerine yapıştırın:
Alttaki FileEncrypt bölümündeki .MM76 yazan yere istediğiniz uzantıyı yazın.
C#:
 //
        [DllImport("KERNEL32.DLL", EntryPoint = "RtlZeroMemory")]
        public static extern bool ZeroMemory(IntPtr Destination, int Length);
        public static byte[] GenerateRandomSalt()
        {
            byte[] data = new byte[32];

            using (RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider())
            {
                for (int i = 0; i < 10; i++)
                {
                    rng.GetBytes(data);
                }
            }

            return data;
        }
        private void FileEncrypt(string inputFile, string password)
        {
            byte[] salt = GenerateRandomSalt();
            FileStream fsCrypt = new FileStream(inputFile + ".MM76", FileMode.Create); //.MM76 yazan yere istediğiniz uzantıyı yazın.
            byte[] passwordBytes = System.Text.Encoding.UTF8.GetBytes(password);
            RijndaelManaged AES = new RijndaelManaged();
            AES.KeySize = 256;
            AES.BlockSize = 128;
            AES.Padding = PaddingMode.PKCS7;
            var key = new Rfc2898DeriveBytes(passwordBytes, salt, 50000);
            AES.Key = key.GetBytes(AES.KeySize / 8);
            AES.IV = key.GetBytes(AES.BlockSize / 8);
            AES.Mode = CipherMode.CFB;
            fsCrypt.Write(salt, 0, salt.Length);
            CryptoStream cs = new CryptoStream(fsCrypt, AES.CreateEncryptor(), CryptoStreamMode.Write);
            FileStream fsIn = new FileStream(inputFile, FileMode.Open);
            byte[] buffer = new byte[1048576];
            int read;
            try
            {
                while ((read = fsIn.Read(buffer, 0, buffer.Length)) > 0)
                {
                    Application.DoEvents();
                    cs.Write(buffer, 0, read);
                }

                fsIn.Close();
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: " + ex.Message);
            }
            finally
            {
                cs.Close();
                fsCrypt.Close();
            }
        }

        private void FileDecrypt(string inputFile, string outputFile, string password)
        {
            byte[] passwordBytes = System.Text.Encoding.UTF8.GetBytes(password);
            byte[] salt = new byte[32];

            FileStream fsCrypt = new FileStream(inputFile, FileMode.Open);
            fsCrypt.Read(salt, 0, salt.Length);

            RijndaelManaged AES = new RijndaelManaged();
            AES.KeySize = 256;
            AES.BlockSize = 128;
            var key = new Rfc2898DeriveBytes(passwordBytes, salt, 50000);
            AES.Key = key.GetBytes(AES.KeySize / 8);
            AES.IV = key.GetBytes(AES.BlockSize / 8);
            AES.Padding = PaddingMode.PKCS7;
            AES.Mode = CipherMode.CFB;

            CryptoStream cs = new CryptoStream(fsCrypt, AES.CreateDecryptor(), CryptoStreamMode.Read);

            FileStream fsOut = new FileStream(outputFile, FileMode.Create);

            int read;
            byte[] buffer = new byte[1048576];

            try
            {
                while ((read = cs.Read(buffer, 0, buffer.Length)) > 0)
                {
                    Application.DoEvents();
                    fsOut.Write(buffer, 0, read);
                }
            }
            catch (CryptographicException ex_CryptographicException)
            {
                Console.WriteLine("CryptographicException error: " + ex_CryptographicException.Message);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: " + ex.Message);
            }

            try
            {
                cs.Close();
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error by closing CryptoStream: " + ex.Message);
            }
            finally
            {
                fsOut.Close();
                fsCrypt.Close();
            }
        }
        //

Şifreleme:
"C:\Users\mamo4\Desktop\deneme\deneme.txt" yazan yere şifrelemek istediğiniz dosyanın olduğu yeri yazın ama dikkat dosyanın ismini uzantısıyla yazmayı sakın unutmayın örnek: c:\mamo.exe
File.Delete kısmınada FileDecrypt(@"C:\Users\mamo4\Desktop\deneme\deneme.txt" bölümüyle aynı olacak.
C#:
FileEncrypt(@"C:\Users\mamo4\Desktop\deneme\deneme.txt", "4545645");
File.Delete(@"C:\Users\mamo4\Desktop\deneme\deneme.txt");

Şifreyi Çözme:
"C:\Users\mamo4\Desktop\deneme\deneme.txt.MM76" yazan yere şifrelediğiniz dosyanın olduğu yeri yazın ama DİKKAT UZANTISIYLA YAZIN ÖRNEK: mamo.exe.MM76
"C:\Users\mamo4\Desktop\deneme\deneme.txt" yazan yere ise şifreyi çözdükden sonra nereye çıkarmak istiyorsanız orayı yazın ama bu sefer normal uzantısıyla yazın örnek: mamo.exe
File.Delete kısmınada FileDecrypt(@"C:\Users\mamo4\Desktop\deneme\deneme.txt.MM76" bölümüyle aynı olacak.
C#:
string password = "4545645";
            GCHandle gch = GCHandle.Alloc(password, GCHandleType.Pinned);
            FileDecrypt(@"C:\Users\mamo4\Desktop\deneme\deneme.txt.MM76", @"C:\Users\mamo4\Desktop\deneme\deneme.txt", password);
            ZeroMemory(gch.AddrOfPinnedObject(), password.Length * 2);
            gch.Free();
            Console.WriteLine("The given password is surely nothing: " + password);
            File.Delete(@"C:\Users\mamo4\Desktop\deneme\deneme.txt.MM76");
 
Son düzenleme:
Seçkin Üye
Katılım
10 Mar 2017
Mesajlar
330
Tepki puanı
32
Ödüller
5
9 HİZMET YILI
bişey sorucam ben malwarebytes indirmek istiyorum ama bu silinecek türden indirince virüs gibi silinmeyenlerden değil adam gibi silinecek bir yerden indirmek istiyorum bana adam akıllı link atabilecek varmı
 
The story about good
Ultra Üye
Katılım
29 Ara 2017
Mesajlar
2,839
Çözümler
3
Tepki puanı
4,164
Ödüller
10
8 HİZMET YILI
bişey sorucam ben malwarebytes indirmek istiyorum ama bu silinecek türden indirince virüs gibi silinmeyenlerden değil adam gibi silinecek bir yerden indirmek istiyorum bana adam akıllı link atabilecek varmı
Bağlantıları görmek için lütfen Giriş Yap
? programlar ve özelliklerden kaldırılmıyormu zaten ?
 
  • Konuyu başlatan
  • Yasaklandı
  • #5
☞ MaMo434376
Seçkin Üye
Katılım
29 Ara 2016
Mesajlar
414
Tepki puanı
65
Yaş
7
9 HİZMET YILI
Silince silinecekmi yani kökten tamamen avast silinmiyorda
bişey sorucam ben malwarebytes indirmek istiyorum ama bu silinecek türden indirince virüs gibi silinmeyenlerden değil adam gibi silinecek bir yerden indirmek istiyorum bana adam akıllı link atabilecek varmı
Bağlantıları görmek için lütfen Giriş Yap
? programlar ve özelliklerden kaldırılmıyormu zaten ?
krşm yanlış yerdesiniz xd
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst