Я создал таблицу user в моей БД с различными столбцами для хранения информации о пользователях.Также я добавил два столбца public_key и private_key .Когда пользователь регистрируется, его информация будет добавлена в таблицу.плюс я использую:
// Create the keypair
$res=openssl_pkey_new();
// Get private key
openssl_pkey_export($res, $privatekey);
// Get public key
$publickey=openssl_pkey_get_details($res);
$publickey=$publickey["key"];
, чтобы создать случайную пару ключей и передать ее пользователю, чтобы у каждого пользователя была пара ключей.Я хочу, чтобы мои пользователи имели возможность цифровой подписи, поэтому, когда они загружают файл, они подписывают его.
Я решил сначала подписать образец файла (msg.txt), чтобы посмотреть, смогу ли я, а затем продолжить.Это выглядит прямо:
openssl_pkcs7_sign("msg.txt", "signed.txt", "signing_cert.pem",
array("private_key.pem", "mypassphrase"),
array()
);
Проблема заключается в следующем: что такое signature_cert.pem и private_key.pem?Я вставил сгенерированный открытый ключ в signature_cert.pem, а закрытый - в private_key.pem, но вижу эту ошибку:
Warning: openssl_pkcs7_sign() [function.openssl-pkcs7-sign]: error getting
private key in /home/ofathian/public_html/msc/ebook/mine/assymetric-test.php
on line 40
Любое мнение приветствуется.