Rfc2898DeriveBytes.GetBytes(Int32) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
이 개체에 대한 의사(pseudo) 난수 키를 반환합니다.
public:
override cli::array <System::Byte> ^ GetBytes(int cb);
public override byte[] GetBytes (int cb);
override this.GetBytes : int -> byte[]
Public Overrides Function GetBytes (cb As Integer) As Byte()
매개 변수
- cb
- Int32
생성할 의사(pseudo) 난수 키 바이트의 수입니다.
반환
의사(pseudo) 난수 키 바이트로 채워진 바이트 배열입니다.
예외
cb
이 범위에서 벗어난 경우. 이 매개 변수에는 0 또는 양의 정수가 필요합니다.
예제
다음 예제에서는 메서드를 사용하여 GetBytes 인스턴스 Rfc2898DeriveBytes에 대한 키를 가져오는 방법을 보여줍니다. 이 코드 예제는에 대해 제공 된 큰 예제의 일부는 Rfc2898DeriveBytes 클래스입니다.
try
{
Rfc2898DeriveBytes ^ k1 = gcnew Rfc2898DeriveBytes( pwd1,salt1,myIterations );
Rfc2898DeriveBytes ^ k2 = gcnew Rfc2898DeriveBytes( pwd1,salt1 );
// Encrypt the data.
Aes^ encAlg = Aes::Create();
encAlg->Key = k1->GetBytes( 16 );
MemoryStream^ encryptionStream = gcnew MemoryStream;
CryptoStream^ encrypt = gcnew CryptoStream( encryptionStream,encAlg->CreateEncryptor(),CryptoStreamMode::Write );
array<Byte>^utfD1 = (gcnew System::Text::UTF8Encoding( false ))->GetBytes( data1 );
try
{
Rfc2898DeriveBytes k1 = new Rfc2898DeriveBytes(pwd1, salt1,
myIterations);
Rfc2898DeriveBytes k2 = new Rfc2898DeriveBytes(pwd1, salt1);
// Encrypt the data.
Aes encAlg = Aes.Create();
encAlg.Key = k1.GetBytes(16);
MemoryStream encryptionStream = new MemoryStream();
CryptoStream encrypt = new CryptoStream(encryptionStream,
encAlg.CreateEncryptor(), CryptoStreamMode.Write);
byte[] utfD1 = new System.Text.UTF8Encoding(false).GetBytes(
data1);
Try
Dim k1 As New Rfc2898DeriveBytes(pwd1, salt1, myIterations)
Dim k2 As New Rfc2898DeriveBytes(pwd1, salt1)
' Encrypt the data.
Dim encAlg As Aes = Aes.Create()
encAlg.Key = k1.GetBytes(16)
Dim encryptionStream As New MemoryStream()
Dim encrypt As New CryptoStream(encryptionStream, encAlg.CreateEncryptor(), CryptoStreamMode.Write)
Dim utfD1 As Byte() = New System.Text.UTF8Encoding(False).GetBytes(data1)
설명
클래스는 Rfc2898DeriveBytes 를 기반으로 의사 번호 생성기를 사용하여 PBKDF2 기능을 구현합니다 HMACSHA1. 클래스는 Rfc2898DeriveBytes 암호, 솔트 및 반복 횟수를 취한 다음 메서드 호출을 GetBytes 통해 키를 생성합니다. 이 메서드를 반복적으로 호출해도 동일한 키가 생성되지 않습니다. 대신 매개 변수 값이 인 메서드의 GetBytes 두 호출을 추가하는 것은 의 매개 변수 값 20
40
으로 메서드를 한 번 호출 GetBytes 하는 cb
것과 cb
같습니다.
적용 대상
추가 정보
.NET