AesCryptoServiceProvider.CreateDecryptor 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
대칭 AES decryptor 개체를 만듭니다.
오버로드
CreateDecryptor() |
현재 키 및 IV(초기화 벡터)를 사용하여 대칭 AES decryptor 개체를 만듭니다. |
CreateDecryptor(Byte[], Byte[]) |
지정된 키와 IV(초기화 벡터)를 사용하여 대칭 AES decryptor 개체를 만듭니다. |
CreateDecryptor()
- Source:
- AesCryptoServiceProvider.cs
- Source:
- AesCryptoServiceProvider.cs
- Source:
- AesCryptoServiceProvider.cs
현재 키 및 IV(초기화 벡터)를 사용하여 대칭 AES decryptor 개체를 만듭니다.
public:
override System::Security::Cryptography::ICryptoTransform ^ CreateDecryptor();
public override System.Security.Cryptography.ICryptoTransform CreateDecryptor ();
[System.Security.SecurityCritical]
public override System.Security.Cryptography.ICryptoTransform CreateDecryptor ();
override this.CreateDecryptor : unit -> System.Security.Cryptography.ICryptoTransform
[<System.Security.SecurityCritical>]
override this.CreateDecryptor : unit -> System.Security.Cryptography.ICryptoTransform
Public Overrides Function CreateDecryptor () As ICryptoTransform
반환
대칭 AES 암호 해독기 개체입니다.
- 특성
예외
현재 키가 잘못되었거나 없는 경우
적용 대상
CreateDecryptor(Byte[], Byte[])
- Source:
- AesCryptoServiceProvider.cs
- Source:
- AesCryptoServiceProvider.cs
- Source:
- AesCryptoServiceProvider.cs
지정된 키와 IV(초기화 벡터)를 사용하여 대칭 AES decryptor 개체를 만듭니다.
public:
override System::Security::Cryptography::ICryptoTransform ^ CreateDecryptor(cli::array <System::Byte> ^ rgbKey, cli::array <System::Byte> ^ rgbIV);
public:
override System::Security::Cryptography::ICryptoTransform ^ CreateDecryptor(cli::array <System::Byte> ^ key, cli::array <System::Byte> ^ iv);
public override System.Security.Cryptography.ICryptoTransform CreateDecryptor (byte[] rgbKey, byte[]? rgbIV);
public override System.Security.Cryptography.ICryptoTransform CreateDecryptor (byte[] rgbKey, byte[] rgbIV);
[System.Security.SecurityCritical]
public override System.Security.Cryptography.ICryptoTransform CreateDecryptor (byte[] key, byte[] iv);
public override System.Security.Cryptography.ICryptoTransform CreateDecryptor (byte[] key, byte[] iv);
override this.CreateDecryptor : byte[] * byte[] -> System.Security.Cryptography.ICryptoTransform
[<System.Security.SecurityCritical>]
override this.CreateDecryptor : byte[] * byte[] -> System.Security.Cryptography.ICryptoTransform
Public Overrides Function CreateDecryptor (rgbKey As Byte(), rgbIV As Byte()) As ICryptoTransform
Public Overrides Function CreateDecryptor (key As Byte(), iv As Byte()) As ICryptoTransform
매개 변수
- rgbKeykey
- Byte[]
대칭 알고리즘에 사용할 비밀 키입니다.
- rgbIViv
- Byte[]
대칭 알고리즘에 사용할 초기화 벡터입니다.
반환
대칭 AES 암호 해독기 개체입니다.
- 특성
예외
key
또는 iv
가 null
인 경우
key
이 잘못되었습니다.
예제
다음 예제에서는 메서드를 사용하여 AesCryptoServiceProvider.CreateDecryptor 암호화된 메시지의 암호를 해독하는 방법을 보여줍니다. 이 코드 예제는에 대해 제공 된 큰 예제의 일부는 AesCryptoServiceProvider 클래스입니다.
static string DecryptStringFromBytes_Aes(byte[] cipherText, byte[] Key, byte[] IV)
{
// Check arguments.
if (cipherText == null || cipherText.Length <= 0)
throw new ArgumentNullException("cipherText");
if (Key == null || Key.Length <= 0)
throw new ArgumentNullException("Key");
if (IV == null || IV.Length <= 0)
throw new ArgumentNullException("IV");
// Declare the string used to hold
// the decrypted text.
string plaintext = null;
// Create an AesCryptoServiceProvider object
// with the specified key and IV.
using (AesCryptoServiceProvider aesAlg = new AesCryptoServiceProvider())
{
aesAlg.Key = Key;
aesAlg.IV = IV;
// Create a decryptor to perform the stream transform.
ICryptoTransform decryptor = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV);
// Create the streams used for decryption.
using (MemoryStream msDecrypt = new MemoryStream(cipherText))
{
using (CryptoStream csDecrypt = new CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read))
{
using (StreamReader srDecrypt = new StreamReader(csDecrypt))
{
// Read the decrypted bytes from the decrypting stream
// and place them in a string.
plaintext = srDecrypt.ReadToEnd();
}
}
}
}
return plaintext;
}
Shared Function DecryptStringFromBytes_Aes(ByVal cipherText() As Byte,ByVal Key() As Byte, ByVal IV() As Byte) As String
' Check arguments.
If cipherText Is Nothing OrElse cipherText.Length <= 0 Then
Throw New ArgumentNullException("cipherText")
End If
If Key Is Nothing OrElse Key.Length <= 0 Then
Throw New ArgumentNullException("Key")
End If
If IV Is Nothing OrElse IV.Length <= 0 Then
Throw New ArgumentNullException("IV")
End If
' Declare the string used to hold
' the decrypted text.
Dim plaintext As String = Nothing
' Create an AesCryptoServiceProvider object
' with the specified key and IV.
Using aesAlg As New AesCryptoServiceProvider()
aesAlg.Key = Key
aesAlg.IV = IV
' Create a decryptor to perform the stream transform.
Dim decryptor As ICryptoTransform = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV)
' Create the streams used for decryption.
Using msDecrypt As New MemoryStream(cipherText)
Using csDecrypt As New CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read)
Using srDecrypt As New StreamReader(csDecrypt)
' Read the decrypted bytes from the decrypting stream
' and place them in a string.
plaintext = srDecrypt.ReadToEnd()
End Using
End Using
End Using
End Using
Return plaintext
End Function 'DecryptStringFromBytes_Aes
End Class
let decryptStringFromBytes_Aes (cipherText : byte[], key : byte[], iv : byte[]) : string =
// Check arguments.
if (isNull cipherText || cipherText.Length <= 0) then nullArg "cipherText"
if (isNull key || key.Length <= 0) then nullArg "key"
if (isNull iv || iv.Length <= 0) then nullArg "iv"
// Create an AesCryptoServiceProvider object
// with the specified key and IV.
use aesAlg = new AesCryptoServiceProvider()
aesAlg.Key <- key
aesAlg.IV <- iv
// Create a decryptor to perform the stream transform.
let decryptor = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV)
// Create the streams used for decryption.
use msDecrypt = new MemoryStream(cipherText)
use csDecrypt = new CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read)
use srDecrypt = new StreamReader(csDecrypt)
// Read the decrypted bytes from the decrypting stream
// and return the resulting string.
srDecrypt.ReadToEnd()
적용 대상
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET