C# Verschlüsslung

Hi,

ich wollte mal nachfragen ob es in C# möglichkeiten gibt Texte / Dateien zu verschlüsseln. Also mit komplexen Algorythmen wie SHA, AES, ... Keine Cäser Chiffrierung o.ä..

Ich hoffe ihr wisst was ich meine:wink:

Gruß,
Manuel0
 
Code Beispiel:

Code:
static void Main(string[] args)
        {
            string klartext = "Hallo HaBo, dies ist ein Beispiel für AES/CBC/ISO10126";
            byte[] klartext_bytes = Encoding.Unicode.GetBytes(klartext);
            
            System.Security.Cryptography.AesCryptoServiceProvider aes_csp = new System.Security.Cryptography.AesCryptoServiceProvider();
            var mode = System.Security.Cryptography.CipherMode.CBC;
            var padding = System.Security.Cryptography.PaddingMode.ISO10126;
            var key = aes_csp.Key;
            var iv = aes_csp.IV;

            aes_csp.Mode = mode;
            aes_csp.Padding = padding;
            var enc = aes_csp.CreateEncryptor();
            byte[] chiffrat = enc.TransformFinalBlock(klartext_bytes, 0, klartext_bytes.Length);

            Console.WriteLine("Der Klartext lautet: {0}", klartext);
            Console.WriteLine("Der Klartext (Bytes) lautet: {0}", BitConverter.ToString(klartext_bytes));
            Console.WriteLine("Der AES-Schlüssel lautet: {0}", BitConverter.ToString(key));
            Console.WriteLine("Der AES-Modus ist: {0}", mode);
            Console.WriteLine("Das Padding ist: {0}", padding);
            Console.WriteLine("Der AES-IV lautet: {0}", BitConverter.ToString(iv));
            Console.WriteLine("Das Chiffrat lautet: {0}", BitConverter.ToString(chiffrat));


            System.Security.Cryptography.AesCryptoServiceProvider anderer_aes_csp = new System.Security.Cryptography.AesCryptoServiceProvider();
            anderer_aes_csp.Mode = mode;
            anderer_aes_csp.Padding = padding;
            anderer_aes_csp.IV = iv;
            anderer_aes_csp.Key = key;
            var dec = anderer_aes_csp.CreateDecryptor();

            byte[] dechiffriert_bytes = dec.TransformFinalBlock(chiffrat, 0, chiffrat.Length);
            string dechiffriert = Encoding.Unicode.GetString(dechiffriert_bytes);
            Console.WriteLine("Das Dechiffrat(Bytes) lautet: {0}", BitConverter.ToString(dechiffriert_bytes));
            Console.WriteLine("Das Dechiffrat lautet: {0}", dechiffriert);
        }
 
Zurück
Oben