<i id='kjNvW'><tr id='kjNvW'><dt id='kjNvW'><q id='kjNvW'><span id='kjNvW'><b id='kjNvW'><form id='kjNvW'><ins id='kjNvW'></ins><ul id='kjNvW'></ul><sub id='kjNvW'></sub></form><legend id='kjNvW'></legend><bdo id='kjNvW'><pre id='kjNvW'><center id='kjNvW'></center></pre></bdo></b><th id='kjNvW'></th></span></q></dt></tr></i><div id='kjNvW'><tfoot id='kjNvW'></tfoot><dl id='kjNvW'><fieldset id='kjNvW'></fieldset></dl></div>
  • <tfoot id='kjNvW'></tfoot>

    <small id='kjNvW'></small><noframes id='kjNvW'>

  • <legend id='kjNvW'><style id='kjNvW'><dir id='kjNvW'><q id='kjNvW'></q></dir></style></legend>
      <bdo id='kjNvW'></bdo><ul id='kjNvW'></ul>

      1. 如何使用密码生成 Rijndael KEY 和 IV?

        时间:2023-06-02

          <tfoot id='NVX9n'></tfoot>
        • <legend id='NVX9n'><style id='NVX9n'><dir id='NVX9n'><q id='NVX9n'></q></dir></style></legend>

            <i id='NVX9n'><tr id='NVX9n'><dt id='NVX9n'><q id='NVX9n'><span id='NVX9n'><b id='NVX9n'><form id='NVX9n'><ins id='NVX9n'></ins><ul id='NVX9n'></ul><sub id='NVX9n'></sub></form><legend id='NVX9n'></legend><bdo id='NVX9n'><pre id='NVX9n'><center id='NVX9n'></center></pre></bdo></b><th id='NVX9n'></th></span></q></dt></tr></i><div id='NVX9n'><tfoot id='NVX9n'></tfoot><dl id='NVX9n'><fieldset id='NVX9n'></fieldset></dl></div>
          1. <small id='NVX9n'></small><noframes id='NVX9n'>

              <tbody id='NVX9n'></tbody>
                • <bdo id='NVX9n'></bdo><ul id='NVX9n'></ul>

                  本文介绍了如何使用密码生成 Rijndael KEY 和 IV?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  限时送ChatGPT账号..

                  如何使用密码生成 Rijndael KEY 和 IV?密钥长度必须为 256 位.

                  How to generate Rijndael KEY and IV using a passphrase? The key length must be in 256 bits.

                  推荐答案

                  这是我在网上找到的即插即用代码.它只是工作:

                  This is plug and play code that I found on internet. It just works:

                  using System.IO;
                  using System.Security.Cryptography;
                  
                  private static readonly byte[] SALT = new byte[] { 0x26, 0xdc, 0xff, 0x00, 0xad, 0xed, 0x7a, 0xee, 0xc5, 0xfe, 0x07, 0xaf, 0x4d, 0x08, 0x22, 0x3c };
                  
                  public static byte[] Encrypt(byte[] plain, string password)
                  {
                      MemoryStream memoryStream;
                      CryptoStream cryptoStream;
                      Rijndael rijndael = Rijndael.Create();
                      Rfc2898DeriveBytes pdb = new Rfc2898DeriveBytes(password, SALT);
                      rijndael.Key = pdb.GetBytes(32);
                      rijndael.IV = pdb.GetBytes(16);
                      memoryStream = new MemoryStream();
                      cryptoStream = new CryptoStream(memoryStream, rijndael.CreateEncryptor(), CryptoStreamMode.Write);
                      cryptoStream.Write(plain, 0, plain.Length);
                      cryptoStream.Close();
                      return memoryStream.ToArray();
                  }
                  
                  public static byte[] Decrypt(byte[] cipher, string password)
                  {
                      MemoryStream memoryStream;
                      CryptoStream cryptoStream;
                      Rijndael rijndael = Rijndael.Create();
                      Rfc2898DeriveBytes pdb = new Rfc2898DeriveBytes(password, SALT);
                      rijndael.Key = pdb.GetBytes(32);
                      rijndael.IV = pdb.GetBytes(16);
                      memoryStream = new MemoryStream();
                      cryptoStream = new CryptoStream(memoryStream, rijndael.CreateDecryptor(), CryptoStreamMode.Write);
                      cryptoStream.Write(cipher, 0, cipher.Length);
                      cryptoStream.Close();
                      return memoryStream.ToArray();
                  }
                  

                  这篇关于如何使用密码生成 Rijndael KEY 和 IV?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:应该添加还是删除这些论点? 下一篇:如何从 PKCS#12 字节数组构造 X509Certificate2 抛出

                  相关文章

                  最新文章

                • <i id='yeiNq'><tr id='yeiNq'><dt id='yeiNq'><q id='yeiNq'><span id='yeiNq'><b id='yeiNq'><form id='yeiNq'><ins id='yeiNq'></ins><ul id='yeiNq'></ul><sub id='yeiNq'></sub></form><legend id='yeiNq'></legend><bdo id='yeiNq'><pre id='yeiNq'><center id='yeiNq'></center></pre></bdo></b><th id='yeiNq'></th></span></q></dt></tr></i><div id='yeiNq'><tfoot id='yeiNq'></tfoot><dl id='yeiNq'><fieldset id='yeiNq'></fieldset></dl></div>

                        <bdo id='yeiNq'></bdo><ul id='yeiNq'></ul>
                      <tfoot id='yeiNq'></tfoot>
                    1. <legend id='yeiNq'><style id='yeiNq'><dir id='yeiNq'><q id='yeiNq'></q></dir></style></legend>

                      <small id='yeiNq'></small><noframes id='yeiNq'>