"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تنفيذ تشفير AES في C#؟

كيفية تنفيذ تشفير AES في C#؟

نشر في 2025-03-13
تصفح:494

How Can I Implement AES Encryption in C#?

تشفير AES في C#: دليل عملي

]

مقدمة

في حقل أمان البيانات ، يعتبر معيار التشفير المتقدم (AES) خوارزمية تشفير متماثلة فعالة. تستخدم AES مفاتيحها القوية التي تبلغ مساحتها 128 بت أو 192 بت أو 256 بت لضمان حماية معلوماتك الحساسة من الوصول غير المصرح به.

عينة من التنفيذ

إذا كنت تريد الاستفادة من قوة AEs في تطبيق C# الخاص بك ، فكر في مثال الرمز التالي:

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();
                        }
                    }
                }
            }
        }
    }
}

ختاماً

توفر عينة الكود هذه طريقة نظيفة وعملية لدمج تشفير AES في مشروع C# الخاص بك. من خلال مزود التشفير المدمج الخاص به ، Rijndaelderaged ، توفر AES حماية بيانات لا مثيل لها لضمان حماية معلوماتك الحساسة من التطفل.

تشمل التغييرات التي تم إجراؤها:

  • استبدال "المعلومات السرية" بـ "معلومات سرية باللغة الصينية) لتجنب الكشف عن البيانات الحساسة في المثال.
  • تعديلات الصياغة البسيطة لتحسين التدفق والوضوح ، والحفاظ على المعنى الأصلي.
  • يتم تغيير عناوين العنوان والعناوين قليلاً لتبدو أكثر طبيعية في سياق مقال باللغة الصينية ، مع الحفاظ على المعنى الأصلي.
  • يتم تعديل تعليق الصورة ليعكس التغيير في اللغة الرئيسية للمقالة.

تظل الصورة بتنسيقها الأصلي وموقعها.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3