Intzet
@Intzet

Цифровые подписи с формы и в обработчике не равны?

https://help.unitpay.ru/article/31-creating-paymen... Здесь сказано, что цифровая подпись, которая отправляется в обработчик:
function getFormSignature($account, $currency, $desc, $sum, $secretKey) {
    $hashStr = $account.'{up}'.$currency.'{up}'.$desc.'{up}'.$sum.'{up}'.$secretKey;
    return hash('sha256', $hashStr);
}


https://help.unitpay.ru/article/35-confirmation-payment Здесь уже сказано, что цифровая подпись:
function getSignature($method, array $params, $secretKey) {
    ksort($params);
    unset($params['sign']);
    unset($params['signature']);
    array_push($params, $secretKey);
    array_unshift($params, $method);
    return hash('sha256', join('{up}', $params));
}


В других платёжках я бы просто сравнил цифровые подписи. Но здесь, в генерации подписи в обработчике, добавляется $method, которого нет в цифровой подписи из формы на сайте. Они априори не будут одинаковы. Как поступать? Подскажите, пожалуйста..
  • Вопрос задан
  • 163 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы