Freigeben über


SymmetricAlgorithm.CreateEncryptor Methode

Definition

Erstellt ein symmetrisches Verschlüsselungsobjekt.

Überlädt

Name Beschreibung
CreateEncryptor(Byte[], Byte[])

Wenn eine abgeleitete Klasse überschrieben wird, wird ein symmetrisches Verschlüsselungsobjekt mit der angegebenen Key Eigenschaft und dem Initialisierungsvektor (IV) erstellt.

CreateEncryptor()

Erstellt ein symmetrisches Verschlüsselungsobjekt mit der aktuellen Key Eigenschaft und dem Initialisierungsvektor (IV).

CreateEncryptor(Byte[], Byte[])

Quelle:
SymmetricAlgorithm.cs
Quelle:
SymmetricAlgorithm.cs
Quelle:
SymmetricAlgorithm.cs
Quelle:
SymmetricAlgorithm.cs
Quelle:
SymmetricAlgorithm.cs

Wenn eine abgeleitete Klasse überschrieben wird, wird ein symmetrisches Verschlüsselungsobjekt mit der angegebenen Key Eigenschaft und dem Initialisierungsvektor (IV) erstellt.

public:
 abstract System::Security::Cryptography::ICryptoTransform ^ CreateEncryptor(cli::array <System::Byte> ^ rgbKey, cli::array <System::Byte> ^ rgbIV);
public abstract System.Security.Cryptography.ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[]? rgbIV);
public abstract System.Security.Cryptography.ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV);
abstract member CreateEncryptor : byte[] * byte[] -> System.Security.Cryptography.ICryptoTransform
Public MustOverride Function CreateEncryptor (rgbKey As Byte(), rgbIV As Byte()) As ICryptoTransform

Parameter

rgbKey
Byte[]

Der geheime Schlüssel, der für den symmetrischen Algorithmus verwendet werden soll.

rgbIV
Byte[]

Der initialisierungsvektor, der für den symmetrischen Algorithmus verwendet werden soll.

Gibt zurück

Ein symmetrisches Verschlüsselungsobjekt.

Hinweise

Verwenden Sie die CreateDecryptor Überladung mit denselben Parametern, um das Ergebnis dieser Methode zu entschlüsseln.

Weitere Informationen

Gilt für:

CreateEncryptor()

Quelle:
SymmetricAlgorithm.cs
Quelle:
SymmetricAlgorithm.cs
Quelle:
SymmetricAlgorithm.cs
Quelle:
SymmetricAlgorithm.cs
Quelle:
SymmetricAlgorithm.cs

Erstellt ein symmetrisches Verschlüsselungsobjekt mit der aktuellen Key Eigenschaft und dem Initialisierungsvektor (IV).

public:
 virtual System::Security::Cryptography::ICryptoTransform ^ CreateEncryptor();
public virtual System.Security.Cryptography.ICryptoTransform CreateEncryptor();
abstract member CreateEncryptor : unit -> System.Security.Cryptography.ICryptoTransform
override this.CreateEncryptor : unit -> System.Security.Cryptography.ICryptoTransform
Public Overridable Function CreateEncryptor () As ICryptoTransform

Gibt zurück

Ein symmetrisches Verschlüsselungsobjekt.

Beispiele

Im folgenden Beispiel wird eine Zeichenfolge mithilfe des von der CreateEncryptor Methode zurückgegebenen Transformationsobjekts verschlüsselt.

using System;
using System.Security.Cryptography;
using System.Text;

class EncryptorExample
{
     private static string quote =
         "Things may come to those who wait, but only the " +
         "things left by those who hustle. -- Abraham Lincoln";

     public static void Main()
     {
         AesCryptoServiceProvider aesCSP = new AesCryptoServiceProvider();

         aesCSP.GenerateKey();
         aesCSP.GenerateIV();
         byte[] encQuote = EncryptString(aesCSP, quote);

         Console.WriteLine("Encrypted Quote:\n");
         Console.WriteLine(Convert.ToBase64String(encQuote));

         Console.WriteLine("\nDecrypted Quote:\n");
         Console.WriteLine(DecryptBytes(aesCSP, encQuote));
     }

     public static byte[] EncryptString(SymmetricAlgorithm symAlg, string inString)
     {
         byte[] inBlock = UnicodeEncoding.Unicode.GetBytes(inString);
         ICryptoTransform xfrm = symAlg.CreateEncryptor();
         byte[] outBlock = xfrm.TransformFinalBlock(inBlock, 0, inBlock.Length);

         return outBlock;
     }

     public static string DecryptBytes(SymmetricAlgorithm symAlg, byte[] inBytes)
     {
         ICryptoTransform xfrm = symAlg.CreateDecryptor();
         byte[] outBlock = xfrm.TransformFinalBlock(inBytes, 0, inBytes.Length);

         return UnicodeEncoding.Unicode.GetString(outBlock);
     }
}
Imports System.Security.Cryptography
Imports System.Text

Class EncryptorExample
     Private Shared quote As String = _
         "Things may come to those who wait, but only the " + _
         "things left by those who hustle. -- Abraham Lincoln"

     Public Shared Sub Main()
         Dim aesCSP As New AesCryptoServiceProvider()

         aesCSP.GenerateKey()
         aesCSP.GenerateIV()
         Dim encQuote() As Byte = EncryptString(aesCSP, quote)

         Console.WriteLine("Encrypted Quote:" + Environment.NewLine)
         Console.WriteLine(Convert.ToBase64String(encQuote))

         Console.WriteLine(Environment.NewLine + "Decrypted Quote:" + Environment.NewLine)
         Console.WriteLine(DecryptBytes(aesCSP, encQuote))
     End Sub

     Public Shared Function EncryptString(symAlg As SymmetricAlgorithm, inString As String) As Byte()
         Dim inBlock() As Byte = UnicodeEncoding.Unicode.GetBytes(inString)
         Dim xfrm As ICryptoTransform = symAlg.CreateEncryptor()
         Dim outBlock() As Byte = xfrm.TransformFinalBlock(inBlock, 0, inBlock.Length)

         Return outBlock
     End Function

     Public Shared Function DecryptBytes(symAlg As SymmetricAlgorithm, inBytes() As Byte) As String
         Dim xfrm As ICryptoTransform = symAlg.CreateDecryptor()
         Dim outBlock() As Byte = xfrm.TransformFinalBlock(inBytes, 0, inBytes.Length)

         return UnicodeEncoding.Unicode.GetString(outBlock)
     End Function
End Class

Hinweise

Wenn die aktuelle Key Eigenschaft lautet null, wird die GenerateKey Methode aufgerufen, um ein neues Zufälliges Keyzu erstellen. Wenn die aktuelle IV Eigenschaft lautet null, wird die GenerateIV Methode aufgerufen, um ein neues Zufälliges IVzu erstellen.

Verwenden Sie die CreateDecryptor Überladung mit derselben Signatur, um das Ergebnis dieser Methode zu entschlüsseln.

Weitere Informationen

Gilt für: