VungleにはPHPのサンプルコードがありません。私のゲームはPHP上で動作し、私はクライアント側のコールバックを使いたくありません。 私たちは以下のようにコールバックを確認する方法のガイドを持っている:彼らはいくつかの命令持っPHPのVungleコールバック
transactionString =秘密鍵:
は、コロンで区切られたトランザクションIDを使用して秘密鍵を連結することによって、生のトランザクション検証文字列を作成します。 + ":" +%txid%
SHA-256アルゴリズムを使用してtransactionStringのバイトを2回ハッシュします。
によってトランザクション検証トークンを生成進エンコードのようなものになりますSHA-256ハッシュの2シーケンシャルラウンド、の出力バイト:あなたは、生成transactionTokenが送ら1等しいことtransactionToken = 870a0d13da1f1670b5ba35f27604018aeb804d5e6ac5c48194b2358e6748e2a8
チェック%digest%のようなコールバッククエリ文字列内にあります。
私はこのコードを試しました。しかし、私のセキュリティコードは一致しません。
$user = $_REQUEST['uid'];
$txid = $_REQUEST['txid'];
$digest = $_REQUEST['digest'];
error_log(print_r($_GET, TRUE), 0);
//verify hash
$test_string = "" .$MY_SECRET_KEY . ":" . $txid;
// $open_udid . $udid . $odin1 . $mac_sha1 . $custom_id;
//$test_result = md5($test_string);
error_log(print_r("test string: " . $test_string, TRUE), 0);
$result = hash('sha256', $test_string);
error_log(print_r("result: " . $result, TRUE), 0);
$test_result = hash('sha256', $result);
error_log(print_r("test result" . $test_result, TRUE), 0);
if($test_result != $digest) {
echo "vc_noreward";
error_log(print_r("failed validation", TRUE), 0);
die;
}