Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Diakon  
#1 Оставлено : 7 сентября 2020 г. 15:07:18(UTC)
Diakon

Статус: Новичок

Группы: Участники
Зарегистрирован: 07.09.2020(UTC)
Сообщений: 1
Российская Федерация

Добрый день!
Я получаю с фронта на сервер подпись пользователя на документ (подпись вида MIIIsAYJKoZIhvcNAQcCoIIIoTCCCJ0CAQExDjAMBggqhQMHAQECAgUAMAsGCSqGSIb3DQEHAaCC%0D%0ABiEwggJzMIICIqADAgECAhA3QYiC9TmlkkrUTj3gAuo8MAgGBiqFAwICAzB%2FMSMwIQYJKoZIhvcN%0D%0AAQkBFhRzdXBwb3J0QGNyeXB0b3Byby5ydTELMAkGA1UEBhMCUlUxDzANBgNVBAcTBk1vc2NvdzEX%0D%0AMBUGA1UEChMOQ1JZUFRPLVBSTyBMTEMxITAfBgNVBAMTGENSWVBUTy1QUk8gVGVzdCBDZW50ZXIg%0D%0AMjAeFw0xOTA1MjcwNzI0MjZaFw0yNDA1MjYwNzM0MDVaMH8xIzAhBgkqhkiG9w0BCQEWFHN1cHBv%0D%0AcnRAY3J5cHRvcHJvLnJ1MQswCQYDVQQGEwJSVTEPMA0GA1UEBxMGTW9zY293MRcwFQYDVQQKEw5D%0D%0AUllQVE8tUFJPIExMQzEhMB8GA1UEAxMYQ1JZUFRPLVBSTyBUZXN0IENlbnRlciAyMGMwHAYGKoUD%0D%0AAgITMBIGByqFAwICIwEGByqFAwICHgEDQwAEQBSfFgSoq3ZRO59iO5HEvLzJrGAsZ3rDRQXu5qjK%0D%0ALtXre8L0iYEzUrMrx8rgbcoE1iuz1xH%2Bw8PUjbwbG%2FN7w5KjeDB2MAsGA1UdDwQEAwIBhjAPBgNV%0D%0AHRMBAf8EBTADAQH%2FMB0GA1UdDgQWBBROgz4Uae%2FsXXqVK18R%2FjcyFklVKzASBgkrBgEEAYI3FQEE%0D%0ABQIDAQABMCMGCSs...................). Скажите, как можно дешифровать эту подпись что бы получить ФИО подписанта и другие данные в этой подписи?
Пишу на php (фреймворк yii2) бакэнд.
Спасибо!
Offline Андрей *  
#2 Оставлено : 7 сентября 2020 г. 19:09:31(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,630
Мужчина
Российская Федерация

Сказал «Спасибо»: 494 раз
Поблагодарили: 2035 раз в 1579 постах
Здравствуйте.

Собрать PHP CAdES, использовать проверку подписи, получение сертификата подписанта.





Цитата:
$data - подписанный документ
$sgn - подпись
$detached - отсоединенная подпись



Цитата:

$SignedData = new \CPSignedData();
//если подписанный документ $data в base64 - $SignedData->set_ContentEncoding(BASE64_TO_BINARY);

if ($data) {
$SignedData->set_Content( $data );
}

try
... $SignedData->VerifyCades($sgn, 0x01, $detached);


$signObject = $SignedData->get_Signers();
$sObj = $signObject->get_Item(1);

$cert = $sObj->get_Certificate(); // https://docs.microsoft.c...cate?redirectedfrom=MSDN


$issuerName = $cert->get_IssuerName();
$fromDate = $cert->get_ValidFromDate();
$toDate = $cert->get_ValidToDate();
$serialNumber = $cert->get_SerialNumber();
$subjectName = $cert->get_SubjectName();
$Thumbprint = $cert->get_Thumbprint();

....
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.