Уже часа 4 пытаюсь подписать запрос, и все время получаю error 4: incorrect signature.
Я уже просто на грани нервного срыва. Беру даже официальный пример с контакта, заменяю в нем только timestamp, random, api_id и uid и все равно выдает такую же ошибку...
Вот мой код:

Код:
function retrieveBalance($viewerId, $apiId, $apiUrl)
{
$random = rand(1000000, 10000000);
$timestamp = time();
$stringForSig = "api_id=". $apiId
. "method=secure.getBalance"
. "random=" . $random
. "timestamp=" . $timestamp
. "uid=" . $viewerId
. "v=2.0"
. API_SECRET
;
$signature = md5($stringForSig);
$request = $apiUrl . "?api_id=" . $apiId
. "&format=JSON"
. "&method=secure.getBalance"
. "&random=" . $random
. "&sig=" . $signature
. "×tamp=" . $timestamp
. "&uid=" . $viewerId
. "&v=2.0"
;
$request_result = requestUrl($request);
return $request_result;
}
Уже на сто раз проверил порядок расстановки парметров. Все по алфавиту.
Может я что-то упускаю?
п.с. Тестирую с $_GET[] запросами, чтобы видеть результат в браузере без участия флешки.