RijndaelManaged.GenerateKey メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > RijndaelManaged.GenerateKey メソッドの意味・解説 

RijndaelManaged.GenerateKey メソッド

アルゴリズム使用するランダムな Key生成します

名前空間: System.Security.Cryptography
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Overrides Sub GenerateKey
Dim instance As RijndaelManaged

instance.GenerateKey
public override void GenerateKey ()
public void GenerateKey ()
解説解説
使用例使用例
Imports System
Imports System.IO
Imports System.Text
Imports System.Security.Cryptography

Namespace RijndaelManaged_Examples
    Class MyMainClass
        Public Shared Sub
 Main()
            Dim original As String
 = "This is a much longer string of data than a public/private
 key algorithm will accept."
            Dim roundtrip As String
            Dim textConverter As New
 ASCIIEncoding()
            Dim myRijndael As New
 RijndaelManaged()
            Dim fromEncrypt() As Byte
            Dim encrypted() As Byte
            Dim toEncrypt() As Byte
            Dim key() As Byte
            Dim IV() As Byte

            'Create a new key and initialization vector.
            myRijndael.GenerateKey()
            myRijndael.GenerateIV()

            'Get the key and IV.
            key = myRijndael.Key
            IV = myRijndael.IV

            'Get an encryptor.
            Dim encryptor As ICryptoTransform
 = myRijndael.CreateEncryptor(key, IV)

            'Encrypt the data.
            Dim msEncrypt As New
 MemoryStream()
            Dim csEncrypt As New
 CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write)

            'Convert the data to a byte array.
            toEncrypt = textConverter.GetBytes(original)

            'Write all data to the crypto stream and flush it.
            csEncrypt.Write(toEncrypt, 0, toEncrypt.Length)
            csEncrypt.FlushFinalBlock()

            'Get encrypted array of bytes.
            encrypted = msEncrypt.ToArray()

            'This is where the message would be transmitted to a recipient
            ' who already knows your secret key. Optionally, you can
            ' also encrypt your secret key using a public key algorithm
            ' and pass it to the mesage recipient along with the RijnDael
            ' encrypted message.            
            'Get a decryptor that uses the same key and IV as the encryptor.
            Dim decryptor As ICryptoTransform
 = myRijndael.CreateDecryptor(key, IV)

            'Now decrypt the previously encrypted message using the
 decryptor
            ' obtained in the above step.
            Dim msDecrypt As New
 MemoryStream(encrypted)
            Dim csDecrypt As New
 CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read)

            fromEncrypt = New Byte(encrypted.Length)
 {}

            'Read the data out of the crypto stream.
            csDecrypt.Read(fromEncrypt, 0, fromEncrypt.Length)

            'Convert the byte array back into a string.
            roundtrip = textConverter.GetString(fromEncrypt)

            'Display the original data and the decrypted data.
            Console.WriteLine("Original:   {0}", original)
            Console.WriteLine("Round Trip: {0}", roundtrip)
        End Sub 'Main
    End Class 'MyMainClass
End Namespace 'RijndaelManaged_Examples
using System;
using System.IO;
using System.Text;
using System.Security.Cryptography;

namespace RijndaelManaged_Examples
{
    class MyMainClass
    {
        public static void
 Main()
        {
            string original = "This is a much longer string
 of data than a public/private key algorithm
 will accept.";
            string roundtrip;
            ASCIIEncoding textConverter = new ASCIIEncoding();
            RijndaelManaged myRijndael = new RijndaelManaged();
            byte[] fromEncrypt;
            byte[] encrypted;
            byte[] toEncrypt;
            byte[] key;
            byte[] IV;

            //Create a new key and initialization vector.
            myRijndael.GenerateKey();
            myRijndael.GenerateIV();

            //Get the key and IV.
            key = myRijndael.Key;
            IV = myRijndael.IV;

            //Get an encryptor.
            ICryptoTransform encryptor = myRijndael.CreateEncryptor(key, IV);
            
            //Encrypt the data.
            MemoryStream msEncrypt = new MemoryStream();
            CryptoStream csEncrypt = new CryptoStream(msEncrypt,
 encryptor, CryptoStreamMode.Write);

            //Convert the data to a byte array.
            toEncrypt = textConverter.GetBytes(original);

            //Write all data to the crypto stream and flush it.
            csEncrypt.Write(toEncrypt, 0, toEncrypt.Length);
            csEncrypt.FlushFinalBlock();

            //Get encrypted array of bytes.
            encrypted = msEncrypt.ToArray();

            //This is where the message would be transmitted to a recipient
            // who already knows your secret key. Optionally, you can
            // also encrypt your secret key using a public key algorithm
            // and pass it to the mesage recipient along with the RijnDael
            // encrypted message.            

            //Get a decryptor that uses the same key and IV as the encryptor.
            ICryptoTransform decryptor = myRijndael.CreateDecryptor(key, IV);

            //Now decrypt the previously encrypted message using the
 decryptor
            // obtained in the above step.
            MemoryStream msDecrypt = new MemoryStream(encrypted);
            CryptoStream csDecrypt = new CryptoStream(msDecrypt,
 decryptor, CryptoStreamMode.Read);

            fromEncrypt = new byte[encrypted.Length];

            //Read the data out of the crypto stream.
            csDecrypt.Read(fromEncrypt, 0, fromEncrypt.Length);

            //Convert the byte array back into a string.
            roundtrip = textConverter.GetString(fromEncrypt);

            //Display the original data and the decrypted data.
            Console.WriteLine("Original:   {0}", original);
            Console.WriteLine("Round Trip: {0}", roundtrip);
        }
    }
}
#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Text;
using namespace System::Security::Cryptography;
int main()
{
   String^ original = "This is a much longer string of data
 than a public/private key algorithm will
 accept.";
   String^ roundtrip;
   ASCIIEncoding^ textConverter = gcnew ASCIIEncoding;
   RijndaelManaged^ myRijndael = gcnew RijndaelManaged;
   array<Byte>^fromEncrypt;
   array<Byte>^encrypted;
   array<Byte>^toEncrypt;
   array<Byte>^key;
   array<Byte>^IV;
   
   //Create a new key and initialization vector.
   myRijndael->GenerateKey();
   myRijndael->GenerateIV();
   
   //Get the key and IV.
   key = myRijndael->Key;
   IV = myRijndael->IV;
   
   //Get an encryptor.
   ICryptoTransform^ encryptor = myRijndael->CreateEncryptor( key, IV );
   
   //Encrypt the data.
   MemoryStream^ msEncrypt = gcnew MemoryStream;
   CryptoStream^ csEncrypt = gcnew CryptoStream( msEncrypt,encryptor,CryptoStreamMode::Write
 );
   
   //Convert the data to a Byte array.
   toEncrypt = textConverter->GetBytes( original );
   
   //Write all data to the crypto stream and flush it.
   csEncrypt->Write( toEncrypt, 0, toEncrypt->Length );
   csEncrypt->FlushFinalBlock();
   
   //Get encrypted array of bytes.
   encrypted = msEncrypt->ToArray();
   
   //This is where the message would be transmitted to a recipient
   // who already knows your secret key. Optionally, you can
   // also encrypt your secret key using a public key algorithm
   // and pass it to the mesage recipient along with the RijnDael
   // encrypted message.            
   //Get a decryptor that uses the same key and IV as the encryptor.
   ICryptoTransform^ decryptor = myRijndael->CreateDecryptor( key, IV );
   
   //Now decrypt the previously encrypted message using the decryptor
   // obtained in the above step.
   MemoryStream^ msDecrypt = gcnew MemoryStream( encrypted );
   CryptoStream^ csDecrypt = gcnew CryptoStream( msDecrypt,decryptor,CryptoStreamMode::Read
 );
   fromEncrypt = gcnew array<Byte>(encrypted->Length);
   
   //Read the data out of the crypto stream.
   csDecrypt->Read( fromEncrypt, 0, fromEncrypt->Length );
   
   //Convert the Byte array back into a String*.
   roundtrip = textConverter->GetString( fromEncrypt );
   
   //Display the original data and the decrypted data.
   Console::WriteLine( "Original:   {0}", original );
   Console::WriteLine( "Round Trip: {0}", roundtrip );
}

package RijndaelManaged_Examples; 

import System.*;
import System.IO.*;
import System.Text.*;
import System.Security.Cryptography.*;

class MyMainClass
{
    public static void main(String[]
 args)
    {      
        String original = "This is a much longer string of
 data than a "
            + "public/private key algorithm
 will accept.";
        String roundTrip;
        ASCIIEncoding textConverter = new ASCIIEncoding();
        RijndaelManaged myRijndael = new RijndaelManaged();
        ubyte fromEncrypt[];
        ubyte encrypted[];
        ubyte toEncrypt[];
        ubyte key[];
        ubyte iv[];
        //Create a new key and initialization vector.
        myRijndael.GenerateKey();
        myRijndael.GenerateIV();
        //Get the key and iv.
        key = myRijndael.get_Key();
        iv = myRijndael.get_IV();
        //Get an encryptor.
        ICryptoTransform encryptor = myRijndael.CreateEncryptor(key, iv);
        //Encrypt the data.
        MemoryStream msEncrypt = new MemoryStream();
        CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor,
 
            CryptoStreamMode.Write);
        //Convert the data to a byte array.
        toEncrypt = textConverter.GetBytes(original);
        //Write all data to the crypto stream and flush it.
        csEncrypt.Write(toEncrypt, 0, toEncrypt.get_Length());
        csEncrypt.FlushFinalBlock();
        //Get encrypted array of bytes.
        encrypted = msEncrypt.ToArray();
        //This is where the message would be transmitted to a recipient
        // who already knows your secret key. Optionally, you can
        // also encrypt your secret key using a public key algorithm
        // and pass it to the mesage recipient along with the RijnDael
        // encrypted message.            
        //Get a decryptor that uses the same key and iv as the encryptor.
        ICryptoTransform decryptor = myRijndael.CreateDecryptor(key, iv);
        //Now decrypt the previously encrypted message using the decryptor
        // obtained in the above step.
        MemoryStream msDecrypt = new MemoryStream(encrypted);
        CryptoStream csDecrypt = new CryptoStream(msDecrypt, decryptor
,
            CryptoStreamMode.Read);
        fromEncrypt = new ubyte[encrypted.get_Length()];
        //Read the data out of the crypto stream.
        csDecrypt.Read(fromEncrypt, 0, fromEncrypt.get_Length());
        //Convert the byte array back into a string.
        roundTrip = textConverter.GetString(fromEncrypt);
        //Display the original data and the decrypted data.
        Console.WriteLine("Original:   {0}", original);
        Console.WriteLine("Round Trip: {0}", roundTrip);
    } //main
} //MyMainClass
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
RijndaelManaged クラス
RijndaelManaged メンバ
System.Security.Cryptography 名前空間
その他の技術情報
暗号サービス


このページでは「.NET Framework クラス ライブラリ リファレンス」からRijndaelManaged.GenerateKey メソッドを検索した結果を表示しています。
Weblioに収録されているすべての辞書からRijndaelManaged.GenerateKey メソッドを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からRijndaelManaged.GenerateKey メソッド を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

RijndaelManaged.GenerateKey メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



RijndaelManaged.GenerateKey メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS