次の方法で共有


HashAlgorithm.TransformBlock メソッド

入力バイト配列の指定した領域のハッシュ値を計算し、結果ハッシュ値を出力バイト配列の指定した領域にコピーします。

Public Overridable Function TransformBlock( _
   ByVal inputBuffer() As Byte, _   ByVal inputOffset As Integer, _   ByVal inputCount As Integer, _   ByVal outputBuffer() As Byte, _   ByVal outputOffset As Integer _) As Integer Implements ICryptoTransform.TransformBlock
[C#]
public virtual int TransformBlock(byte[] inputBuffer,intinputOffset,intinputCount,byte[] outputBuffer,intoutputOffset);
[C++]
public: virtual int TransformBlock(unsigned charinputBuffer __gc[],intinputOffset,intinputCount,unsigned charoutputBuffer __gc[],intoutputOffset);
[JScript]
public function TransformBlock(
   inputBuffer : Byte[],inputOffset : int,inputCount : int,outputBuffer : Byte[],outputOffset : int) : int;

パラメータ

  • inputBuffer
    ハッシュ コードを計算する対象の入力データ。
  • inputOffset
    入力バイト配列内のデータの使用開始位置を示すオフセット。
  • inputCount
    データとして使用する入力バイト配列内のバイト数。
  • outputBuffer
    配列を書き込む先の出力。
  • outputOffset
    書き込みの開始位置を示す出力バイト配列内のオフセット。

戻り値

書き込むバイト数。

実装

ICryptoTransform.TransformBlock

例外

例外の種類 条件
System.IO.Exception 入力バッファと出力バッファが異なります。

解説

このメソッドは、バイト配列のハッシュを作成するために、 TransformFinalBlock メソッドと共に使用されます。

このメソッドには、パラメータとして入力配列、オフセット、ハッシュするバイト数、出力配列、およびオフセットを指定します。ただし、出力配列に格納されるのはハッシュのコピーではなく、入力配列のコピーです。このメソッドの使用例を次に示します。

 
sha1.TransformBlock(inArray, 0, inArray.Length, inArray, 0);

ハッシュを作成する例を次に示します。

 
byte[] inArray = new ASCIIEncoding().GetBytes("abcdefghijklmnopqrstuvwxyz");
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
md5.TransformBlock(inArray, 0, 13, inArray, 0);
md5.TransformFinalBlock(inArray, 13, 13);
   //The value of md5.Hash = { 0xc3, 0xfc, 0xd3, 0xd7, 0x61, 0x92, 0xe4, 0x00, 0x7d, 0xfb, 0x49, 0x6c, 0xca, 0x67, 0xe1, 0x3b };

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

HashAlgorithm クラス | HashAlgorithm メンバ | System.Security.Cryptography 名前空間 | 暗号サービス