1

如何生成 HMAC 算法的密钥,因为我必须使用它在其他客户端进行数据验证?

提前致谢。

4

1 回答 1

2

HMAC 密钥必须在服务器和客户端之间预先共享(在交换消息之前两者都必须知道密钥)。

您可以通过任何方式生成密钥,例如通过从 /dev/random 读取一些字节:

$fd = fopen('/dev/random', 'r');
$bytes = fread($fd, '64);

然后您可以使用以下方法计算 HMAC hash_hmac

$hash = hash_hmac('sha1', $data, $key);
于 2011-08-16T10:42:52.693 回答