ホームページ >バックエンド開発 >C++ >C#のAEを使用してデータを暗号化および復号化するにはどうすればよいですか?

C#のAEを使用してデータを暗号化および復号化するにはどうすればよいですか?

DDD
DDDオリジナル
2025-01-28 20:26:09946ブラウズ

How Can I Encrypt and Decrypt Data Using AES in C#?

c#を使用してaes

を暗号化します

Advanced Encryption Standard(AES)は、データ暗号化に広く使用されている強力なグループパスワードです。 C#では、クラスは128ビット暗号化AES実装を提供します。

RijndaelManagedコード例

次のコードサンプルデモンストレーション

クラスの暗号化と復号化データの使用方法:

RijndaelManaged この例では、指定されたキーとIV暗号化と文字列の不正を使用して、

および
<code class="language-csharp">using System;
using System.Security.Cryptography;

namespace AES加密
{
    class Program
    {
        static void Main(string[] args)
        {
            // 要加密的原始数据
            string originalText = "这是要加密的数据";

            // 生成密钥和初始化向量 (IV)
            using (RijndaelManaged rijndaelManaged = new RijndaelManaged())
            {
                rijndaelManaged.GenerateKey();
                rijndaelManaged.GenerateIV();

                // 加密数据
                byte[] encryptedText = rijndaelManaged.EncryptStringToBytes(originalText, rijndaelManaged.Key, rijndaelManaged.IV);

                // 解密数据
                string decryptedText = rijndaelManaged.DecryptStringFromBytes(encryptedText, rijndaelManaged.Key, rijndaelManaged.IV);

                // 显示原始数据和解密数据
                Console.WriteLine("原始文本: " + originalText);
                Console.WriteLine("加密文本: " + Convert.ToBase64String(encryptedText));
                Console.WriteLine("解密文本: " + decryptedText);
            }
        }
    }
}</code>
メソッドが補助関数を提供します。 オブジェクトが正しくリリースされることを確認するために、ステートメントが追加されます。

EncryptStringToBytes注: DecryptStringFromBytes usingキーとIVは、将来データを復号化するときに使用できるように、安全に生成および保存する必要があります。 RijndaelManaged

AESは、さまざまな暗号化モードに使用できます。コードの例は、パスワードグループリンク(CBC)モードを使用しますが、他のモードも使用できます。

    この改訂された回答は、テキストを言い換えて、より良いリソース管理のために
  • >ステートメントを追加することで改善されます

以上がC#のAEを使用してデータを暗号化および復号化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。