2013-09-17 4 views
0

Я использовал для создания цифровой подписи в Ruby, например так:Создание цифровой подписи в PHP

def generate_signature 
    data = "Databeingpassed" 
    secret_key = "Somesecretkey" 
    digest = OpenSSL::Digest::Digest.new('sha256') 
    Base64.encode64(OpenSSL::HMAC.digest(digest, secret_key, data)).strip 
end 

Output: 2XBK7UXA9oDsfJj1TBE2maptpB6i1MJ4uadY1AXlQOQ= 

Как добиться того же с Php, я использую следующий код в PHP, но выходы разные

function generate_signature() { 
    $data = "Databeingpassed" 
    $secret_key = "Somesecretkey" 

    $message = hash('sha256', $secret_key, $data); 
    return base64_encode($message); 
} 

Output: hgy/KMG3zTSgjUrzA/3nNvN+vApna6A7JqtZwx+r9Ng= 

Любые идеи?

ответ

0

Я нашел способ, в случае, если кто-то будет нужно:

function generate_signature() { 
    $data = "Databeingpassed" 
    $secret_key = "Somesecretkey" 

    return base64_encode(hash_hmac('sha256', $data, $secret_key, true)); 
} 

Выход:

2XBK7UXA9oDsfJj1TBE2maptpB6i1MJ4uadY1AXlQOQ= 
Смежные вопросы