Электронная цифровая подпись (ЭЦП) — реквизит электронного документа, полученный в результате криптографического преобразования информации с использованием закрытого ключа подписи и позволяющий установить отсутствие искажения информации в электронном документе с момента формирования подписи и проверить принадлежность подписи владельцу сертификата ключа подписи.
Электронная подпись предназначена для идентификации лица, подписавшего электронный документ, и является полноценной заменой (аналогом) собственноручной подписи в случаях, предусмотренных законом Республики Казахстан «Об электронном документе и электронной цифровой подписи»
Использование электронной подписи позволяет осуществить:
Контроль целостности передаваемого документа: при любом случайном или преднамеренном изменении документа подпись станет недействительной, поскольку она вычислена на основании исходного состояния документа и соответствует лишь ему.
Защиту от изменений (подделки) документа: гарантия выявления подделки при контроле целостности делает подделывание нецелесообразным в большинстве случаев.
Невозможность отказа от авторства. Так как создать корректную подпись можно, лишь зная закрытый ключ, а он известен только владельцу, он не может отказаться от своей подписи под документом.
Доказательное подтверждение авторства документа: Так как создать корректную подпись можно, лишь зная закрытый ключ, а он известен только владельцу, он может доказать свое авторство подписи под документом. В зависимости от деталей определения документа могут быть подписаны такие поля, как «автор», «внесенные изменения», «метка времени» и т.д.
ARTA Synergy поддерживает:
контейнеры ключей java-криптопровайдера IOLA;
контейнеры ключей с типом хранилища ключей «файловая система» (PKCS12) java-криптопровайдера Kalkan Crypt версия 1.0.
К ЭЦП документа Synergy введены следующие требования:
Подпись хранится отдельно от подписываемых данных (detached signature).
Подпись документа является краткосрочной (short term signature) — верификация подписи имеет смысл только в период действия сертификата подписывающего.
Подпись является независимой (параллельной), т.е. несколько подписей от разных людей на одном документе никак не влияют друг на друга ни при формировании, ни при проверке.
Дата и время создания подписи (берется с сервера Synergy) должны входить в подписываемые данные.
При реализации процесса подписи документа с помощью ЭЦП для удобства пользователя, а также для того, чтобы иметь возможность предотвратить ошибки (например, подписывание чужим ключом), до непосредственного создания подписи пользователю будут отображаться следующие данные о сертификате:
Данные о получателе сертификата:
имя (Common Name)
организация (Organisation).
Данные об учреждении, выдавшем сертификат:
название (Common Name)
организация (Organization)
местонахождение (Location)
страна (Country)
Данные о сертификате:
формат сертификата (Format)
дата его создания (Creation Date)
дата окончания срока действия (Expiration Date)
статус по действительности (действителен или просрочен)
Данные об алгоритме, которым созданы ключи (Algorithm).
Также при подписании на стороне сервера Synergy сертификат, которым будет подписан документ, подвергается следующим проверкам:
Проверка действительности сертификационного пути - подтверждает действительность всех сертификатов, задействованных при подписании сертификата.
Проверка срока действия сертификата.
Проверка статуса сертификата (действителен или отозван) — по методу проверки с помощью CRL, а также с помощью OSCP.
Если сертификат не проходит хотя бы одну из указанных проверок, то подпись документа таким сертификатом невозможна.
Сохранить (например, в папке /etc
) корневые
сертификаты:
а также:
pki.gov.kz.crl (http://crl.pki.kz/crl/Rsa0.crl),
pki.gov.kz_delta.crl (http://crl.pki.kz/crl/Rsa0_delta.crl).
Ввести в терминале команду:
nano /opt/synergy/jboss/standalone/configuration/arta/security/digital-signature.xml
Затем отредактировать конфигурационный файл, включив использование цифровой подписи и указав путь до каталога с доверенными корневыми сертификатами.
Пример конфигурационного файла:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<configuration >
<!-- Включить использование цифровой подписи -->
<enable>
true
</enable>
<!-- Блок, описывающий доверенный сертификационный центр -->
<!-- Таких блоков может быть несколько -->
<ca>
<!-- Описание CA -->
<description>Корневой сертификат НУЦ РК</description>
<!-- Поддерживаемые схемы URI: file и http -->
<!-- Путь до файла с корневым сертификатом -->
<certificate-uri>
file:///etc/pki_rsa.crt
</certificate-uri>
<!-- Алгоритм цифровой подписи, который использует
этот сертификационный центр. Название алгоритма
чувствительно к регистру. -->
<!-- Поддерживаемые ARTA Synergy алгоритмы:
SHA1withRSA
MD5WithRSA
SHA256withRSA
SHA512withRSA
ECGOST3410
-->
<algorithm>
SHA1withRSA
</algorithm>
<!-- Основной список CRL -->
<base-crl>
<!-- Включить использование основного CRL -->
<enable>
true
</enable>
<!-- Путь до основного CRL -->
<uri>
file:///etc/pki.gov.kz.crl
</uri>
<!-- Период обновления основного CRL, в минутах
Значение по умолчанию - 1 неделя -->
<period>
10080
</period>
</base-crl>
<!-- Список Delta CRL -->
<delta-crl>
<!-- Включить использование Delta CRL -->
<enable>
true
</enable>
<!-- Путь до Delta CRL -->
<uri>
file:///etc/pki.gov.kz_delta.crl
</uri>
<!-- Период обновления основного CRL, в минутах -->
<period>
60
</period>
</delta-crl>
</ca>
<ca>
<!-- Описание CA -->
<description>Корневой сертификат НУЦ РК</description>
<!-- Поддерживаемые схемы URI: file и http -->
<!-- Путь до файла с корневым сертификатом -->
<certificate-uri>
file:///etc/pki_gost.crt
</certificate-uri>
<!-- Алгоритм цифровой подписи, который использует
этот сертификационный центр. Название алгоритма
чувствительно к регистру. -->
<!-- Поддерживаемые ARTA Synergy алгоритмы:
SHA1withRSA
MD5WithRSA
SHA256withRSA
SHA512withRSA
ECGOST3410
-->
<algorithm>
ECGOST3410
</algorithm>
<!-- Основной список CRL -->
<base-crl>
<!-- Включить использование основного CRL -->
<enable>
true
</enable>
<!-- Путь до основного CRL -->
<uri>
file:///etc/pki.gov.kz.crl
</uri>
<!-- Период обновления основного CRL, в минутах
Значение по умолчанию - 1 неделя -->
<period>
10080
</period>
</base-crl>
<!-- Список Delta CRL -->
<delta-crl>
<!-- Включить использование Delta CRL -->
<enable>
true
</enable>
<!-- Путь до Delta CRL -->
<uri>
file:///etc/pki.gov.kz_delta.crl
</uri>
<!-- Период обновления основного CRL, в минутах -->
<period>
60
</period>
</delta-crl>
</ca>
</configuration>
После редактирования нужно перезагрузить Jboss командой
/etc/init.d/arta-synergy-jboss restart
.