2012-01-10 10 views
0

私はこの関数を使用しているコードをいくつか持っていますが、呼び出しが未定義関数になるというエラーが発生します。PHP HmacSHA256()関数が認識されません

おそらく古いPHPバージョンを使用しています。ここに私のphpinfo()の出力です: http://problemio.com

は、しかし、私は、私が送信する必要があるいくつかの他のサービスのための必要条件である。この機能の同等の操作を行う方法がわからないですに出力する。

コードは、現在、次のようになります。あなたの助けを

$encoded_string_to_sign = URLEncode(Base64_Encode(HmacSHA256($string_to_sign))); 

おかげで、 アレックス

答えて

2

これは組み込みのPHP関数ではありません。使用しているコードは、おそらくラッパー定義関数か何かを持っていた

$hashed = hash_hmac("sha256", $data, $key); 

:あなたは、おそらくのようhash_hmac()とinvokationを探しています。

は(そして、あなたのphpinfo()出力から、非常にhash拡張子が存在しているようです。)

+0

元の問題を編集しました。私は$ keyパラメータが何であると考えられているのか分かりません。重要なパラメータは何ですか?ありがとう! – GeekedOut

+0

さて、それは塩/鍵です。必要なのは、HMACではなく、通常のハッシュ関数だけです。 http://en.wikipedia.org/wiki/HMACも参照してください – mario

+0

私は自分自身で取得しなければならないものですか?またはそれを作る?私はちょうどその機能でその使用を得ていない。それは何でしょうか? :) – GeekedOut

1

あなたが最初のパラメータとして"sha256"hash_hmac()を使用して試みることができます。

+0

元の問題を編集しました。どのように見えるでしょうか?私は第3のパラメータが何であるか分かりません。 – GeekedOut

関連する問題