Search
 
SCRIPT & CODE EXAMPLE
 

CSHARP

C# encrypt folder SHA512

public class EncryptionFile
    {
        public void EncryptFile(string file, string password)
        {
            byte[] bytesToBeEncrypted = File.ReadAllBytes(file);
            byte[] passwordBytes = Encoding.UTF8.GetBytes(password);
            // Hash the password with SHA256
            passwordBytes = SHA256.Create().ComputeHash(passwordBytes);
            byte[] bytesEncrypted = CoreEncryption.AES_Encrypt(bytesToBeEncrypted, passwordBytes);
            string fileEncrypted = file;
            File.WriteAllBytes(fileEncrypted, bytesEncrypted);
        }
    }

    public class DecryptionFile
    {
        public void DecryptFile(string fileEncrypted, string password)
        {

            byte[] bytesToBeDecrypted = File.ReadAllBytes(fileEncrypted);
            byte[] passwordBytes = Encoding.UTF8.GetBytes(password);
            passwordBytes = SHA256.Create().ComputeHash(passwordBytes);

            byte[] bytesDecrypted = CoreDecryption.AES_Decrypt(bytesToBeDecrypted, passwordBytes);

            string file = fileEncrypted;
            File.WriteAllBytes(file, bytesDecrypted);
        }
    }
Comment

C# encrypt folder SHA512

public class CoreEncryption
    {
        public static byte[] AES_Encrypt(byte[] bytesToBeEncrypted, byte[] passwordBytes)
        {
            byte[] encryptedBytes = null;

            // Set your salt here, change it to meet your flavor:
            // The salt bytes must be at least 8 bytes.
            byte[] saltBytes = new byte[] { 1, 2, 3, 4, 5, 6, 7, 8 };

            using (MemoryStream ms = new MemoryStream())
            {
                using (RijndaelManaged AES = new RijndaelManaged())
                {
                    AES.KeySize = 256;
                    AES.BlockSize = 128;

                    var key = new Rfc2898DeriveBytes(passwordBytes, saltBytes, 1000);
                    AES.Key = key.GetBytes(AES.KeySize / 8);
                    AES.IV = key.GetBytes(AES.BlockSize / 8);

                    AES.Mode = CipherMode.CBC;

                    using (var cs = new CryptoStream(ms, AES.CreateEncryptor(), CryptoStreamMode.Write))
                    {
                        cs.Write(bytesToBeEncrypted, 0, bytesToBeEncrypted.Length);
                        cs.Close();
                    }
                    encryptedBytes = ms.ToArray();
                }
            }

            return encryptedBytes;
        }
    }

    public class CoreDecryption
    {
        public static byte[] AES_Decrypt(byte[] bytesToBeDecrypted, byte[] passwordBytes)
        {
            byte[] decryptedBytes = null;

            // Set your salt here, change it to meet your flavor:
            // The salt bytes must be at least 8 bytes.
            byte[] saltBytes = new byte[] { 1, 2, 3, 4, 5, 6, 7, 8 };

            using (MemoryStream ms = new MemoryStream())
            {
                using (RijndaelManaged AES = new RijndaelManaged())
                {
                    AES.KeySize = 256;
                    AES.BlockSize = 128;

                    var key = new Rfc2898DeriveBytes(passwordBytes, saltBytes, 1000);
                    AES.Key = key.GetBytes(AES.KeySize / 8);
                    AES.IV = key.GetBytes(AES.BlockSize / 8);

                    AES.Mode = CipherMode.CBC;

                    using (var cs = new CryptoStream(ms, AES.CreateDecryptor(), CryptoStreamMode.Write))
                    {
                        cs.Write(bytesToBeDecrypted, 0, bytesToBeDecrypted.Length);
                        cs.Close();
                    }
                    decryptedBytes = ms.ToArray();
                }
            }

            return decryptedBytes;
        }
    }
Comment

C# encrypt folder SHA512

    static void Test1()
    {

        string[] files = Directory.GetFiles(@"D:\_test", "*", SearchOption.AllDirectories);

        EncryptionFile enc = new EncryptionFile();
        //DecryptionFile dec = new DecryptionFile();

        string password = "abcd";

        for (int i=0; i<files.Length; i++)
        {
            Console.WriteLine(files[i]);
            enc.EncryptFile(files[i], password);
            //dec.DecryptFile(files[i], password);
        }
    }
Comment

PREVIOUS NEXT
Code Example
Csharp :: c# get first and last day of current month 
Csharp :: Retrieving a value in one class that is set in another 
Csharp :: wpf change the content of the button wait 5 secound and then change it again 
Csharp :: C# Bitwise Left Shift 
Csharp :: check which activity in focus in android 
Csharp :: Console.WriteLine($"Hello {Ana.ToUpper($)}!"); 
Csharp :: music file explorer c# 
Csharp :: how to set the forgound color of listitems in c# 
Csharp :: convert physical path to virtual path in c# 
Csharp :: c# blazor update state 
Csharp :: ienumerable tolist 
Csharp :: VideoPlayer.isPlaying 
Csharp :: 403 forbidden error using Windows Forms 
Csharp :: .net mvc foreach with index 
Csharp :: c# create empty file if not exists 
Csharp :: c# supplier equivalent 
Csharp :: how can find github issue closed date 
Csharp :: IOS app crashing on ios 15 unity 
Csharp :: ascii art american flag 
Csharp :: OOP inC# 
Csharp :: c# servercertificatevalidationcallback 
Csharp :: how to download things c# 
Csharp :: get user by username c# 
Csharp :: unity matchinfo 
Csharp :: c# odd or even 
Csharp :: ef core identity get user with relationships 
Csharp :: localhost ssl certificate error in visual studio 2022 .net 6 
Csharp :: create shortcut C# WPF 
Csharp :: bunifu form fade transition c# 
Csharp :: c# result set from stored procedure 
ADD CONTENT
Topic
Content
Source link
Name
4+9 =