2015-05-03 2 views

ответ

2

справа от документации openssl_sign()

//data you want to sign 
$data = 'my data'; 

//create new private and public key 
$new_key_pair = openssl_pkey_new(array(
    "private_key_bits" => 2048, 
    "private_key_type" => OPENSSL_KEYTYPE_RSA, 
)); 

openssl_pkey_export($new_key_pair, $private_key_pem); 

//create signature 
openssl_sign($data, $signature, $private_key_pem, OPENSSL_ALGO_SHA256); 

echo base64_encode($signature); 

Конечно, если у вас уже есть секретный ключ, вы можете пропустить генерируя один и просто использовать его в качестве параметра $private_key_pem в openssl_sign() непосредственно.

+0

Я не уверен, что подпись действительно то, что вы ищете. Вы пытаетесь настроить https? – AlliterativeAlice

+0

У меня есть xml-файл и цифровая подпись в моем конце (Клиент). Теперь сервер хочет сначала проверить цифровую подпись и xml, прежде чем она сможет вызывать любые транзакции. Теперь проблема заключается в том, что я не знаю, как я подпишу xml, прежде чем они смогут проверить. – PHP

+0

Итак, мне нужно будет подписать цифровую подпись данных запроса (XML), после чего они подтвердят подпись, так запутанную в моей части, потому что они дали цифровую подпись/сертификат. Я не знаю, в чем польза от этого. – PHP

Смежные вопросы