Сервер - компьютер, на котором запущена система ТЕЗИС.
Клиент - браузер с запущенной системой ТЕЗИС.
Процесс подписания
Когда пользователь инициирует процесс подписи, происходит следующее:
- Клиент обращается к хранилищу сертификатов системы пользователя (посредством CSP)
- CSP отдает клиенту список сертификатов (все происходит на стороне клиента)
- Клиент фильтрует сертификаты, показывая пользователю только те, что соответствуют ГОСТ
- Сервер генерирует данные для подписи (делает ХЕШ каждого подписываемого вложения и\или совокупности полей карточки. Алгоритм хеширования: ГОСТ Р 34.11-2012)
- Сервер передает данные клиенту
- Клиент подписывает данные (посредством CSP) (все происходит на стороне клиента, сервер не знает о ключах шифрования\паролях)
- Клиент передает подписанные данные серверу
- Сервер сохраняет подпись в БД (в этих данных также хранится информация об используемых для подписи сертификатах)
Процесс проверки данных
Когда пользователь инициирует процесс проверки данных, происходит следующее:
- Сервер считывает данные из БД о подписи для данного вложения\карточки
- Сервер проверяет подпись (посредством JCP) (никакой информации от клиента для этого не нужно)
Просмотр иерархии сертификатов
Когда пользователь инициирует процесс просмотра иерархии сертификатов, используемых для подписи данных, происходит следующее:
- Сервер считывает данные из БД о подписи для данного вложения\карточки
- Сервер разбирает подпись и показывает информацию о сертификате клиенту (никакой информации от клиента для этого не нужно)
Cкачивание подписанных вложений
Когда пользователь запрашивает скачивание вложения с подписями происходит следующее:
- Сервер считывает данные из БД о подписях для данного вложения
- Сервер генерирует контейнер, содержащий в себе вложения и все подписи (никакой информации от клиента для этого не нужно)
- Сервер отдает клиенту сформированный контейнер
Файл для скачивания
Принцип работы КриптоПро.pdf (213,0 КБ)