2011-08-16 19 views
1

HMACアルゴリズムの秘密鍵を生成するには、他のクライアント側でデータ検証に使用する必要がありますか?HMACアルゴリズムの鍵

ありがとうございます。

+3

' SHA512'はハッシングアルゴリズムであり、(秘密)キーはまったく必要としません。あなたはHMAC(ハッシュベースのメッセージ認証コード)のようなものについて話していますか? http://www.php.net/manual/en/function.hash-hmac.php? –

+1

私はHMACについて話しています。 – cooldude

答えて

2

HMACキーは、サーバーとクライアントの間であらかじめ共有されている必要があります(メッセージを交換する前に、キーを知っている必要があります)。

あなたがランダムに/ dev /からいくつかのバイトを読み取ることによって、たとえば、あなたが好きなようにキーを生成することができます。

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

その後、あなたはhash_hmacを使用してHMACを計算することができます。

$hash = hash_hmac('sha1', $data, $key); 
関連する問題