EP_CryptHashBuffer
EP_CryptHashBuffer 函数使用用户定义好的内容进行hash(哈希)计算。
参数
- Hash - 哈希计算形式。
哈希值形式 |
参数 = 值 |
---|
XOR32 |
HASH_XOR32 = 0 |
MD2 |
HASH_MD2 = 1 |
MD5 |
HASH_MD5 = 2 |
RipeMD160 |
HASH_RipeMD160 = 3 |
SH1 |
HASH_SH1 = 4 |
SHA224 |
HASH_SHA224 = 5 |
SHA256 |
HASH_SHA256 = 6 |
SHA384 |
HASH_SHA384 = 7 |
SHA512 |
HASH_SHA512 = 8 |
- Buffer - 计算内存内容哈希值。
- Size - 内存内容的大小。
- Digest - 得出内容的哈希值。
返回值
如果函数执行成功,返回值为对应的特定形式哈希值,否则返回为0。
哈希值形式 |
哈希值大小(字节) |
---|
XOR32 |
4 |
MD2 |
16 |
MD5 |
16 |
RipeMD160 |
20 |
SH1 |
20 |
SHA224 |
28 |
SHA256 |
32 |
SHA384 |
48 |
SHA512 |
64 |
备注
在以下情况函数不会被成功执行
- 输入内容不相配;
- 输入内容不可读;
- 指定内容未分配;
- 指定内容(缓冲区)写保护;
- 未知错误。
定义
Show/Hide C++ function definition
extern "C" __declspec( dllimport ) __stdcall int EP_CryptHashBuffer( int Hash, byte* Buffer, int Size, byte* Digest);
Show/Hide Delphi function definition
function EP_CryptHashBuffer(Hash : Cardinal; Buffer : pointer; Size : Cardinal; Digest : pointer) : Cardinal; stdcall;
Show/Hide C# (.NET) function definition
public class Enigma_IDE
{
[DllImport("enigma_ide.dll", CallingConvention = CallingConvention.StdCall)]
public static extern int EP_CryptHashBuffer(int Hash, IntPtr Buffer, int Size, IntPtr Digest);
}
可以在安装文件夹下 Examples\Hashes 子文件里查看函数实例。