Viewing file: IyziAuthV2Generator.php (1.43 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Iyzipay;
class IyziAuthV2Generator { public static function generateAuthContent($uri, $apiKey, $secretKey, $randomString, Request $request = null) { $hashStr = "apiKey:" . $apiKey . "&randomKey:" . $randomString ."&signature:" . self::getHmacSHA256Signature($uri, $secretKey, $randomString, $request);
$hashStr = base64_encode($hashStr);
return $hashStr; }
public static function getHmacSHA256Signature($uri, $secretKey, $randomString, Request $request = null) { $dataToEncrypt = $randomString . self::getPayload($uri, $request);
$hash = hash_hmac('sha256', $dataToEncrypt, $secretKey, true); $token = bin2hex($hash);
return $token; }
public static function getPayload($uri, Request $request = null) { $uriPath = $uri; $startNumber = strpos($uri, '/v2'); $endNumber = strpos($uri, '?');
if ($startNumber) { if (strpos($uri, "subscription") || strpos($uri, "ucs")) { $endNumber = strlen($uri); if (strpos($uri, '?')) { $endNumber = strpos($uri, '?'); } } $endNumber -= $startNumber; $uriPath = substr($uri, $startNumber, $endNumber); }
if (!empty($request) && $request->toJsonString() != '[]') $uriPath = $uriPath.$request->toJsonString();
return $uriPath; } }
|