HashAlgorithm.TransformBlock-Methode
Errechnet den Hashwert für den angegebenen Bereich des Eingabebytearrays und kopiert den resultierenden Hashwert in den angegebenen Bereich des Ausgabebytearrays.
Namespace: System.Security.Cryptography
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Function TransformBlock ( _
inputBuffer As Byte(), _
inputOffset As Integer, _
inputCount As Integer, _
outputBuffer As Byte(), _
outputOffset As Integer _
) As Integer
'Usage
Dim instance As HashAlgorithm
Dim inputBuffer As Byte()
Dim inputOffset As Integer
Dim inputCount As Integer
Dim outputBuffer As Byte()
Dim outputOffset As Integer
Dim returnValue As Integer
returnValue = instance.TransformBlock(inputBuffer, inputOffset, inputCount, outputBuffer, outputOffset)
public int TransformBlock (
byte[] inputBuffer,
int inputOffset,
int inputCount,
byte[] outputBuffer,
int outputOffset
)
public:
virtual int TransformBlock (
array<unsigned char>^ inputBuffer,
int inputOffset,
int inputCount,
array<unsigned char>^ outputBuffer,
int outputOffset
) sealed
public final int TransformBlock (
byte[] inputBuffer,
int inputOffset,
int inputCount,
byte[] outputBuffer,
int outputOffset
)
public final function TransformBlock (
inputBuffer : byte[],
inputOffset : int,
inputCount : int,
outputBuffer : byte[],
outputOffset : int
) : int
Parameter
- inputBuffer
Die Eingabe, für die der Hashcode berechnet werden soll.
- inputOffset
Der Offset im Eingabebytearray, ab dem Daten verwendet werden sollen.
- inputCount
Die Anzahl der Bytes im Eingabebytearray, die als Daten verwendet werden sollen.
- outputBuffer
Eine Kopie des Teils des Eingabearrays, mit dessen Hilfe der Hashcode berechnet wird.
- outputOffset
Der Offset im Ausgabebytearray, ab dem Daten geschrieben werden sollen.
Rückgabewert
Die Anzahl der geschriebenen Bytes.
Hinweise
Vor dem Aufruf der TransformFinalBlock-Methode müssen Sie die TransformBlock-Methode aufrufen. Sie müssen beide Methoden aufrufen, bevor Sie den letzten Hashwert abrufen.
Um nach dem Aufruf der TransformFinalBlock-Methode den letzten Hashwert abzurufen, rufen Sie das in der Hash-Eigenschaft enthaltene Bytearray ab.
Wenn die TransformBlock-Methode mit unterschiedlichen Ein- und Ausgabearrays aufgerufen wird, löst dies eineIOException aus.
Beispiel
In den folgenden Codebeispielen wird die TransformFinalBlock-Methode mit der TransformBlock-Methode verwendet, um den Hashwert für eine Zeichenfolge zu berechnen.
// Use TransformFinalBlock with TransformBlock to hash a string.
byte[] inArray = new ASCIIEncoding().GetBytes("abcdefghijklmnopqrstuvwxyz");
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
md5.TransformBlock(inArray, 0, 13, inArray, 0);
md5.TransformFinalBlock(inArray, 13, 13);
// Use TransformFinalBlock with TransformBlock to hash a string.
array<Byte>^inArray = (gcnew ASCIIEncoding)->GetBytes( L"abcdefghijklmnopqrstuvwxyz" );
MD5CryptoServiceProvider^ md5 = gcnew MD5CryptoServiceProvider;
md5->TransformBlock( inArray, 0, 13, inArray, 0 );
md5->TransformFinalBlock( inArray, 13, 13 );
// Use TransformFinalBlock with TransformBlock to hash a string.
ubyte inArray[] = (new ASCIIEncoding()).GetBytes(
"abcdefghijklmnopqrstuvwxyz");
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
md5.TransformBlock(inArray, 0, 13, inArray, 0);
md5.TransformFinalBlock(inArray, 13, 13);
// Hash two strings together.
byte[] inArray1 = new ASCIIEncoding().GetBytes("message ");
byte[] inArray2 = new ASCIIEncoding().GetBytes("digest");
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
md5.TransformBlock(inArray1, 0, inArray1.Length, inArray1, 0);
md5.TransformFinalBlock(inArray2, 0, inArray2.Length);
// Hash two strings together.
array<Byte>^inArray1 = (gcnew ASCIIEncoding)->GetBytes( L"message " );
array<Byte>^inArray2 = (gcnew ASCIIEncoding)->GetBytes( L"digest" );
MD5CryptoServiceProvider^ md5 = gcnew MD5CryptoServiceProvider;
md5->TransformBlock( inArray1, 0, inArray1->Length, inArray1, 0 );
md5->TransformFinalBlock( inArray2, 0, inArray2->Length );
// Hash two strings together.
ubyte inArray1[] = (new ASCIIEncoding()).GetBytes("message ");
ubyte inArray2[] = (new ASCIIEncoding()).GetBytes("digest");
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
md5.TransformBlock(inArray1, 0, inArray1.get_Length(), inArray1, 0);
md5.TransformFinalBlock(inArray2, 0, inArray2.get_Length());
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0
Siehe auch
Referenz
HashAlgorithm-Klasse
HashAlgorithm-Member
System.Security.Cryptography-Namespace