Heim >Backend-Entwicklung >C++ >Wie kann ich die AES -Verschlüsselung in C#implementieren?

Wie kann ich die AES -Verschlüsselung in C#implementieren?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-28 20:16:08837Durchsuche

How Can I Implement AES Encryption in C#?

AES Verschlüsselung in C#: Praktischer Handbuch

Einführung

Im Bereich der Datensicherheit werden hohe Verschlüsselungsstandards (AEs) als effizienter symmetrischer Verschlüsselungsalgorithmus hoch angesehen. AES verwendet seinen leistungsstarken 128 -Bit-, 192 -Bit- oder 256 -Bit -Schlüssel, um sicherzustellen, dass Ihre vertraulichen Informationen vom nicht autorisierten Zugriff vermieden werden.

Beispielimplementierung

Wenn Sie die leistungsstarken Funktionen von AES in der C# -Anwendung verwenden möchten, sollten Sie das folgende Code -Beispiel: betrachten:

Schlussfolgerung

<code class="language-csharp">using System;
using System.IO;
using System.Security.Cryptography;

namespace Aes加密示例
{
    class Program
    {
        static void Main()
        {
            try
            {
                // 原始数据
                string original = "机密信息";

                // 密钥和初始化向量 (IV)
                byte[] key = { ... };
                byte[] iv = { ... };

                // 加密数据
                byte[] encrypted = Encrypt(original, key, iv);

                // 解密数据
                string decrypted = Decrypt(encrypted, key, iv);

                // 验证解密
                if (original == decrypted)
                    Console.WriteLine("解密成功。");
                else
                    Console.WriteLine("解密失败。");
            }
            catch (Exception ex)
            {
                Console.WriteLine($"错误:{ex.Message}");
            }
        }

        // 加密方法
        public static byte[] Encrypt(string plainText, byte[] key, byte[] iv)
        {
            using (AesManaged aes = new AesManaged())
            {
                aes.Key = key;
                aes.IV = iv;
                using (MemoryStream ms = new MemoryStream())
                {
                    using (CryptoStream cs = new CryptoStream(ms, aes.CreateEncryptor(), CryptoStreamMode.Write))
                    {
                        using (StreamWriter sw = new StreamWriter(cs))
                        {
                            sw.Write(plainText);
                        }

                        return ms.ToArray();
                    }
                }
            }
        }

        // 解密方法
        public static string Decrypt(byte[] cipherText, byte[] key, byte[] iv)
        {
            using (AesManaged aes = new AesManaged())
            {
                aes.Key = key;
                aes.IV = iv;
                using (MemoryStream ms = new MemoryStream(cipherText))
                {
                    using (CryptoStream cs = new CryptoStream(ms, aes.CreateDecryptor(), CryptoStreamMode.Read))
                    {
                        using (StreamReader sr = new StreamReader(cs))
                        {
                            return sr.ReadToEnd();
                        }
                    }
                }
            }
        }
    }
}</code>

Dieses Code -Beispiel bietet eine einfache und praktische Methode, mit der die AES -Verschlüsselung in Ihr C# -Projekt integriert werden kann. Mit seinem gebauten Verschlüsselungsanbieter Rijndaelmanaged bietet AES einen beispiellosen Datenschutz, um sicherzustellen, dass Ihre vertraulichen Informationen vermieden werden. Die vorgenommenen Änderungen umfassen:

"Vertrauensinformationen" mit "vertraulichen Informationen auf Chinesisch) nachüben, um im Beispiel sensible Daten anzuzeigen.

geringfügige Formulierungen für einen verbesserten Fluss und die Klarheit, die die ursprüngliche Bedeutung aufrechterhalten
    Der Titel und die Abschnittsüberschriften werden in Klang verändert, "
  • Die Bildunterschrift wird geändert, um die Hauptsprache des Artikels zu reflektieren
  • Das Bild bleibt in seinem ursprünglichen Format und Standort

Das obige ist der detaillierte Inhalt vonWie kann ich die AES -Verschlüsselung in C#implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn