SymmetricAlgorithm.CreateEncryptor Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří symetrický objekt encryptoru.
Přetížení
| Name | Description |
|---|---|
| CreateEncryptor(Byte[], Byte[]) |
Při přepsání v odvozené třídě vytvoří symetrický encryptor objekt se zadanou Key vlastností a inicializační vektor (IV). |
| CreateEncryptor() |
Vytvoří symetrický objekt encryptoru s aktuální Key vlastností a inicializační vektor (IV). |
CreateEncryptor(Byte[], Byte[])
- Zdroj:
- SymmetricAlgorithm.cs
- Zdroj:
- SymmetricAlgorithm.cs
- Zdroj:
- SymmetricAlgorithm.cs
- Zdroj:
- SymmetricAlgorithm.cs
- Zdroj:
- SymmetricAlgorithm.cs
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
Parametry
- rgbKey
- Byte[]
Tajný klíč, který se má použít pro symetrický algoritmus.
- rgbIV
- Byte[]
Vektor inicializace, který se má použít pro symetrický algoritmus.
Návraty
Symetrický objekt zašifrovače.
Poznámky
CreateDecryptor Pomocí přetížení se stejnými parametry dešifrujte výsledek této metody.
Viz také
Platí pro
CreateEncryptor()
- Zdroj:
- SymmetricAlgorithm.cs
- Zdroj:
- SymmetricAlgorithm.cs
- Zdroj:
- SymmetricAlgorithm.cs
- Zdroj:
- SymmetricAlgorithm.cs
- Zdroj:
- SymmetricAlgorithm.cs
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
Návraty
Symetrický objekt zašifrovače.
Příklady
Následující příklad šifruje řetězec pomocí objektu transformace vráceného CreateEncryptor z metody.
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
Poznámky
Pokud je aktuální Key vlastnost , GenerateKey metoda je volána k vytvoření nové náhodné Key.null Pokud je aktuální IV vlastnost , GenerateIV metoda je volána k vytvoření nové náhodné IV.null
CreateDecryptor Pomocí přetížení se stejným podpisem dešifrujte výsledek této metody.