BCryptHash 関数 (bcrypt.h)
1 つのハッシュ計算を実行します。 これは、 BCryptCreateHash、 BCryptHashData、 BCryptFinishHash、 BCryptDestroyHash の呼び出しをラップする便利な関数です。
構文
NTSTATUS BCryptHash(
BCRYPT_ALG_HANDLE hAlgorithm,
PUCHAR pbSecret,
ULONG cbSecret,
PUCHAR pbInput,
ULONG cbInput,
PUCHAR pbOutput,
ULONG cbOutput
);
パラメーター
hAlgorithm
BCryptOpenAlgorithmProvider 関数を使用して作成されたアルゴリズム プロバイダーのハンドル。 プロバイダーの作成時に指定されたアルゴリズムは、ハッシュ インターフェイスをサポートする必要があります。
pbSecret
ハッシュまたは MAC に使用するキーを含むバッファーへのポインター。 cbSecret パラメーターには、このバッファーのサイズが含まれています。 このキーは、BCRYPT_ALG_HANDLE_HMAC フラグを使用して BCryptOpenAlgorithmProvider 関数によって開かれたハッシュ アルゴリズムにのみ適用されます。 それ以外の場合は、このパラメーターを NULL に設定します
cbSecret
pbSecret バッファーのサイズ (バイト単位)。 キーが使用されていない場合は、このパラメーターを 0 に設定します。
pbInput
処理するデータを含むバッファーへのポインター。 cbInput パラメーターには、このバッファー内のバイト数が含まれています。 この関数は、このバッファーの内容を変更しません。
cbInput
pbInput バッファー内のバイト数。
pbOutput
ハッシュ値または MAC 値を受け取るバッファーへのポインター。 cbOutput パラメーターには、このバッファーのサイズが含まれています。
cbOutput
pbOutput バッファーのサイズ (バイト単位)。 このサイズは、ハッシュ値または MAC 値のサイズと完全に一致している必要があります。
サイズは、 BCryptGetProperty 関数を呼び出して BCRYPT_HASH_LENGTH プロパティを取得することで取得できます。 これにより、指定したアルゴリズムのハッシュ値または MAC 値のサイズが提供されます。
戻り値
成功または失敗を示す状態コード。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2016 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | bcrypt.h |
Library | Bcrypt.lib |
[DLL] | Bcrypt.dll |