Задать вопрос
@devlocal

PHP + ЕЦП, как подписать файл?

Может кто нибудь сталкивался или знает как можно с помощью PHP подписать загруженный файл с помощью ЕЦП.
И реально ли это такое реализовать ?
Возможно названия каких то библиотек.

Необходимо загрузить на сервер свой ЕЦП потом загрузить файл, который нужно подписать, ну и собственно выполнить подпись файла. С точки зрения безопасности я понимаю что бред, но заказчик так хочет.
  • Вопрос задан
  • 6316 просмотров
Подписаться 2 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 5
SilenceOfWinter
@SilenceOfWinter Куратор тега PHP
та еще зажигалка...
daemonhk
@daemonhk
ПсиХоПат
Россия, Казахстан? В любом случае, без Удостоверяющего Центра вы это не сделаете. Связывайтесь с разработчиками SDK для предоставления библиотек, инструкций и прочего.
Ответ написан
Комментировать
@PeeX
Если это внутренняя штука "для себя" и не подразумевается никакого юридически значимого документооборота (например алгоритм RSA) то достаточно php'шного openssl, для какого нибудь ГОСТ нужен северный CSP, который работает с php (пробовал с КриптоПро CSP - работает) и openssl

Если вы не являетесь сотрудником конторы, которая будет потом все это эксплуатировать, то вам для разработки таких вещей (подписание/шифрование) нужно лицензировать свою деятельность, потом сертифицировать то что создадите. Ну и таки да, если это будет обслуживать не одного единственного человека, то передавать ЭЦП вообще плохая идея. Подписывать нужно в браузере
Ответ написан
@DmitriiMikhailov
Я разработал и опубликовал библиотеку CryptoProBuilder, которую можно использовать для подписания и других операций - работает через встроенные в криптопро утилиты.
Здесь статья, которая описывает функционал:
https://habr.com/ru/articles/924478/
Здесь пример подписания с визуализацией на Laravel:
https://habr.com/ru/articles/927084/
Все упаковано и загружено на packagist, можно установить через composer.

Можете так же использовать КриптоПро SDK, но для этого придется установить расширение и изучить документацию.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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