Руководство оператора СОБ - ntc

advertisement
УТВЕРЖДЕН
BY.СЮИК.00364-01 34 01-ЛУ
ПОДСИСТЕМА КРИПТОГРАФИЧЕСКОЙ ЗАЩИТЫ ИНФОРМАЦИИ
И ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСИ
КОМПЛЕКС ПРОГРАММНО-АППАРАТНЫЙ
СРЕДСТВ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ
Руководство оператора
Листов 81
Инв. № подл.
Подп. и дата
Взам. инв. №
Инв. № дубл.
Подп. и дата
BY.СЮИК.00364-01 34 01
2010
№ изм.
Подп.
Дата
Литера
2
BY.СЮИК.00364-01 34 01
АННОТАЦИЯ
Настоящий документ "Руководство оператора" предназначен для пользователей,
имеющих навыки работы с приложениями в операционной системе Windows (NT, 2000, XP,
Linux).
Документ содержит сведения, необходимые пользователю для применения комплекса
средств обеспечения безопасности (далее – СОБ), описание характеристик программы ее
назначение, условия применения, входные и выходные параметры, коды возврата и способы
настройки программы на различные режимы работы
СОБ и входящие в его состав компоненты (КП, АПК-НИ, КС, ПС-ПРАБ)
позволяют
выполнять следующие криптографические операции над данными, размещенными в файлах,
полный путь к которым передается во входных параметрах:
– управления доступом пользователей к ПС КЗИ и ЭЦП;
КП:
– выработку
и
проверку
электронной
цифровой
подписи
(ЭЦП)
согласно
СТБ 1176.2-99;
– шифрование данных согласно ГОСТ 28147-89;
– выработку общих ключей по протоколам формирования общих ключей согласно РД
РБ "Банковские технологии. Протоколы формирования общего ключа" для
формирования ключей шифрования данных для алгоритма ГОСТ 28147-89;
– идентификации и аутентификации пользователя ПС КЗИ и ЭЦП;
Все криптографические операции выполняются с использованием сертификатов
открытых ключей.
Комплекс АПК-НИ:
– проведения 2-х факторной аутентификации пользователей в системе;
– безопасного хранения парольной, ключевой, служебной информации пользователей;
– реализации механизмов авторизированного доступа к ресурсам носителя;
– защиты от несанкционированного доступа к защищаемой информации;
– реализации стандартизованных интерфейсов обмена с ПЭВМ;
3
BY.СЮИК.00364-01 34 01
Комплекс КС:
– аутентификации удаленных пользователей с центральным Web-сервером системы на
основе СОК пользователей с обращением к актуальному СОС;
– автоматического
обращения
к
функциям
аутентификации
при
обращении
пользователей к защищенным разделам сайта информационной системы;
– аутентификации пользователей с использованием защищенных протоколов с
применением ГОСТ 28147 и СТБ 1176, эквивалентных по назначению с RFC-2246
"The TLS Protocol Version 1.0" (в реализации защищенных протоколов должна быть
предусмотрена настройка порта обмена);
– обеспечения функционирования с Web-браузером MS Internet Explorer версии не
ниже 6.* в среде операционных систем Microsoft Windows 2000/XP/Vista, а также с
Web-сервером Apache 2.2 в среде операционных систем Windows 2000/XP/Vista;
– организации защищенного канала обмена данными для пользователей системы с
использованием криптографических средств защиты информации;
– обеспечения "прозрачности" работы для прикладных приложений системы;
– организации безопасного доступа к прикладным сетевым ресурсам системы;
– применения компонент, входящих в КП, для выполнения криптографических
преобразований и использования ключевой информации;
Подсистема ПС-ПРАБ:
– защищенного протоколирования действий пользователей, работы компонент СОБ;
– предоставления доступа к протокольной информации только для зарегистрированных
пользователей системы в соответствии с правами доступа;
– контроля состояний защищаемых активов пользователей ПС КЗИ и ЭЦП;
– оповещения администратора безопасности о нарушениях защищаемых активов.
№ изм.
Подп.
Дата
4
BY.СЮИК.00364-01 34 01
СОДЕРЖАНИЕ
1. Назначение и условия применения программы ............................................................... 5
2. Характеристики программы ............................................................................................... 8
3. Установка программы ......................................................................................................... 9
4. Запуск программы ............................................................................................................. 10
5. Работа с программой ......................................................................................................... 10
5.1 Выпуск сертификата открытого ключа ......................................................................... 11
5.2 Отзыв сертификата открытого ключа ........................................................................... 23
5.3 Приостановка действия сертификата открытого ключа.............................................. 29
5.4 Ручная операция запроса и обработки списка отозванных сертификатов ................ 30
5.5 Ручная операция обработки списка отозванных сертификатов из файла ................. 31
5.6 Ручная операция загрузки сертификатов из файлов .................................................... 32
5.7 Другие особенности работы с программой .................................................................. 32
5.8 Завершение работы программы ..................................................................................... 34
5.9 Работа с носителями ключевой информации (АПК-НИ) ............................................ 34
5.10 Организация защищенных каналов связи (КС) .......................................................... 34
6. Настройка СОБ .................................................................................................................. 35
6.1. Способ настройки ........................................................................................................... 35
6.2. Настройки адаптера SSF ................................................................................................ 42
6.3. Настройки адаптера SNC ............................................................................................... 44
7. Сообщения ......................................................................................................................... 48
7.1. Полный перечень сообщений в файле протокола ....................................................... 49
7.2. Пример сообщений из файла протокола ...................................................................... 56
Перечень ссылочных документов ........................................................................................ 57
ПРИЛОЖЕНИЕ 1 Структуры файлов различных типов................................................... 58
№ изм.
Подп.
Дата
5
BY.СЮИК.00364-01 34 01
1. НАЗНАЧЕНИЕ И УСЛОВИЯ ПРИМЕНЕНИЯ ПРОГРАММЫ
1.1. Комплекс средств обеспечения безопасности (СОБ) совместно со встроенными в
него комплексами криптографической поддержки (КП) и управления криптографическими
ключами (УКК) входит в состав подсистемы криптографической защиты информации и
электронной цифровой подписи (ПС КЗИ и ЭЦП). Комплекс СОБ включает в себя аппаратнопрограммный комплекс съемного носителя ключевой информации на смарт-картах или USBключах
(АПК-НИ),
программный/программно-аппаратный
комплекс
криптографической
защиты канальной информации (КС) и подсистему защищенного протоколирования и аудита
безопасности (ПС-ПРАБ).
Программное обеспечение комплекса средств обеспечения безопасности (ПО СОБ)
предназначено для организации работы конечных пользователей подсистемы
1.1.1. ПО СОБ и входящие в его состав компоненты обеспечивают реализацию функций:
1) идентификации и аутентификации пользователя ПС КЗИ и ЭЦП;
2) управления доступом пользователей к ПС КЗИ и ЭЦП.
1.1.2 Комплекс АПК-НИ:
1) проведения 2-х факторной аутентификации пользователей в системе;
2) безопасного хранения парольной, ключевой, служебной информации пользователей;
3) реализации механизмов авторизированного доступа к ресурсам носителя;
4) защиты от несанкционированного доступа к защищаемой информации;
5) реализации стандартизованных интерфейсов обмена с ПЭВМ;
1.1.3 Комплекс КС:
1) аутентификации удаленных пользователей с центральным Web-сервером системы на
основе СОК пользователей с обращением к актуальному СОС;
2) автоматического
обращения
к
функциям
аутентификации
при
обращении
пользователей к защищенным разделам сайта информационной системы;
3) аутентификации пользователей с использованием защищенных протоколов с
применением ГОСТ 28147 и СТБ 1176, эквивалентных по назначению с RFC-2246 "The TLS
Protocol Version 1.0" (в реализации защищенных протоколов должна быть предусмотрена
настройка порта обмена);
4) обеспечения функционирования с Web-браузером MS Internet Explorer версии не ниже
6.* в среде операционных систем Microsoft Windows 2000/XP/Vista, а также с Web-сервером
Apache 2.2 в среде операционных систем Windows 2000/XP/Vista;
5) организации защищенного канала обмена данными для пользователей системы с
использованием криптографических средств защиты информации;
№ изм.
Подп.
Дата
6
BY.СЮИК.00364-01 34 01
6) обеспечения "прозрачности" работы для прикладных приложений системы;
7) организации безопасного доступа к прикладным сетевым ресурсам системы;
8) применения компонент, входящих в КП, для выполнения криптографических
преобразований и использования ключевой информации;
1.1.4 Подсистема ПС-ПРАБ:
1) защищенного протоколирования действий пользователей, работы компонент СОБ;
2) предоставления доступа к протокольной информации только для зарегистрированных
пользователей системы в соответствии с правами доступа;
3) контроля состояний защищаемых активов пользователей ПС КЗИ и ЭЦП;
4) оповещения администратора безопасности о нарушениях защищаемых активов.
1.1.5. Программное обеспечение КП (ПО КП) обеспечивает реализацию функций:
1) шифрования в соответствии с алгоритмом, определенным в ГОСТ 28147-89;
2) выработки и проверки электронной цифровой подписи (ЭЦП) в соответствии с
алгоритмом, определенным в СТБ РБ 1176.2-99;
3) формирования
общего
ключа
шифрования
в
соответствии
с
алгоритмом,
определенным в проекте РД РБ "Банковские технологии. Протоколы формирования общего
ключа";
4) выработки псевдослучайных данных с секретным параметром в соответствии с
алгоритмом, определенным в РД РБ 07040.1202-2003;
5) возможности настройки на необходимый уровень криптостойкости;
6) доступности данных операций из следующих языков программирования и сред
исполнения:
– языка программирования Java версия 2.0 и выше (среда исполнения JRE), под
управлением операционной системы Linux и Windows;
– языка программирования С#, среда исполнения Microsoft .NET Framework Runtime,
ASP.NET;
– языков программирования, позволяющих использовать процедуры, расположенные в
динамических библиотеках (DLL) операционных систем, семейства Microsoft Windows
2003/XP/Vista;
– язык программирования JavaScript в среде исполнения Internet Explorer версий не
ниже 6;
7) использования в качестве носителя ключевой информации съемного носителя
ключевой информации, подключаемого через порт USB с объемом перезаписываемой памяти
доступной для хранения ключевой информации не менее 32Кб, при этом взаимодействие с
№ изм.
Подп.
Дата
7
BY.СЮИК.00364-01 34 01
носителем не должно вносить существенных изменений в скорость обработки данных;
8) обеспечения работоспособности под управлением ОС Windows 2000, 2003, ХР,
Windows Server 2000/2003 SP2 и выше, Linux.
1.1.6. Программное обеспечение УКК (ПО УКК) обеспечивает реализацию функций:
1) генерации личного ключа подписи и соответствующего открытого ключа проверки
подписи и формирование запроса на выпуск сертификатов открытых ключей (СОК);
2) настройки состава сведений, включаемых в запрос на СОК;
3) генерации личного и соответствующего ему открытого ключей для протокола
формирования общего ключа;
4) печати карточки открытого ключа;
5) настройки внешнего вида карточки открытого ключа при печати;
6) записи личных ключей на съемный носитель в защищенном виде с использованием
пароля;
7) ведения персонального справочника открытых ключей УЦ и других абонентов;
8) проверки действительности СОК;
9) ведения защищенного списка СОК УЦ;
10) информирования пользователя об ошибках при некорректной работе;
11) идентификации пользователей в системе на основании данных, включаемых в СОК,
и управление полномочиями в соответствии с заданными атрибутами СОК.
1.2. ПО СОБ может эксплуатироваться на IBM совместимых ПЭВМ, работающих под
управлением
операционной
системы
(ОС)
Microsoft Windows™ NT/2000/XP.
Скорость
выполнения криптографических операций зависит от производительности ПЭВМ.
1.3. Для работы комплекса требуется не менее 32 Мбайт свободной оперативной памяти.
Внимание: Для обеспечения выполнения функций ПО СОБ необходимо загрузить
корневой СОК в соответствии с п. 5.6. Без загруженного корневого СОК работа ПО СОБ
невозможна.
№ изм.
Подп.
Дата
8
BY.СЮИК.00364-01 34 01
2. ХАРАКТЕРИСТИКИ ПРОГРАММЫ
2.1. ПО СОБ разработана в среде Microsoft Visual C++ 6.0, исходные тексты программы
написаны на языке программирования С++ с использованием MFC.
2.2. СОБ объединяет КП, УКК, АПК-НИ, КС, ПС ПРАБ, обеспечивающих выполнение
согласованных функций, приведенных далее.
2.2. Идентификация пользователя производится по его зарегистрированному имени.
2.3. Аутентификация
пользователя
производится
путем
выполнения
процедуры
формирования общего ключа с аутентификацией сторон, выполняемой КП.
2.4. Управление доступом пользователей к функциям ПС КЗИ и ЭЦП производится
путем ведения матрицы доступа и обработки запросов пользователей посредством анализа этой
матрицы.
2.5. Проведение двухфакторной аутентификации пользователей в системе производится
путем обработки введенного пароля пользователя и выполнения процедуры формирования
общего ключа с использованием сертификата открытого ключа пользователя описанного в
п.2.3.
2.6. КП выполнена в виде двух компонент: клиентской и серверной.
Клиентская компонента реализована на языках Pascal(Delphi), C, С#, Java, JavaScript и
встраивается непосредственно в приложение, обеспечивая контролируемый интерфейс доступа
к библиотеке криптографических преобразований CryptoCont, посредством взаимодействия с
серверной частью CryptoService.exe, которая обеспечивает выполнение криптоопераций,
оперативного доступа к ключам и управления ключами, используемыми при выполнении
криптоопераций. Несколько клиентских частей могут взаимодействовать с одной серверной,
которая может находиться как на одной ПЭВМ с ними, так и на разных. Обмен между
клиентскими компонентами и серверной производится с использованием сокетов.
2.7 СОБ обеспечивает выполнение операции проверки подписи по СТБ 1176.2-99 за
время, не превышающее 20мс, при условии, что сертификат открытого ключа находится в
хранилище КП.
2.8. Количество сертификатов, хранимых в локальном хранилище не менее 128 тыс.
2.9. Время доступа к сертификату, находящемуся в хранилище не превышает 10 мс.
№ изм.
Подп.
Дата
9
BY.СЮИК.00364-01 34 01
3. УСТАНОВКА ПРОГРАММЫ
Установка
программы
производится
копированием
исполнимых
модулей
и
корректировкой настроечных файлов (файлов .ini).
Для корректной работы установленной программы необходимы папки, в которых будет
помещаться соответствующая информация. Минимальный набор папок, необходимых для
работы программы представлен в таблице 1.
Таблица 1
Наименование папки
Certifications
Наименование папки,
входящей в исходную
папку
Описание применения
Папка для пользователей. В данную
папку помещаются СОК, которые
впоследствии загружаются во
внутреннее локальное хранилище.
Папка для пользователей. В данную
папку помещаются СОС.
Папка для внутреннего использования.
В данной папке содержится
справочная информация для
формирования заявок на выпуск СОК
(название городов, улиц и т.д.)
Папка для внутреннего использования.
В данной папке содержатся файлы
запросов к УЦ или РЦ. Файлы
запросов впоследствии передаются в
УЦ или РЦ.
Папка для внутреннего использования.
В данной папке содержатся файлы
ответов от УЦ или РЦ, а также СОК.
После анализа ответов
администратором файлы могут быть
удалены.
NewCerts
NewCRLs
ReferenceBooks
–
Requests
–
Responses
–
Примечания:
1. В папке Certifications находится файл внутреннего локального хранилища СОК
CertStorage.csf .
2. В папке Certifications находятся также дампы внутреннего локального хранилища СОК.
3. Папка для хранения личных ключей PrivateKeys может находиться в любом удобном для
пользователя месте на НЖМД или на другом носителе.
Типы файлов, создаваемых при работе КП, представлены в таблице 2.
№ изм.
Подп.
Дата
10
BY.СЮИК.00364-01 34 01
Таблица 2
Расширение файла
Тип файла
.ini
файл настройки
.log
файл журнала аудита
.csf
файл внутреннего локального хранилища СОК
.rbf, .pri
файлы справочников и политик
.xml
файлы заявок на выпуск СОК
.sap, .rap
файлы заявок на приостановку и отзыв СОК
.cer
файлы СОК
.eml
файлы почтовых сообщений
Структуры файлов различных типов, создаваемых при работе КП, представлены в
приложении 1.
4. ЗАПУСК ПРОГРАММЫ
Запуск программы осуществляется путем загрузки файла CryptoService.exe.
После загрузки в правом нижнем углу должна появиться иконка
, изменение цвета
которой будет свидетельствовать о том, что осуществлен ее вызов прикладной программой.
5. РАБОТА С ПРОГРАММОЙ
Работа с программой в основном не требует вмешательства пользователя.
Исключением являются операции, связанные с генерацией ключей, формирования
заявок на выпуск сертификатов, выполнения процедуры его отзыва или приостановки и
некоторые другие.
Аутентификация
пользователя
производится
путем
выполнения
процедуры
формирования общего ключа с аутентификацией сторон, выполняемой КП.
Управление доступом пользователей к функциям ПС КЗИ и ЭЦП производится путем
ведения матрицы доступа и обработки запросов пользователей посредством анализа этой
матрицы, сопоставления субъекта и объекта, его прав и выдачи соответствующей команды.
Проведение двухфакторной аутентификации пользователей в системе производится
путем обработки введенного пароля пользователя и выполнения процедуры формирования
общего ключа с использованием сертификата открытого ключа пользователя описанного в
п.2.3.
Вызов компоненты протоколирования производится отдельными модулями системы ПС
№ изм.
Подп.
Дата
11
BY.СЮИК.00364-01 34 01
ПРАБ с передачей ему регистрируемых данных. Отказ любого модуля, за исключением ПСПРАБ не может привести к нарушению записи данных в журнал и их потерю.
КП выполнен в виде двух компонент: клиентской и серверной. Клиентская компонента
реализована на языках Pascal(Delphi), C, С#, Java, JavaScript и поставляется в виде текстов
программ, встраивается непосредственно в приложение, обеспечивая контролируемый
интерфейс доступа к библиотеке криптографических преобразований CryptoCont, посредством
взаимодействия с серверной частью, которая обеспечивает выполнение криптоопераций,
оперативного доступа к ключам и управления ключами, используемыми при выполнении
криптоопераций. Несколько клиентских частей могут взаимодействовать с одной серверной,
которая может находиться как на одной ПЭВМ с ними, так и на разных.
Выполнение криптоопераций осуществляется в ответ на запросы внешних приложений.
Обмен входными и выходными данными осуществляется через сокеты. В приложении
существует
один
прослушивающий
сокет.
В
ответ
на
внешний
запрос
создаётся
индивидуальный поток со своим сокетом обмена. В этом потоке осуществляется выполнение
запрошенной криптооперации, результаты которой отправляются внешнему приложению,
сделавшему запрос, а поток закрывается.
5.1 Выпуск сертификата открытого ключа
5.1.1 Для формирования заявки на выпуск СОК необходимо подвести курсор к иконке
и нажать на правую кнопку мыши, что приведет к высвечиванию в правом нижнем углу
экрана, форма которого представлена на рис.1. В верхней части экрана представлен
идентификатор пользователя.
Рис.1
№ изм.
Подп.
Дата
12
BY.СЮИК.00364-01 34 01
5.1.2 Процедура формирования и выполнения заявки на выпуск СОК следует выбрать
пункт меню "Выпустить заявку на сертификат". В открывшемся окне рис.2. ввести требуемую
информацию для каждой из закладок. Область ввода разделена на две части обязательную
(верхняя часть окна) и опциональную (нижняя часть). Информацию в нижнюю часть можно не
вводить – она используется по требованию организации – владельца системы или по Вашему
желанию.
Поля "Выберите группу…" и "Администрирование", расположенные в верхней части
окна, заполняются администратором при необходимости отзыва и приостановки СОК
пользователя. Изначально определено, что отозвать или приостановить СОК может только его
владелец. Однако в случае утери ключа пользователь не может подписать заявку на отзыв или
приостановку СОК, и в этом случае заявка формируется администратором, который
уполномочен его обслуживать. Предварительно все пользователи разбиваются на группы, и
каждой
группе
назначается
один
или
несколько
администраторов.
Выбор
поля
"Администрирование" означает, что СОК будет выпущен для пользователя с правами
администратора группы, указанной в поле "Выберите группу…".
5.1.3 При заполнении полей следует учитывать, что ввод возможен только в поле,
окрашенное в белый цвет. Поле со значком
позволяет ввести значение вручную или
выбрать из значений, открывающихся при нажатии на кнопку в правой части поля. Поле, в
правом углу которого две кнопки со встречно направленными стрелками, позволяют изменять
введенное значение на единицу при нажатии на оду из кнопок. Нажав на кнопку
"Сгенерировать пару ключей" на любой из закладок, можно перейти к диалогу генерации
(рис.6).
№ изм.
Подп.
Дата
13
BY.СЮИК.00364-01 34 01
Рис.2
5.1.4 При ошибочном вводе будет выведено сообщение об ошибке такое, как например
на рис3.
Рис.3
5.1.5 Для перехода на другую закладку следует перевести курсор на необходимую и
№ изм.
Подп.
Дата
14
BY.СЮИК.00364-01 34 01
нажать на левую кнопку мыши. Вид закладки "Информация о сертификате" приведена на рис.
4. В этом окне можно выбрать назначение сертификата (для ЭЦП или для ПФОК), дату и время
начала действия, тип носителя личного ключа, способ защиты (самоподписанная заявка) и
уровень криптостойкости ключей.
Рис. 4
5.1.6 На третьей закладке (рис.5) можно выбрать одну или несколько политик,
используемых в сертификате. Для этого необходимо щелкнуть мышкой на одной или
нескольких записи или нажать одну из кнопок – "Выделить все" – что выделит все записи
политик или, "Очистить все" – что отменит выбор всех политик.
№ изм.
Подп.
Дата
15
BY.СЮИК.00364-01 34 01
Рис.5
5.1.7 При начатии кнопки "Сгенерировать пару ключей" будет выполнен процесс
генерации и высветится окно "Выбор личного ключа для подписи заявки" (рис.6).
Рис.6
5.1.8 В поле "Носитель личного ключа" требуется указать месторасположение личного
ключа для подписи заявки (рис.7).
№ изм.
Подп.
Дата
16
BY.СЮИК.00364-01 34 01
Рис. 7
5.1.9 В случае, если выбрана строка "Файловая система на жестком диске", появится
окно "Выбор файла с личным ключом ЭЦП" (рис.8). В окне "Выбор файла с личным ключом
ЭЦП" необходимо выбрать папку, в которой сохранен личный ключ ЭЦП, затем выбрать ключ
и далее нажать кнопку "Открыть".
Рис. 8
№ изм.
Подп.
Дата
17
BY.СЮИК.00364-01 34 01
5.1.10 В появившемся окне "Выбор личного ключа для подписи заявки" необходимо
ввести в графу "Пароль для расшифрования личного ключа" соответствующий пароль. При
вводе пароля к личному ключу на экране вместо символов пароля будут высвечены звездочки
"***…" (рис. 9). Необходимо помнить, что пароль должен состоять не менее чем из восьми
символов. Далее следует нажать клавишу "Enter" на клавиатуре.
Рис. 9
5.1.11 В появившемся окне "Выбор местоположения сохранения личного ключа" в графе
"Выберете
устройство
для
сохранения
личного
ключа"
необходимо
произвести
соответствующий выбор, например, выбрать строку "Файловая система на жестком диске", и
далее нажать клавишу "Enter" на клавиатуре (рис. 10).
№ изм.
Подп.
Дата
18
BY.СЮИК.00364-01 34 01
Рис. 10
5.1.12 В появившемся окне "Выбор имени файла для сохранения личного ключа"
необходимо выбрать папку для сохранения личного ключа и нажать кнопку "Сохранить"
(рис. 11).
Рис. 11
№ изм.
Подп.
Дата
19
BY.СЮИК.00364-01 34 01
5.1.13 В появившемся окне "Выбор местоположения сохранения личного ключа"
необходимо
ввести
в
графу
"Введите
пароль
для
зашифрования
личного
ключа"
соответствующий пароль. При вводе пароля к личному ключу на экране вместо символов
пароля будут высвечены звездочки "***…" (рис. 12). Необходимо помнить, что пароль должен
состоять не менее чем из восьми символов. Далее следует нажать клавишу "Enter" на
клавиатуре.
Рис. 12
5.1.14 В видоизмененном окне "Выбор местоположения сохранения личного ключа" в
появившейся графе "Повторите пароль для зашифрования личного ключа" необходимо
повторить введенный ранее пароль (рис. 13). Далее следует нажать клавишу "Enter" на
клавиатуре.
№ изм.
Подп.
Дата
20
BY.СЮИК.00364-01 34 01
Рис. 13
5.1.15 В появившемся окне сообщения "Формирование заявки на выпуск сертификата"
указывается место, в котором сохранен блоб свежесгенерированного личного ключа (рис. 14).
Далее следует нажать кнопку "ОК".
Рис. 14
№ изм.
Подп.
Дата
21
BY.СЮИК.00364-01 34 01
5.1.16 В появившемся окне сообщения "Формирование заявки на выпуск сертификата"
указывается место, в котором сохранена карточка открытого ключа (рис. 15).
Рис. 15
5.1.17 Если требуется распечатать карточку открытого ключа, то в окне сообщения
"Формирование заявки на выпуск сертификата" следует нажать кнопку "Да", в противном
случае – кнопку "Нет". В появившемся окне указывается место, в котором сохранена заявка
(рис. 16) – файл заявки будет сохранен в папке Requests, которая располагается там же, где
находится исполняемый модуль CryptoService.exe. Далее следует нажать кнопку "ОК".
№ изм.
Подп.
Дата
22
BY.СЮИК.00364-01 34 01
Рис. 16
5.1.18 В появившемся окне сообщения "Формирование заявки на выпуск сертификата"
(рис. 17) если будет нажата кнопка "Да", то сформированная заявка будет отправлена и
появится окно с сообщением об успешной отправке заявки в РЦ (рис. 18), если кнопка "Нет" –
Рис. 17
№ изм.
Подп.
Дата
23
BY.СЮИК.00364-01 34 01
Рис. 18
то сохраненная в папке Requests заявка может быть отправлена в РЦ позднее. На этом операция
"Выпустить заявку на сертификат" заканчивается.
5.1.19 Если личный ключ для подписи заявки располагается не в файловой системе на
жестком диске (рис. 7), а в другом месте, например, на таблетке "TouchMemory", USBнакопителе "Меркурий", или представляет собой USB-ключ "Rainbow", то при выполнении
п. 5.1.8 следует указать его правильное местоположение. В дальнейшем методология
выполнения операции "Выпустить заявку на сертификат" аналогична описанной выше
последовательности действий.
5.2 Отзыв сертификата открытого ключа
5.2.1 При создании заявки на отзыв сертификата открытого ключа следует подвести
курсор к иконке
и нажать на правую кнопку мыши. В правом нижнем углу появится меню
как это показано на рис. 19.
№ изм.
Подп.
Дата
24
BY.СЮИК.00364-01 34 01
Рис.19
5.2.2 После выбора пункта меню "Выпустить заявку на отзыв сертификата", на экран
будет выведено окно "Отзыв сертификата", как это показано на рис.20. В данном окне в поле
верхней строчки "Введите серийный номер отзываемого сертификата" необходимо указать
серийный номер отзываемого сертификата. Поскольку сертификаты размещены в папке
Responses, необходимо открыть данную папку, найти в ней сертификат, который требуется
отозвать, и дважды щелкнуть по нему левой кнопкой мыши. В результате осуществления
данных действий откроется окно "Сертификат" (рис. 21).
Рис.20
№ изм.
Подп.
Дата
25
BY.СЮИК.00364-01 34 01
Рис.21
5.2.3 В появившемся окне "Сертификат" имеется три вкладки: "Общие", "Состав" и
"Путь сертификации". Вкладка "Общие" предоставляет информацию об общих сведениях о
сертификате – имя владельца сертификата, наименование организации, выдавшей сертификат, и
срок действия сертификата (рис. 21). Вкладка "Состав" позволяет получить информацию о
значениях всех полей выбранного сертификата, а вкладка "Путь сертификации" – показывает
цепочку сертификатов от корневого СОК УЦ.
5.2.4 Для того, чтобы идентифицировать серийный номер выбранного сертификата,
необходимо открыть вкладку "Состав" и нажать левой кнопкой мыши на поле "Серийный
номер". В результате данных действий в нижнем окне данной вкладки отобразится серийный
номер выбранного сертификата, как это показано на рис. 22.
№ изм.
Подп.
Дата
26
BY.СЮИК.00364-01 34 01
Рис.22
5.2.5 Необходимо выделить с помощью левой кнопки мыши данный серийный номер и
нажать комбинацию клавиш "Ctrl + C" на клавиатуре, скопировав его таким образом (рис. 23).
Рис.23
№ изм.
Подп.
Дата
27
BY.СЮИК.00364-01 34 01
5.2.6 Далее следует вернуться к окну "Отзыв сертификата" (рис. 20), поместить курсор в
поле верхней строчки "Введите серийный номер отзываемого сертификата" и нажать
комбинацию клавиш "Ctrl + V" на клавиатуре. В результате номер сертификата отобразиться в
данной строчке (рис. 24).
Рис.24
5.2.7 После вода серийного номера сертификата и нажатия клавиши "Enter" на
клавиатуре, станет доступным поле строчки "Выбрать причину отзыва сертификата", в котором
необходимо выбрать соответствующую формулировку причины отзыва (рис. 25).
5.2.8 Для завершения процедуры выбора причины отзыва следует нажать клавишу
"Enter".
Рис.25
№ изм.
Подп.
Дата
28
BY.СЮИК.00364-01 34 01
5.2.9. Затем следует ввести в соответствующие поля значения времени отзыва и дату
отзыва сертификата (по умолчанию используется текущие значения времени и даты) (рис. 26).
Рис. 26
5.2.10 После ввода серийного номера сертификата, причины, времени и даты отзыва
следует нажать кнопку "Выпустить заявку на отзыв сертификата". При необходимости отмены
введенной информации, следует нажать кнопку "Отмена" (рис. 26).
5.2.11 После нажатия кнопки "Выпустить заявку на отзыв сертификата", на экран будет
выведена форма выбора личного ключа для подписи заявки (рис. 27). Дальнейшие действия
аналогичны действиям, описанным в разделе 5.1 настоящего документа.
5.2.12 Подписанная заявка может быть отправлена в РЦ или сохранена на локальном
диске (рис. 28)
Рис. 27
№ изм.
Подп.
Дата
29
BY.СЮИК.00364-01 34 01
Рис. 28
5.3 Приостановка действия сертификата открытого ключа
5.3.1 При создании заявки на отзыв сертификата открытого ключа следует подвести
курсор к иконке
и нажать на правую кнопку мыши. В правом нижнем углу будет
высвечено меню как на рис. 29
Рис. 29
5.3.2 После выбора пункта меню "Выпустить заявку на приостановку сертификата", на
экран будет выведено окно, как это показано на рис. 30
№ изм.
Подп.
Дата
30
BY.СЮИК.00364-01 34 01
Рис. 30
5.3.3 Действия по формированию запроса на приостановку сертификата полностью
соответствуют действиям при его отзыве (п.п. 5.2.2 – 5.2.12 настоящего документа), за
исключением того, что при приостановке не требуется вводить причину данного действия, но
следует ввести время и дату начала и конца действия времени приостановки (рис. 30
5.4 Ручная операция запроса и обработки списка отозванных сертификатов
5.4.1 При ручном запросе и обработке
подвести курсор к иконке
списка отозванных сертификатов следует
и нажать на правую кнопку мыши. В правом нижнем углу будет
высвечено меню как на рис. 31 После выбора пункта меню, в УЦ будет отправлен запрос на
список отозванных сертификатов, который будет обработан автоматически без выдачи какихлибо сообщений.
№ изм.
Подп.
Дата
31
BY.СЮИК.00364-01 34 01
Рис. 31
5.5 Ручная операция обработки списка отозванных сертификатов из файла
5.5.1 При ручной обработке
списка отозванных сертификатов из файла, следует
поместить файл списка отозванных сертификатов в папку Certifications/NewCRLs/, где
Certifications - папка, в которой лежит исполняемый модуль CryptoService.exe, подвести курсор
к иконке
и нажать на правую кнопку мыши. В правом нижнем углу будет высвечено меню
как на рис. 32 Выбрать второй пункт меню. Файл списка отозванных сертификатов будет
обработан автоматически без выдачи каких-либо сообщений.
Рис.32
№ изм.
Подп.
Дата
32
BY.СЮИК.00364-01 34 01
5.6 Ручная операция загрузки сертификатов из файлов
5.6.1 При ручном загрузке сертификатов из файлов, следует поместить файлы
сертификатов в папку Certifications/NewCerts/, где Certifications - папка, в которой лежит
исполняемый модуль CryptoService.exe, подвести курсор к иконке
и нажать на правую
кнопку мыши. В правом нижнем углу будет высвечено меню как на рис. 33 Выбрать третий
пункт меню. Файл сертификатов будет обработан автоматически без выдачи каких-либо
сообщений.
Рис.33
5.7 Другие особенности работы с программой
5.7.1 В процессе работы пользователь может вручную запросить сертификат (или
несколько сертификатов), а также запросить истории сертификатов за определенный
промежуток времени и состояние сертификата на текущий момент времени (рис. 34. Следует
обратить внимание на то, что эти операции автоматически выполняются ПО СОБ при
обработке электронных документов, и предназначены в основном, для этапа настройки системы
управления открытыми ключами.
№ изм.
Подп.
Дата
33
BY.СЮИК.00364-01 34 01
Рис.34
5.7.2 В случае, если при запросе произошла ошибка, будет выведено сообщение об
ошибке такое, как например на рис 35 В этом случае запрос можно отправить по почте в УЦ.
Рис.35
5.7.3 При желании, пользователь может сохранить файл с содержимым базы данных
сертификатов, которая будет использоваться в дальнейшем как рабочая (рис. 36.
Рис. 36
№ изм.
Подп.
Дата
34
BY.СЮИК.00364-01 34 01
5.8 Завершение работы программы
5.8.1 Для прекращения работы программы, подвести курсор к иконке
и нажать на
правую кнопку мыши. В правом нижнем углу будет высвечено меню как на рис. 37 Выбрать
последний пункт меню и завершить работу программы.
Рис. 37
5.9 Работа с носителями ключевой информации (АПК-НИ)
Работа с НКИ описана в СЮИК. 466216.001РЭ.
5.10 Организация защищенных каналов связи (КС)
Организация защищенных каналов связи обеспечивается применением программного
средства DES_crypt.dll, которое обеспечивает установление связи, согласование ключей с
использование
процедуры
формирования
общего
ключа
аутентификацией
шифрование установленного канала на согласованных ключах.
Визуального пользовательского интерфейса программа не имеет.
№ изм.
Подп.
Дата
сторон
и
35
BY.СЮИК.00364-01 34 01
6. НАСТРОЙКА СОБ
6.1. Способ настройки
Настройка СОБ осуществляется путем внесения и удаления записей в текстовый файл
CryptoService.ini,
находящимся
в
директории,
из
которой
загружается
программа
CryptoService.exe.
Внесение изменений в файл может быть произведено любым тестовым редактором.
Все настройки для удобства разбиваются на отдельные блоки – секции, в которых
настраиваемые параметры относятся к одному из свойств программы.
Настройка
СОБ
в
основном
сводится
к
настройке
КП.
Для
выполнения
криптографических операций КП должен иметь доступ к СОК пользователя, запрашивающего
криптооперацию. СОК может быть получен из локального хранилища КП, или из хранилища
сертификатов удостоверяющего центра (УЦ). Требуемый сертификат запрашивается в
следующей последовательности:
– запрос СОК из локального хранилища;
– запрос СОК из хранилища сертификатов УЦ, при этом возможны варианты:
– запрос по протоколу http;
– зарос по электронной почте.
Запись СОК в локальное хранилище осуществляется следующим образом:
1) Скопировать СОК в директорию CRYPTO_SERVICE_DIR\Certifications\NewCerts;
2) Запустить КП и выбрать в пользовательском меню пункт «Загрузить сертификаты из
файлов».
Для выполнения криптоопераций модуль КП должен иметь актуальную базу списка
отозванных сертификатов (СОС), которая обновляется либо путем периодического обращения к
УЦ по электронной почте, либо вручную из файла. Период обращения к УЦ по электронной
почте настраивается.
Обновление СОС из файла осуществляется следующим образом:
1) Скопировать
файл,
содержащий
СОС
в
директорию
CRYPTO_SERVICE_DIR\Certifications\NewCRLs;
2) Запустить КП и выбрать в пользовательском меню пункт «Обработать СОС из файла».
Основными параметрами КП являются следующие параметры:
1) Параметры работы с СОК, указанные в секции [CERTS_INFO]:
а) CRL_QUERY_TIMEOUT_IN_MINUTES = 0 – интервал в минутах, с которым
№ изм.
Подп.
Дата
36
BY.СЮИК.00364-01 34 01
отправляются запросы СОС. Если значение параметра равно 0, то запросы не
отправляются;
б) SELFSIGNED_CERT_IS_VALID = "YES" – если значение этого параметра равно
“YES”, то допускается загрузка самоподписанных СОК.
2) Запрос СОК, истории СОК инициируется выполнением соответствующего пункта в
пользовательском меню КП. Включение/отключение отображения пунктов меню, запускающих
формирование и отправку запроса, выполняется в секции [DEBUG_INFO] файла настроек. Там
же задаются соответствующие поисковые характеристики.
3) Параметры транспортного модуля указываются в секции [TRANSPORT_INFO]:
а) RequestsFolder
=
".\Requests\"
–
путь,
по
которому будут
сохранены
сформированные и отправленные запросы;
б) ResponsesFolder = ".\Responses\" – путь, по которому будут сохранены ответы на
отправленные заявки;
в) CC_URL = "http://192.168.0.15:4080" – http-адрес УЦ. Номер порта, должен
соответствовать номеру порта, на котором работает http-сервер УЦ;
г) CC_MailBoxAddress = "cert_auth@contact.by" – адрес электронной почты УЦ;
д) RC_URL = "http://200.0.0.144:4090" – http-адрес регистрирующего центра. Номер
порта должен совпадать с номером порта, на котором работает http-сервер
регистрационного центра (РЦ);
е) RC_MailBoxAddress = "reg_auth@contact.by" – адрес электронной почты РЦ;
ж) Our_SMTP_ServerAddress = "mail.contact.by" – адрес почтового сервера,
используемого для отправки почтовых сообщений;
и) Our_SMTP_ServerPort = 25 – порт, на котором работает сервер исходящей почты;
к) Our_POP_ServerAddress = "mail.contact.by" – адрес почтового сервера входящей
почты;
л) Our_POP_ServerPort = 110 – порт, на котором работает сервер входящей почты;
м) Our_MailBoxAddress = "crypt_serv@contact.by" – адрес электронной модуля КП;
н) Our_MailBoxLogin = "crypt_serv@contact.by" – имя пользователя электронной
почты;
п) Our_MailBoxPassword = "very_difficult_password" – пароль для доступа к услугам
почтового сервера;
р) Our_MailBox_Inquiry_Delay = 1 – интервал в минутах сбора сообщений
электронной почты.
В таблице 3 представлены используемые в файле настройки .ini параметры и их
№ изм.
Подп.
Дата
37
BY.СЮИК.00364-01 34 01
допустимые значения. Пример файла настройки приведен в приложении 1.
Таблица 3
Допустимые
Описание
значения
секция настроек работы с сертификатами [CERTS_INFO]
CRL_QUERY_TIMEOUT_IN_MINUTES целое
Длина паузы между запросами списка
число в
отозванных сертификатов в
минутах
МИНУТАХ (если параметр равен 0,
то запросы не осуществляются)
SELFSIGNED_CERT_IS_VALID
YES
Флаг допустимости загрузки в память
NO
самоподписанных сертификатов (по
умолчанию – «NO»)
секция политик [POLICIES_INFO]
CERTS_POLICIES_AMOUNT
целое
Количество политик сертификатов
число
CERTS_POLICY_1
1.3.6.1.4.1.2 ОИД – определение подлинности
8974.7.1.1.0 электронных документов
.0.0.0.0
CERTS_POLICY_2
1.3.6.1.4.1.2 ОИД – «Клиент-банк» – все
8974.7.100. документы
199.0.0.0.0.
0
CERTS_POLICY_3
1.3.6.1.4.1.2 «Внутренний документооборот» – все
8974.7.200. документы
299.0.0.0.0.
0
CERTS_POLICY_4
1.3.6.1.4.1.2 «Внутренний документооборот» –
8974.7.201. заверительная подпись (Канцелярия)
201.0.0.0.0.
0
CERTS_POLICY_5
1.3.6.1.4.1.2 «Интернет-банкинг» – все документы
8974.7.300.
399.0.0.0.0.
0
CERTS_POLICY_6
1.3.6.1.4.1.2 «ДСП» – все документы
8974.7.400.
499.0.0.0.0.
0
секция настроек работы с сокетами [SOCKETS_INFO]
PORT_NUMBER
целое
Номер порта для работы с сокетами
число от 0
по умолчанию = 49018
до 65555
Параметр
№ изм.
Подп.
Дата
38
BY.СЮИК.00364-01 34 01
Продолжение таблицы 3
Допустимые
Описание
значения
секция ЭЦП [SIGNING_INFO]
SignKey001
строка
Имя и путь к файлу ключа
длиной до
255
символов
секция шифрования [DECRYPTING_INFO]
CrptKey_77777777
строка
Имя и путь к файлу ключа
длиной до
255
символов
секция аутентификации [AUTENTIFICATION_INFO]
AuthKey_88888888
строка
Имя и путь к файлу ключа
длиной до
255
символов
секция транспортных настроек [TRANSPORT_INFO]
RequestsFolder
строка
Путь к папке, содержащей файлы
длиной до
запросов. По умолчанию ".\Requests\"
255
ResponsesFolder
строка
Путь к папке, содержащей файлы
длиной до
запросов. По умолчанию
255
".\Responses\"
CC_URL
строка
URL УЦ
длиной до
255
CC_SendTimeout
целое
Тайм аут ожидания передачи к УЦ
число
секунд
CC_RecvTimeout
целое
Тайм аут ожидания ответа УЦ
число
секунд
CC_HTTP_ProxyType
целое
Тип прокси HTTP
число
CC_HTTP_ProxyAddress
сетевой
Адрес прокси HTTP
адрес
прокси
CC_HTTP_ProxyPort
порт
Порт прокси HTTP
прокси
CC_HTTP_ProxyLogin
строка
Логин прокси HTTP
длиной до
255
CC_HTTP_ProxyPassword
строка
Пароль доступа к прокси
длиной до
255
Параметр
№ изм.
Подп.
Дата
39
BY.СЮИК.00364-01 34 01
Продолжение таблицы 3
Параметр
CC_MailBoxAddress
RC_URL
RC_SendTimeout
RC_RecvTimeout
RC _HTTP_ProxyType
RC _HTTP_ProxyAddress
RC _HTTP_ProxyPort
RC _HTTP_ProxyLogin
RC _HTTP_ProxyPassword
RC _MailBoxAddress
SSL_version_for_sending
Допустимые
Описание
значения
сетевой
Сетевой адрес почтового ящика УЦ
адрес
символьURL РЦ
ная
последовательность
длиной до
255 симв.
целое
Тайм аут ожидания передачи к РЦ
число
секунд
целое
Тайм аут ожидания ответа УЦ
число
секунд
целое
Тип прокси HTTP РЦ
число
сетевой
Адрес прокси HTTP РЦ
адрес
прокси
порт
Порт прокси HTTP РЦ
прокси
строка
Логин прокси HTTP РЦ
длиной до
255
строка
Пароль доступа к прокси РЦ
длиной до
255
сетевой
Сетевой адрес почтового ящика РЦ
адрес
собственные транспортные атрибуты
0 - не
Параметры защиты передачи
использова
ть SSL; 2 SSL версии
2; 3 - SSL
версии 3; 4
- SSL
версии 2,3;
5 - TLS
версии 1
№ изм.
Подп.
Дата
40
BY.СЮИК.00364-01 34 01
Продолжение таблицы 3
Параметр
SSL_version_for_receiving
Our_SMTP_ServerAddress
Our_SMTP_ServerPort
Our_SMTP_ServerPortSSL
Допустимые
значения
0 - не
использова
ть SSL; 2 SSL версии
2; 3 - SSL
версии 3; 4
- SSL
версии 2,3;
5 - TLS
версии 1
сетевой
адрес
номер
порта
номер
порта
Our_MailBoxAddress
почтовый
адрес
Our_MailBoxLogin
регистрационное
имя
пользователя
почтового
ящика
пароль
пользователя
почтового
ящика
время в
секундах
сетевой
адрес
номер
порта
номер
порта
Our_MailBoxPassword
Our_Timeout
Our_POP_ServerAddress
Our_POP_ServerPort
Our_POP_ServerPortSSL
число от 0
до 5
Our_Mail_ProxyType
№ изм.
Подп.
Описание
Параметры защиты приема
Адрес SMTP сервера к которому
подключен пользователь
Номер порта SMTP сервера к
которому подключен пользователь
Номер порта SMTP сервера
использующего защиту SSL к
которому подключен пользователь
Адрес почтового ящика SMTP
сервера к которому подключен
пользователь
Логин почтового ящика пользователя
Пароль почтового ящика
пользователя
Таймаут
Адрес POP сервера к которому
подключен пользователь
Номер порта POP сервера к которому
подключен пользователь
Номер порта POP сервера
использующего защиту SSL к
которому подключен пользователь
Тип прокси почты
Дата
41
BY.СЮИК.00364-01 34 01
Окончание таблицы 3
Допустимые
Описание
значения
Our_Mail_ProxyAddress
сетевой ip- Адрес прокси почты
адрес
Our_Mail_ProxyPort
номер
Порт прокси почты
порта
Our_Mail_ProxyLogin
регистраци Логин прокси почты
онное имя
проксисервера
почты
Our_Mail_ProxyPassword
пароль
Пароль прокси почты
пользовате
ля проксисервера
почты
секция корневого удостоверяющего центра [ROOT_CENTER_INFO]
CENTER_NAME
строка
Имя УЦ
символов
ORGANIZATION_NAME
строка
Наименование организации –
символов
владельца УЦ
CITY_NAME
строка
Название города
символов
COUNTRY_NAME
строка
Страна
символов
CENTER_NICK
строка
Краткое имя УЦ
символов
длиной до
8 байт
CERTIFICATE_VALIDITY_DURATION целое
Предельное время действия
число
сертификата УЦ (мес)
PRIVATE_KEY_VALIDITY_DURATION целое
Предельное время действия личного
число
ключа УЦ (мес)
SIGN_KEY_CRYPTO_LEVEL
целое
Уровень криптостойкости ключа
число от 1
подписи УЦ
до 10
SERIAL_NUMBER
строка
Серийный номер корневого
длиной 18
сертификата
байт в HEX
SYS_ADMIN_KEY_ID
строка
Идентификатор сертификата
длиной 32
системного администратора
байта в
HEX
SEC_ADMIN_KEY_ID
строка
Идентификатор сертификата
длиной 32
администратора безопасности
байта в
HEX
Параметр
№ изм.
Подп.
Дата
42
BY.СЮИК.00364-01 34 01
Необходимо отметить, что в таблице 3 представлен полный перечень секций настроек,
однако в действительности настройки КП, находящегося в составе УЦ, и настройки КП
конечного пользователя различаются. Так, в настройках КП, расположенного в составе УЦ,
отсутствует секция транспортных настроек [TRANSPORT_INFO], а в настройках КП конечного
пользователя отсутствует секция корневого удостоверяющего центра [ROOT_CENTER_INFO].
6.2. Настройки адаптера SSF
6.2.1. Использование SSF с внешним продуктом безопасности
При использовании внешнего продукта безопасности для ЭЦП и криптографической
поддержки в SAP Systems необходимо проинсталлировать и сконфигурировать SSF на каждом
из клиентских компьютеров и на серверах приложений. На клиентских частях необходимо
определить значения параметров SSF либо переменных окружения, либо в SSF файле
инициализации ssfrfc.ini. На серверах приложений необходимо использовать либо параметры
профайла, либо переменные окружения, однако можно использовать только переменные
окружения для того, чтобы указать SSF параметры.
6.2.2. Инсталляция/конфигурирование SSF: клиентская часть
Инсталляция продукта безопасности должна быть выполнена на каждом клиентском
компьютере, где должны использоваться SSF функции. Необходимо отметить имя и место
расположения библиотеки продукта безопасности. Также необходимо установить ссылки на
документацию (инструкции инсталляции) внешнего продукта безопасности.
Если требуется изменить значение по умолчанию SSF параметров, то необходимо
указать их значения либо в соответствующей переменной окружения, либо в файле ssfrfc.ini.
В таблице 4 представлены SSF параметры.
Таблица 4
Параметр
SSF_LIBRARY_PATH
Default Possible
Библиотекой по умолчанию
является SAPSECULIB
library libssfso.<ext>.
По умолчанию система
ищет этот файл в
директории, где расположен
исполняемый модуль.
№ изм.
Подп.
Дата
Значение
Символьная строка до 255
символов.
Установите ссылку на
продукт безопасности,
чтобы найти имя и
расположение этого файла.
43
BY.СЮИК.00364-01 34 01
Окончание таблицы 4
Параметр
Значение
Default Possible
SSF_MD_ALG
MD5
SSF_SYMENCR_ALG
DES-CBC
SSF_TRACE_LEVEL
0
MD2, MD4, MD5, SHA1,
RIPEMD160
Для внешних продуктов
указать конкретные
значения.
DES-CBC, TRIPLE-DES,
IDEA
Для внешних продуктов
указать конкретные
значения.
0, 1, 2, 3
6.2.3. Инсталляция/конфигурирование SSF: сервер приложений
Инсталляция продукта безопасности должна быть выполнена на каждом сервере
приложений. Необходимо отметить имя и место расположения библиотеки продукта
безопасности.
Также необходимо
установить
ссылки
на документацию
(инструкции
инсталляции) внешнего продукта безопасности.
Укажите SSF параметры на сервере приложений либо в параметрах профайла ssf<x>/...,
либо переменных окружения SSF<x>_...
Возможна инсталляция до трех различных продуктов безопасности, что может быть
необходимо, если различные приложения используют различные продукты безопасности.
Однако, каждый продукт безопасности используется со своим собственным параметром
профайла и, поэтому необходимо определить параметры для все продуктов безопасности,
которые используются..
В таблице показано 5 применение параметров профайла сервера.
Таблица 5
Параметр
Product 1: ssf/ssfapi_lib
Product 2: ssf2/ssfapi_lib
Product 3: ssf3/ssfapi_lib
Значение по умолчанию
Символьная строка до 255
символов.
Установите ссылку на
продукт безопасности, чтобы
найти имя и расположение
этого файла.
SAPSECULIB.
№ изм.
Подп.
Возможное значение
Дата
44
BY.СЮИК.00364-01 34 01
Окончание таблицы 5
Параметр
Значение по умолчанию
Product 1: ssf/ssf_md_alg
Product 2: ssf2/ssg_md_alg
Product 3: ssf3/ssg_md_alg
MD5
Product 1: ssf_symencr_alg
Product 2: ssf2_symencr_alg
Product 3: ssf3_symencr_alg
DES-CBC
Product 1: ssf/name
Product 2: ssf2/name
Product 3: ssf3/name
Product 1: SSF
Product 2: SSF2
Product 3: SSF3
Возможное значение
MD2, MD4, MD5, SHA1,
RIPEMD160
Для внешних продуктов
указать конкретные
значения.
DES-CBC, TRIPLE-DES,
IDEA
Для внешних продуктов
указать конкретные
значения.
Символьная строка до 10
символов.
(регистрозависимые).
Более подробная информация по вопросу порядка настройки адаптера SSF представлена
в документе «Secure Store & Forward /Digital Signatures. User's Guide» [6].
6.3. Настройки адаптера SNC
6.3.1. Активация SNC на сервере приложений SAP
Активация
SNC
на
сервере
приложений
SAP-системы
требует
выполнения
определенных действий.
Необходимо установить внешний продукт обеспечения безопасности на хосты серверов
приложений SAP-системы. Также необходимо знать внешние имена пользователей, серверов
приложений и других компонент SAP-системы, путь и имя файла внешней библиотеки.
Возможно, потребуется выполнение некоторых настроек операционной среды для
устанавливаемого продукта обеспечения безопасности (настройки, в первую очередь, зависят
от используемого продукта безопасности).
За исключением SNC-имен серверов приложений и местонахождения внешней
библиотеки, рекомендуется сделать одинаковые SNC-настройки для всех серверов приложений
SAP-системы.
Не следует создавать группы входа в систему, содержащие сервера приложений с
активированным SNC и сервера приложений без SNC. Хотя такая конфигурация технически
возможна, она будет приводить к ошибкам модуля балансировки нагрузки.
Для проверки SNC-статуса серверов приложений SAP-системы используется отчет
RSSNCSRV.
№ изм.
Подп.
Дата
45
BY.СЮИК.00364-01 34 01
Не всегда возможно настроить SNC для всей SAP-системы за один шаг и, поэтому имеет
смысл вводить SNC в несколько этапов: можно переходить от одной фазы настройки к другой с
помощью изменения соответствующих параметров системы. Например, на начальном этапе
можно разрешить использовать как защищенные с помощью SNC соединения, так и
незащищенные соединения.
6.3.2. Установка параметров профайла сервера приложений
Для ведения параметров профайла сервера приложений SAP-системы необходимо
использовать транзакцию RZ1012.
Для настройки используется профайл инстанции (сервера приложений). Следует
обратить внимание на то, что параметр snc/identity/as относится к серверу приложений, а
параметр snc/gssapi_lib зависит только от платформы.
6.3.3. Установка параметров профайла шлюза
Для защиты с помощью SNC соединений, использующих шлюз SAP-системы,
необходимо установить соответствующие параметры в профайле шлюза. Самостоятельно шлюз
не может использовать функции продукта безопасности – он передает параметры SNC
программам, которые запускает.
Если
шлюз
запускается
непосредственно
на
сервере
приложений,
то
будет
использоваться профайл инстанции сервера приложений. Если запускается выделенный шлюз,
то используется профайл шлюза.
Поскольку версия 3.1 не позволяет использовать SNC для защиты соединений на основе
RFC-
и
CPIC-протоколов,
то
необходимо
установить
значение
параметра
snc/permit_insecure_comm в «1».
6.3.4 Настройки в SAP-системе
Начиная с версии 4.0, процедуры администрирования SNC включены в дерево настроек
SAP-системы (транзакция SPRO). Для доступа к транзакциям настройки SNC необходимо
использовать путь: Basis Components → System Administration → Management of External
Security Systems → Secure Network Communication. Можно также использовать транзакцию
SO70 и структуру SIMG_BCSNC.
Поскольку система конвертирует SNC-имена в каноническую форму с помощью SNCфункций, предпочтительнее будет активировать интерфейс SNC на серверах приложений перед
выполнением SNC-настроек в системе. Однако, при необходимости, можно выполнить
некоторые настройки перед активацией интерфейса, а проверку и конвертацию SNC-имен
№ изм.
Подп.
Дата
46
BY.СЮИК.00364-01 34 01
выполнить в заключение, после активации.
Существует два вида списков контроля доступа, которые необходимо настроить и
поддерживать: пользовательский ACL и системный ACL.
К пользовательскому ACL (пользовательский список контроля доступа) применимы
следующие операции:
– ведение пользователя – операция используется для определения SNC-имени
отдельному пользователю SAP-системы (ведение пользователя выполняется с помощью
транзакции SU01);
– генерация пользовательского ACL – операция используется для автоматической
генерации SNC-имен для пользователей с помощью универсальной схемы именования, которая
содержит фиксированный префикс имени, идентификатор пользователя в SAP-системе и
фиксированный суффикс, определяющий организационную структуру компании;
– ведение пользовательского ACL – как альтернативу ведению отдельного пользователя
с помощью транзакции SU01 (можно использовать транзакцию SM30 и представление USRACL
для ведения SNC-имен пользователей);
– ведение расширенного пользовательского ACL – для присвоения SNC-имен RFC- и
CPIC-пользователям используется транзакция SM30 и представление USRACLEXT;
– присвоение полномочий RFC-пользователю – следующие объекты полномочий
особенно важны, когда между компонентами SAP-системы используется RFC-соединение:
а) S_RFC – проверка полномочий для RFC-доступа;
б) S_RFCACL – проверка полномочий для RFC-пользователя.
Чтобы убедиться в том, что эти объекты корректно присвоены, необходимо использовать
«Информационную систему полномочий» (Authorization Info System) – транзакция SUIM. Оба
объекта полномочий относятся к классу мандантно-независимых объектов полномочий (Crossapplication Authority Objects).
Системный список контроля доступа позволяет определить на основе SNC-имен
пользователей, которым разрешен доступ к системе. Для настройки системного ACL
используется транзакция SNC0 или SM30 и представление VSNCSYSACL.
При взаимодействии серверов приложений с различными компонентами SAP-системы, а
также RFC- и CPIC-программами, возникает необходимость защиты с помощью SNC. Так, для
того, чтобы присвоить SNC-имя устройству печати, используется транзакция ведения
устройства печати SPAD. При настройке RFC с использованием SNC используются следующие
процедуры:
– определение RFC-адресатов – используется транзакция SM59;
№ изм.
Подп.
Дата
47
BY.СЮИК.00364-01 34 01
– определение
SNC-параметров
RFC-адресата
–
используется
транзакция
SM30 и представление RFCDESSECU.
При настройке CPIC с использованием SNC используются следующие процедуры:
– определение CPIC-адресатов – используется транзакция SM54;
– определение SNC-параметров CPIC-адресата – используется транзакция SM30 и
представление TXCOMSECU.
Для ведения информации, которая относится к внешней системе обеспечения
безопасности, используются следующие процедуры:
– экспорт SNC-имен для внешней системы – для выгрузки информации о SNC-именах
пользователей SAP-системы в файл, который может быть использован внешней системой,
используется отчет RSUSR402;
– проверка канонический имен – данная процедура, выполняемая с помощью отчета
RSSNCCHK, собирает и показывает различные SNC-имена из таблиц SAP-системы,
относящихся к SNC. С помощью этого отчета можно проверить непротиворечивость SNC-имен
и убедиться, что все SNC-имена хранятся в канонической форме. Если в ходе проверки
обнаружится, что SNC-имя хранится не в канонической форме, но может быть к ней приведено,
– имя будет автоматически исправлено.
Более подробная информация по вопросу порядка настройки адаптера SNC представлена
в документе «Руководство пользователя SNC» [7].
№ изм.
Подп.
Дата
48
BY.СЮИК.00364-01 34 01
7. СООБЩЕНИЯ
СОБ в процессе выполнения формирует протокол своей работы и записывает его в файл
с именем Logrec.txt. Файл создается и работает в двух режимах.
В протокол входит информация о пользователе (идентификатор ключа, ФИО, город),
дата и время выработки ЭЦП, значение открытого ключа ЭЦП и результаты выполнения
функций (например, «подпись данных верна» или «подпись данных не верна» и т.д.). В файл
также помещается текстовое сообщение, поясняющее код возврата.
В файл Logrec.txt заносится следующая информация:
– дата и время запуска программы;
– принятые параметры (кроме ключей и паролей);
– результаты проверки принятых параметров;
– результаты обращения к базе сертификатов;
– результаты проверки сертификата;
– результаты проверки личных ключей на соответствие открытым ключам;
– идентификатор ключа;
– ФИО владельца ключа;
– город владельца ключа;
– дата и время (местное);
– значение открытого ключа ЭЦП
– открытая часть сгенерированной пары чисел при выработке общего ключа;
– результаты выполнения функций программы;
– результат работы программы;
– результат взаимодействия с файловой подсистемой.
Информационные сообщения и сообщения об ошибках предваряются текущей датой и
временем, а также следующими идентификаторами:
– ZZZCRPTXXX - сообщения из программы КП;
– ZZZSIGNYYY - сообщения при выработке подписи;
– ZZZVERFYYY - сообщения при проверке подписи;
– ZZZENCRYYY - сообщения при шифровании;
– ZZZDECRYYY - сообщения при расшифровании;
– ZZZСERTYYY - сообщения при взаимодействии с базой данных сертификатов,
где XXX - номер ошибки/сообщения, полученный в программе;
YYY
- номер
ошибки/сообщения,
№ изм.
Подп.
полученный
Дата
от
внутренних
функций
49
BY.СЮИК.00364-01 34 01
криптопреобразований;
ZZZ – тип сообщения, который может принимать следующие значения:
“!!!” – ошибка;
“+++“ - предупреждение, не требующее ответа оператора;
“***“ - предупреждение, требующее ответа оператора;
“>>>“ - информационное.
Полный перечень возможных информационных сообщений и сообщений об ошибках в
файле протокола приведен в п. 6.1.
Пример информации из файла протокола приведен в п. 6.2.
7.1. Полный перечень сообщений в файле протокола
Полный перечень возможных информационных сообщений и сообщений об ошибках в
файле протокола:
"Программа КП версии V.P.M.C стартовала";
"Указан тестовый вызов программы. Командная строка CMD";
"Указано неверное число входных параметров";
"Параметры программы не указанные среди параметров командной строки берутся из
файла настроек CalCrypt.ini";
"Указан тип операции - зашифровывание данных";
"Указан тип операции - расшифровывание данных";
"Указан тип операции - выработка ЭЦП";
"Указан тип операции - проверка ЭЦП";
"Указан тип операции - выработка ЭЦП и зашифровывание данных";
"Указан тип операции - проверка ЭЦП и расшифровывание данных";
"Указан неизвестный тип операции";
"Указано неверное значение режима работы программы";
"Программа запущена в интерактивном режиме";
"Программа запущена в потоковом режиме";
"Ошибка при открытии входного файла INDATA ";
"Успешное открытие входного файла INDATA";
"Размер входного файла равен нулю";
"Ошибка при чтении входного файла";
"Успешное чтение входного файла";
"Ошибка при открытии файла личного ключа PRIVATEKEY";
№ изм.
Подп.
Дата
50
BY.СЮИК.00364-01 34 01
"Успешное открытие файла личного ключа PRIVATEKEY";
"Ошибка при чтении файла личного ключа";
"Успешное чтение файла личного ключа";
"Ошибка в структуре файла личного ключа";
"Возникла ошибка при преобразовании из ASCII в формат BASE64";
"Значение открытого ключа из сертификата: PUBLIC_KEY";
"Личный ключ не соответствует сертификату открытого ключа";
"Структура файла для проверки подписи нарушена";
"Полученные долговременные параметры не идентичны параметрам сертификата с
идентификатором: CERT_ID";
"Структура файла для расшифровывания нарушена";
"Указанный личный ключ может использоваться для расшифровывания входных
данных";
"Входные данные не могут быть расшифрованы на указанном личном ключе";
"Проверка целостности файла для расшифрования прошла успешно";
"Целостность файла для расшифрования нарушена";
"Значение открытого числа для выработки общего секретного ключа с владельцем
найденного сертификата PUBLIC_NUMBER";
"Данные уже подписаны с помощью указанного личного ключа";
"Ошибка при создании выходного файла OUTDATA ";
"Успешно создан выходной файл OUTDATA ";
"Выходной файл удален в связи с возникновением ошибки";
"Время создания выходного файла установлено равным времени создания входного
файла";
"Успешное сжатие данных";
"Функция сжатия данных вернула код ошибки RET";
"Данные сжаты перед зашифровыванием на P%";
"Размер сжатых данных превышает размер данных до сжатия";
"Успешная распаковка данных";
"Функция распаковки данных вернула код ошибки RET";
"В файле настроек не указано имя файла личного ключа для выработки ЭЦП";
"В файле настроек не указано имя файла личного ключа для получения общего
секретного ключа";
"В файле настроек не указано или равно нулю число идентификаторов ключевых пар
№ изм.
Подп.
Дата
51
BY.СЮИК.00364-01 34 01
получателей для зашифровывания сообщения";
"В файле настроек отсутствует или некорректно задан идентификатор ключевой пары
получателя IDKEYS_I";
"В файле настроек не указано или равно нулю число фрагментов данных для
зашифровывания во входном файле";
"В файле настроек отсутствует, выходит за границы или некорректно задано смещение
от начала файла фрагмента данных для зашифровывания BLOCKOFFSET_I";
"В файле настроек неотсортированно заданы смещения от начала файла фрагментов
данных для зашифровывания";
"В файле настроек заданы накладывающиеся друг на друга фрагменты данных для
зашифровывания";
"В файле настроек отсутствует или некорректно задан размер фрагмента данных для
зашифровывания BLOCKSIZE_I";
"В файле настроек не указано или равно нулю число идентификаторов субъектов
получателей для зашифровывания сообщения";
В файле настроек отсутствует или некорректно задан идентификатор субъекта
получателя IDUSER_I";
"В файле настроек повторно указан идентификатор ключевой пары получателя
ID_KEYS";
"В файле настроек повторно указан идентификатор субъекта получателя ID_USER";
"В
файле
настроек
недопустимо
одновременное
указание
режима
сжатия
и
зашифровывания отдельных фрагментов входного файла";
"Первым найден файл личного ключа для выработки ЭЦП PRIVATEKEYFILE";
"Первым
найден
файл
личного
ключа
для
выработки
общих
ключей
PRIVATEKEYFILE";
"Не найден ни один файл личного ключа для выработки ЭЦП по маске поиска MASK";
"Не найден ни один файл личного ключа для выработки общих ключей по маске поиска
MASK";
"Ошибка инициализации криптопровайдера “ContactCSP”";
"Неверный пароль доступа к личному ключу либо нарушена целостность файла личного
ключа";
"Отказ от ввода пароля доступа к личному ключу";
"Ошибка при попытке открытия сессии для работы с TM-картой";
"Успешное открытие сессии для работы с TM-картой";
№ изм.
Подп.
Дата
52
BY.СЮИК.00364-01 34 01
"Первой найдена и выбрана TM-карта с идентификатором TM_ID";
"Не найдено ни одной TM-карты в устройстве чтения TM-карт или не найдено само
устройство чтения";
"Доступ к выбранной TM-карте получен";
"Не возможно получить доступ к выбранной TM-карте";
"Файловая система на TM-карте не проинициализирована";
"Первым
на
TM-карте
найден
файл
личного
ключа
для
выработки
ЭЦП
PRIVATEKEYFILE";
"Первым на TM-карте найден файл личного ключа для выработки общих ключей
PRIVATEKEYFILE";
"На TM-карте не найден ни один файл личного ключа для выработки ЭЦП";
"На TM-карте не найден ни один файл личного ключа для выработки общих ключей";
"Функция поиска файла личного ключа на TM-карте вернула код ошибки RET";
"Указано некорректное имя файла личного ключа на TM-карте ERROR_FILENAME";
"На TM-карте не найден файл личного ключа для выработки ЭЦП PRIVATEKEYFILE";
"На TM-карте не найден файл личного ключа для выработки общих ключей
PRIVATEKEYFILE";
"Функция чтения файла личного ключа на TM-карте вернула код ошибки RET";
"Успешное чтение файла личного ключа с TM-карты";
"Ошибка при попытке открытия сессии для работы с iKey-ключом";
"Успешное открытие сессии для работы с iKey-ключом";
"Первым найден и выбран iKey-ключ с серийным номером SERIAL_NUMBER";
"Не найдено ни одного свободного iKey-ключа";
"Доступ к выбранному iKey-ключу получен";
"Не возможно получить доступ к выбранному iKey-ключу";
"Первым
на
iKey-ключе
найден
файл
личного
ключа
для
выработки
ЭЦП
PRIVATEKEYFILE";
"Первым на iKey-ключе найден файл личного ключа для выработки общих ключей
PRIVATEKEYFILE";
"На iKey-ключе не найден ни один файл личного ключа для выработки ЭЦП";
"На iKey-ключе не найден ни один файл личного ключа для выработки общих ключей";
"Функция поиска файла личного ключа на iKey-ключе вернула код ошибки RET";
"Указано некорректное имя файла личного ключа на iKey-ключе ERROR_FILENAME";
"На
iKey-ключе
не
найден
файл
№ изм.
личного
Подп.
Дата
ключа
для
выработки
ЭЦП
53
BY.СЮИК.00364-01 34 01
PRIVATEKEYFILE";
"На iKey-ключе не найден файл личного ключа для выработки общих ключей
PRIVATEKEYFILE";
"Функция чтения файла личного ключа на iKey-ключе вернула код ошибки RET";
"Успешное чтение файла личного ключа с iKey-ключа";
"Ошибка при попытке открытия сессии для работы с устройством чтения Smart-карт";
"Успешное открытие сессии для работы с устройством чтения Smart-карт";
"В устройстве чтения не обнаружена Smart-карта";
"Обнаружен неизвестный тип Smart-карты";
"Обнаружен неверный идентификатор Smart-карты";
"Функция чтения списка файлов на Smart-карте вернула код ошибки RET";
"Первым
на
Smart-карте
найден
файл
личного
ключа
для
выработки
ЭЦП
PRIVATEKEYFILE";
"Первым на Smart-карте найден файл личного ключа для выработки общих ключей
PRIVATEKEYFILE";
"На Smart-карте не найден ни один файл личного ключа для выработки ЭЦП";
На Smart-карте не найден ни один файл личного ключа для выработки общих ключей"
"Указано некорректное имя файла личного ключа на Smart-карте ERROR_FILENAME";
"На
Smart-карте
не
найден
файл
личного
ключа
для
выработки
ЭЦП
PRIVATEKEYFILE";
"На Smart-карте не найден файл личного ключа для выработки общих ключей
PRIVATEKEYFILE";
"Функция чтения файла личного ключа на Smart-карте вернула код ошибки RET";
"Успешное чтение файла личного ключа со Smart-карты";
"Ошибка выделения области памяти размером X байт"
"Ошибка при добавлении идентификатора ключевой пары в файл IDKEYS_FILE,
содержащий список идентификаторов, операции с которыми выполнены успешно";
"Успешное добавление всех идентификаторов ключевых пар и другой служебной
информации в файл IDKEYS_FILE, содержащий список идентификаторов, операции с
которыми выполнены успешно";
"Программа завершила работу с кодом возврата RET";
"Инициализация соединения с БД сертификатов";
"Функция инициализации COM вернула код ошибки RET";
"Соединение с БД сертификатов не установлено";
№ изм.
Подп.
Дата
54
BY.СЮИК.00364-01 34 01
"Соединение с БД сертификатов установлено";
"Поиск сертификата с идентификатором ключевой пары ID_KEYS";
"Сертификат с запрашиваемым идентификатором в БД сертификатов не найден";
"Сертификат с запрашиваемым идентификатором в БД сертификатов найден";
"Срок действия личного ключа истек либо не наступил";
"Срок действия сертификата истек либо не наступил";
"Сертификат присутствует в списке отзыва";
"Действие сертификата приостановлено";
"Ошибка при проверке ЭЦП сертификата";
"В БД сертификатов не найден сертификат из цепочки вышестоящих сертификатов";
"Срок действия сертификата из цепочки вышестоящих сертификатов истек";
"Сертификат присутствует в списке отзыва по причине отзыва сертификата из цепочки
вышестоящих сертификатов";
"Действие сертификата приостановлено по причине приостановления действия одного из
цепочки вышестоящих сертификатов";
"Не удалось проверить ЭЦП сертификата из цепочки вышестоящих сертификатов";
"Сертификаты из цепочки вышестоящих сертификатов проверены";
"Функция поиска сертификата в БД сертификатов вернула код ошибки RET";
"Использование ключа из найденного сертификата для текущего режима работы
программы не возможно";
"При разборе сертификата возникла ошибка RET";
"Сертификат выдан на имя владельца ключа NAME";
"Сертификат содержит город владельца ключа CITY";
"Поиск сертификата шифрования с идентификатором субъекта ID_USER";
"Данные успешно подписаны";
"Данные успешно доподписаны";
"Функция PublSignBY вернула код ошибки RET";
"Функция CreateSignContext вернула код ошибки RET";
"Функция HashSignOrVerify для входных данных для подписи вернула код ошибки
RET";
"Функция HashSignOrVerify для данных трейлера безопасности для подписи вернула код
ошибки RET";
"Функция GetSignAndDestroyContext вернула код ошибки RET";
"Значение подписи данных некорректно";
№ изм.
Подп.
Дата
55
BY.СЮИК.00364-01 34 01
"Подпись данных верна. Время выработки подписи TIME DATE";
"Подпись данных неверна";
"Число обнаруженных подписей данных - N. Верных подписей - W, неверных - X,
отказано в проверке - Y, не найдено сертификатов - Z";
"Функция CreateVerifySignContext вернула код ошибки RET";
"Функция HashSignOrVerify для входных данных для проверки подписи вернула код
ошибки RET";
"Функция HashSignOrVerify для данных трейлера безопасности для проверки подписи
вернула код ошибки RET";
"Функция VerifySignAndDestroyContext вернула код ошибки RET";
"Получена пара чисел (секретное/открытое) для выработки общего секретного ключа с
владельцем найденного сертификата";
"Получен общий секретный ключ с владельцем найденного сертификата";
"Получен ключ шифрования из общего секретного ключа";
"Получен блок подстановок на основе общего секретного ключа";
"Получен ключ шифрования данных из генератора ПСП";
"Получен блок подстановок на основе псевдослучайного ключа шифрования данных";
"Данные зашифрованы на псевдослучайном ключе шифрования";
"Псевдослучайный
ключ
шифрования
зашифрован
для
владельца
найденного
сертификата";
"Данные зашифрованы на ключе шифрования, полученном из общего секретного ключа
с владельцем найденного сертификата";
"Число идентификаторов ключевых пар для выполнения шифрования данных равно N";
"Функция GenPairKey вернула код ошибки RET";
"Функция GeneratePseudoRandomSequence вернула код ошибки RET";
"Функция CreateHash1176Context вернула код ошибки RET";
"Функция Hash1176 вернула код ошибки RET";
"Функция DestroyHash1176Context вернула код ошибки RET";
"Функция CreateGOST28147Context вернула код ошибки RET";
"Функция GOST28147 вернула код ошибки RET";
"Функция DestroyGOST28147Context вернула код ошибки RET";
"Функция CalculateRLKey вернула код ошибки RET";
"Функция GenerNoAuthen вернула код ошибки RET";
"Адресат зашифрованного сообщения получил общий секретный ключ";
№ изм.
Подп.
Дата
56
BY.СЮИК.00364-01 34 01
"Расшифрован псевдослучайный ключ шифрования данных";
"Данные расшифрованы на псевдослучайном ключе шифрования";
"Данные расшифрованы на ключе шифрования, полученном из общего секретного
ключа".
Примечания:
1.
Описание
кодов
ошибок
RET,
возвращаемых
из
функций
библиотеки
криптографических преобразований приведено в документе СЮИК.00318-01 33 01 “Библиотека
криптографических преобразований СryptoСont”.
2. Псевдослучайный ключ шифрования данных – это ключ, получаемый из генератора
ПСП.
7.2. Пример сообщений из файла протокола
16:56:57 20/12/2004 >>>CRPT001 - Программа CalCrypt версии 1.2.1.18 стартовала
16:56:57 20/12/2004 >>>CRPT004 - Параметры программы неуказанные среди
параметров командной строки берутся из файла настроек CalCrypt.ini
16:56:57 20/12/2004 >>>CRPT007 - Указан тип операции - выработка ЭЦП
16:56:57 20/12/2004 >>>CRPT014 - Программа запущена в потоковом режиме
16:56:57 20/12/2004 >>>CRPT016 - Успешное открытие входного файла Data.txt
16:56:57 20/12/2004 >>>CRPT019 - Успешное чтение входного файла
16:56:57 20/12/2004 >>>CERT001 - Инициализация соединения с БД сертификатов
16:56:58 20/12/2004 >>>CERT004 - Соединение с БД сертификатов установлено
16:56:58 20/12/2004 >>>CRPT021 - Успешное открытие файла личного ключа Sign.sck
16:56:58 20/12/2004 >>>CRPT023 - Успешное чтение файла личного ключа
16:56:58 20/12/2004 >>>CERT005 - Поиск сертификата с идентификатором ключевой
пары : 9702C595FAF035E27DDBBBBBE3267672F48C4151
16:56:58 20/12/2004 >>>CERT007 - Сертификат с запрашиваемым идентификатором в БД
сертификатов найден
16:56:58 20/12/2004 >>>CERT018 - Сертификаты из цепочки вышестоящих сертификатов
проверены
16:56:58 20/12/2004 >>>CERT022 - Сертификат выдан на имя владельца ключа : Иванов
Иван Иванович
16:56:58 20/12/2004 >>>CERT023 - Сертификат содержит город владельца ключа :
Минск
16:56:58 20/12/2004 >>>CRPT026 - Значение открытого ключа из сертификата :
№ изм.
Подп.
Дата
57
BY.СЮИК.00364-01 34 01
788AD21C2DFD3E4A60D25163548CD1AE1BFDB4A9AEDB1D19D325C7217AD25FA307B3600
0BAD32CCA7269F0F7E3C13E6B7A5FC2229FB02FD7C53E0A409A4493E4D8573B26E790D9336
C5E897B93A95D1B
16:56:59 20/12/2004 >>>CRPT051 - Успешно создан выходной файл SignData.txt
16:56:59 20/12/2004 >>>SIGN001 - Данные успешно подписаны
16:56:59 20/12/2004 >>>CRPT991 - Успешное добавление всех идентификаторов
ключевых пар и другой служебной информации в файл Keys_ID.lst, содержащий список
идентификаторов, операции с которыми выполнены успешно
16:56:59 20/12/2004 >>>CRPT999 - Программа завершила работу с кодом возврата 0
ПЕРЕЧЕНЬ ССЫЛОЧНЫХ ДОКУМЕНТОВ
1. РД РБ 07040.12.02-2003 "Автоматизированная система межбанковских расчетов.
Процедура выработки псевдослучайных данных с использованием секретного параметра".
2. СТБ 1176.1-99 "Информационная технология. Защита информации. Функция
хэширования".
3. СТБ 1176.2-99 "Информационная технология. Защита информации. Процедуры
выработки и проверки электронной цифровой подписи".
4. ГОСТ 28147-89 "Системы обработки информации. Защита криптографическая.
Алгоритм криптографического преобразования".
5. РД РБ "Банковские технологии. Протоколы формирования общего ключа".
6. "Secure Store & Forward /Digital Signatures. User's Guide".
7. "Руководство
пользователя
SNC"
–
Интернет
ресурс
(порядок
доступа
–
http://www.sapbasis.ru/bc/sec/snc/sncuserguide.html).
8. РД РБ 07040.1206–2004 "Формат сертификатов открытых ключей и списков
отозванных сертификатов".
№ изм.
Подп.
Дата
58
BY.СЮИК.00364-01 34 01
ПРИЛОЖЕНИЕ 1
(справочное)
Структуры файлов различных типов
А. Структура файла заявки на выпуск СОК
В таблице А.1 представлено описание тэгов файла заявки на выпуск СОК.
Таблица А.1
Тэги
Описание
<?xml version="1.0" encoding="windows-1251"
?>
номер версии, кодировка
<UsersAttributes Nick="Иванов">
идентификатор (ник)
<Surname>
фамилия
<Name>
имя
<SecondName>
отчество
<Position>
должность
<Organization>
наименование организации
<City>
название города
<Department>
подразделение организации
<Street>
название улицы
<House>
номер дома
<Building>
номер корпуса
<Apartment>
номер квартиры/офиса
<PostIndex>
почтовый индекс
<Email>
адрес электронной почты
</UsersAttributes>
идентификатор владельца сертификата
Пример файла заявки на выпуск СОК:
<?xml version="1.0" encoding="windows-1251" ?>
<UsersAttributes Nick="Иванов">
<Surname>Иванов</Surname>
<Name>Василий</Name>
<SecondName>Васильевич</SecondName>
№ изм.
Подп.
Дата
59
BY.СЮИК.00364-01 34 01
<Position>инженер</Position>
<Organization>ОАО</Organization>
<City>Минск</City>
<Department>отдел продаж</Department>
<Street>Казинца ул.</Street>
<House>2</House>
<Building>4</Building>
<Apartment>419</Apartment>
<PostIndex>220099</PostIndex>
<Email>Cam@tut.by</Email>
</UsersAttributes>
Б. Пример файла заявки на приостановку СОК
<?xml version="1.0" encoding="utf-8"?>
<e:Envelope xmlns:e="http://www.w3.org/2003/05/soap-envelope"
xsi:schemaLocation="SchemaRequestApplication.xsd">
<e:Header>
<i:RequestInfo Priority="0" Repeated="0" mustUnderstand="1"
xmlns:i="http://contakt/soap/info">
<i:RequestType>
SuspendCertificate
</i:RequestType>
<i:RequestID>
AAJEiO3zjY2tz0a1hehw
</i:RequestID>
<i:ReturnAddresses>
<i:Address>
crypt_serv3@contact
</i:Address>
</i:ReturnAddresses>
</i:RequestInfo>
<SOAP-SEC:Signature xmlns:SOAP-SEC="http://schemas.xmlsoap.org/soap/security/200012">
<belds:Signature xmlns:belds="http://contact/xmldsig#">
№ изм.
Подп.
Дата
60
BY.СЮИК.00364-01 34 01
<belds:SignedInfo>
<belds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2000/CR-xml-c14n20001026"/>
<belds:SignatureMethod Algorithm="http://contact/stb1176"/>
<belds:Reference URI="#SignedData"/>
</belds:SignedInfo>
<belds:SignatureValue>
XQEAALPJJWmF5iVPt2LeS/cc2FCVMKuya5hKPPnAg4wNNhsq+1d9pT1GjPDTC48X
</belds:SignatureValue>
<belds:KeyInfo>
<belds:KeyName>
lL9mko0InVnutddJzHrwBTIYbcX9UG6hfwdIVSijXO0=
</belds:KeyName>
</belds:KeyInfo>
</belds:Signature>
</SOAP-SEC:Signature>
</e:Header>
<e:Body>
<d:RequestData xmlns:d="http://contakt/soap/data" SOAP-SEC:id="SignedData"
xmlns:SOAP-SEC="http://schemas.xmlsoap.org/soap/security/2000-12">
<d:ApplicationBuffer DataType="Base64">
MIGaMFoEEgIgH4QbZ9lPK4sdBdkAAAAAATAiGA8yMDEwMTAwNjEwMDc0NFoYDzIwMTA
xMDA2MTAwNzQ0WgQglL9mko0InVnutddJzHrwBTIYbcX9UG6hfwdIVSijXO0wDQYJKwYBB
AHefAECBQADLQNmjJqXkJj076j0Pl/jHy4Vi6cBnr3NcyOL9/ZbTLG2HPVpVKcYrffw1RHH4A=
=
</d:ApplicationBuffer>
</d:RequestData>
</e:Body>
</e:Envelope>
В. Пример файла заявки на отзыв СОК
<?xml version="1.0" encoding="utf-8"?>
<e:Envelope xmlns:e="http://www.w3.org/2003/05/soap-envelope"
№ изм.
Подп.
Дата
61
BY.СЮИК.00364-01 34 01
xsi:schemaLocation="SchemaRequestApplication.xsd">
<e:Header>
<i:RequestInfo Priority="0" Repeated="0" mustUnderstand="1"
xmlns:i="http://contakt/soap/info">
<i:RequestType>
RevokeCertificate
</i:RequestType>
<i:RequestID>
AAJEiO3zjY2tz0a1huhw
</i:RequestID>
<i:ReturnAddresses>
<i:Address>
crypt_serv3@contact
</i:Address>
</i:ReturnAddresses>
</i:RequestInfo>
<SOAP-SEC:Signature xmlns:SOAP-SEC="http://schemas.xmlsoap.org/soap/security/200012">
<belds:Signature xmlns:belds="http://contact/xmldsig#">
<belds:SignedInfo>
<belds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2000/CR-xml-c14n20001026"/>
<belds:SignatureMethod Algorithm="http://contact/stb1176"/>
<belds:Reference URI="#SignedData"/>
</belds:SignedInfo>
<belds:SignatureValue>
XQEAAJNuRsbLfvyfjsNGiaTOcDkKCtTrtVW9/vLBZ43JG1bJAPdZN+9zAMtfvHMK
</belds:SignatureValue>
<belds:KeyInfo>
<belds:KeyName>
lL9mko0InVnutddJzHrwBTIYbcX9UG6hfwdIVSijXO0=
</belds:KeyName>
</belds:KeyInfo>
</belds:Signature>
№ изм.
Подп.
Дата
62
BY.СЮИК.00364-01 34 01
</SOAP-SEC:Signature>
</e:Header>
<e:Body>
<d:RequestData xmlns:d="http://contakt/soap/data" SOAP-SEC:id="SignedData"
xmlns:SOAP-SEC="http://schemas.xmlsoap.org/soap/security/2000-12">
<d:ApplicationBuffer DataType="Base64">
MIGKMEoEEgIgH4QbZ9lPK4sdBdkAAAAAAQoBARgPMjAxMDEwMDYxMDEwMTFaBCCUv
2aSjQidWe6110nMevAFMhhtxf1QbqF/B0hVKKNc7TANBgkrBgEEAd58AQIFAAMtAw1iFXbvqg
xOONZmq4dWq2xGM/RSWUT9acQ4KLu5eNIi+oeiGNyKJw+xgCcI
</d:ApplicationBuffer>
</d:RequestData>
</e:Body>
</e:Envelope>
Г. Структура СОК и СОС
Структура СОК и СОС соответствует требованиям РД РБ 07040.1206–2004 "Формат
сертификатов открытых ключей и списков отозванных сертификатов".
Д. Структура файла локального хранилища СОК
Д.1 Логическая структура хранилища сертификатов
Для организации быстрого поиска, добавления и удаления сертификатов каждый
сертификат
логически
представляется
узлом
двунаправленного
весового
списка
и,
одновременно и независимо, трёх деревьев – серийных номеров, идентификаторов открытого
ключа и идентификаторов владельца сертификата.
Каждый сертификат обладает характеристикой, называемой «собственным весом»,
которые служат для определения частоты и времени использования сертификата. Кроме того,
менеджер сертификатов содержит два текущих весовых коэффициента – по одному на каждый
тип сертификатов – ЭЦП и ПФОК. Эти коэффициенты хранятся в переменных dwSignWeight и
dwCrptWeight соответственно. Первоначально (при отсутствии каких-либо сертификатов) этим
коэффициентам присваиваются единичные значения. Для сертификатов ЭЦП и ПФОК
поддерживаются два отдельных весовых списка. В каждом списке сертификаты упорядочены
по возрастанию их весов. При каждом запросе на сертификат к его весу прибавляется текущий
весовой коэффициент, этот сертификат переупорядочивается в соответствующем списке, а
№ изм.
Подп.
Дата
63
BY.СЮИК.00364-01 34 01
затем инкрементируется сам текущий весовой коэффициент. Как только текущий весовой
коэффициент достигает определённой границы, он уменьшается наполовину, и уменьшаются
наполовину веса всех сертификатов из соответствующего списка. При загрузке в память нового
сертификата его вес устанавливается равным текущему весовому коэффициенту, и этот
сертификат вставляется в соответствующий список.
Все вышеупомянутые деревья построены на одинаковых принципах, поэтому
рассмотрим структуру одного дерева, например, дерева серийных номеров сертификатов ЭЦП.
Для каждого серийного номера вычисляется 8-битный хеш, значение которого находится в
диапазоне [0,255]. Строго говоря, дерево серийных номеров сертификатов ЭЦП является
«лесом», состоящим из 256 поддеревьев, причём в каждом поддереве содержатся сертификаты
с одинаковыми хешами их серийных номеров. Сертификаты из одного поддерева также
образуют упорядоченный по возрастанию серийных номеров двунаправленный список, где в
качестве функции порядка используется стандартная библиотечная функция сравнения двух
буферов memcmp, и если сравниваемые серийные номера имеют разную длину, то более
короткий при сравнении дополняется справа нулевыми байтами до длины более длинного.
Корнем поддерева является сертификат, находящийся приблизительно в середине этого
упорядоченного списка. Ссылка на этот «корневой» сертификат содержится в элементе массива
adwSignNumberRoots с индексом, равным хешу серийного номера этого сертификата. Если
среди сертификатов ЭЦП нет сертификатов с некоторым значением хеша серийного номера, то
в
элементе массива adwSignNumberRoots с индексом, равным этому хешу, содержится
значение 0xFFFFFFFF. Каждый сертификат из рассматриваемого поддерева имеет 5 ссылок на
другие сертификаты из этого поддерева:
– ссылку на предыдущий в упорядоченном списке сертификат либо 0xFFFFFFFF, если
предыдущего сертификата нет;
– ссылку на следующий в упорядоченном списке сертификат либо 0xFFFFFFFF, если
следующего сертификата нет;
– ссылку на «левого» сына (все потомки текущего сертификата образуют упорядоченный
подсписок списка сертификатов рассматриваемого поддерева; «левую» часть этого подсписка
образуют сертификаты с серийными номерами, меньшими серийного номера текущего
сертификата; сертификат, находящийся приблизительно в середине этой «левой» части,
называется «левым» сыном), либо 0xFFFFFFFF, если ссылка на предыдущий сертификат равна
0xFFFFFFFF;
– ссылку
на
«правого»
сына
(все
потомки
текущего
сертификата
образуют
упорядоченный подсписок списка сертификатов рассматриваемого поддерева; «правую» часть
№ изм.
Подп.
Дата
64
BY.СЮИК.00364-01 34 01
этого подсписка образуют сертификаты с серийными номерами, большими серийного номера
текущего сертификата; сертификат, находящийся приблизительно в середине этой «правой»
части, называется «правым» сыном), либо 0xFFFFFFFF, если ссылка на следующий сертификат
равна 0xFFFFFFFF;
– ссылку на «папу» (т.е. на сертификат, для которого текущий сертификат является
«левым» либо «правым» сыном), либо 0xFFFFFFFF, если текущий сертификат является
«корневым».
Аналогично для сертификатов ЭЦП строятся деревья идентификаторов открытого ключа
и идентификаторов владельца сертификата, «корни» которых содержатся в массивах
adwSignKeyRoots и adwSignNickRoots соответственно, причём сертификаты, у которых
отсутствуют
идентификаторы
их
владельцев,
не
образуют
какого-либо
поддерева
идентификаторов владельца сертификата.
Точно так же для сертификатов ПФОК строятся деревья серийных номеров,
идентификаторов открытого ключа и идентификаторов владельца сертификата, «корни»
которых содержатся в массивах adwCrptNumberRoots, adwCrptKeyRoots и adwCrptNickRoots
соответственно.
Д.2 Структура хранения данных
Все необходимые для функционирования менеджера сертификатов данные содержатся
(кроме вышеупомянутых шести «корневых» массивов) в восьми буферах, каждый из которых
рассматривается как массив 32-битных беззнаковых слов (типа DWORD):
1) DWORD* pdwCities – населённые пункты владельцев сертификатов;
2) DWORD* pdwPolicies – политики сертификатов;
3) DWORD* pdwOwnCerts – сертификаты в кодировке ASN.1;
4) DWORD* pdwHistory – история изменений статусов сертификатов;
5) DWORD* pdwSignPQAs – долговременные параметры ЭЦП;
6) DWORD* pdwCrptPGs – долговременные параметры ПФОК;
7) DWORD* pdwSignStorage – основная часть полей сертификатов ЭЦП;
8) DWORD* pdwCrptStorage – основная часть полей сертификатов ПФОК.
С каждым массивом связана пара переменных. В первой переменной содержится размер
массива, полученный при выделении памяти под него, а во второй – размер используемой в
текущий момент части этого массива.
№ изм.
Подп.
Дата
65
BY.СЮИК.00364-01 34 01
Д.2.1 Структура хранилища населённых пунктов
Наименования населённых пунктов вместе с дополнительной информацией хранятся в
массиве 32-битных слов по адресу pdwCities. Данные по каждому населённому пункту имеют
структуру, представленную в таблице Д.1.
Таблица Д.1
Размер,
32-битных
слов
3 байта
24-битный хеш от наименования населённого пункта
1 байт
Длина наименования населённого пункта в байтах L
(L+4)/4
Наименование населённого пункта + нулевой байт
Содержимое
DWORD dwCitiesSize - размер буфера с населёнными пунктами.
DWORD dwCitiesPos - размер используемой части буфера с населёнными пунктами.
Д.2.2 Структура хранилища политик сертификатов
Идентификаторы политик сертификатов вместе с дополнительной информацией
хранятся в массиве 32-битных слов по адресу pdwPolicies. Данные по каждому идентификатору
политики сертификатов имеют структуру, представленную в таблице Д.2.
Таблица Д.2
Размер,32битных
Содержимое
слов
3 байта
24-битный хеш от идентификатора политики сертификатов
1 байт
Длина идентификатора политики сертификатов в байтах L
(L+4)/4
Идентификатор политики сертификатов + нулевой байт
DWORD dwPoliciesSize - размер буфера с идентификаторами политик сертификатов.
DWORD dwPoliciesPos - размер используемой части буфера с идентификаторами
политик сертификатов.
Д.2.3 Структура хранилища собственных сертификатов пользователя
Собственные сертификаты в формате ASN.1 вместе с дополнительной информацией
хранятся в массиве 32-битных слов по адресу pdwOwnCerts. Данные по каждому собственному
сертификату имеют структуру, представленную в таблице Д.3.
№ изм.
Подп.
Дата
66
BY.СЮИК.00364-01 34 01
Таблица Д.3
Размер,
32-битных
слов
Содержимое
Для сертификатов ЭЦП - ссылка на сертификат;
1
Для сертификатов ПФОК - ссылка на сертификат плюс 0x80000000
1
Длина сертификата ASN.1 в байтах L
(L+4)/4
Сертификат ASN.1 + нулевой байт
DWORD dwOwnCertsSize - размер буфера с собственными сертификатами.
DWORD dwOwnCertsPos - размер используемой части буфера с собственными
сертификатами.
Д.2.4 Структура хранилища истории сертификатов
Изменения статуса сертификатов вместе с дополнительной информацией хранятся в
массиве 32-битных слов по адресу pdwHistory. Данные по каждому изменению статуса
сертификата собраны в блоки. Блоки бывают двух видов: начальные и последующие. Каждый
сертификат, у которого происходили изменения его статуса, имеет единственный начальный
блок и ноль или более последующих. Начальные блоки имеют структуру, представленную в
таблице Д.4.
Таблица Д.4
Размер,
Содержимое
32-битных
слов
1
Смещение в массиве pdwHistory до предыдущего по времени
изменения статуса этого же сертификата, либо 0xFFFFFFFF, если
такого изменения нет
1
Смещение в массиве pdwHistory до следующего по времени
изменения статуса этого же сертификата, либо 0xFFFFFFFF, если
такого изменения нет
1
Новый статус сертификата
1
Дата и время по Гринвичу изменения статуса сертификата в коротком
формате
№ изм.
Подп.
Дата
67
BY.СЮИК.00364-01 34 01
Окончание таблицы Д.4
Локальная ссылка на «папу» в дереве серийных номеров – смещение
1
в массиве pdwHistory до начального блока «папы»
Локальная ссылка на «левого сына» в дереве серийных номеров –
1
смещение в массиве pdwHistory до начального блока «левого сына»
Локальная ссылка на «правого сына» в дереве серийных номеров –
1
смещение в массиве pdwHistory до начального блока
«правого сына»
Для сертификатов ЭЦП - ссылка на сертификат;
1
Для сертификатов ПФОК - ссылка на сертификат плюс 0x80000000
(L+5)/4
Серийный номер в следующем формате:
размер
содержимое
1 байт
8-битный хеш серийного номера
1 байт
Длина в байтах L серийного номера
L байт
Серийный номер
Последующие блоки состоят из первых четырёх полей начального блока.
Начальные блоки связаны в 256 деревьев. Каждое дерево содержит все сертификаты с
одинаковым хеш-значением их серийных номеров, а корни деревьев содержатся в массиве
DWORD adwSignNumberRoots[256] .
DWORD dwHistorySize - размер буфера с историей сертификатов.
DWORD dwHistoryPos - размер используемой части буфера с историей сертификатов.
Д.2.5 Структура хранилища долговременных параметров ЭЦП
Долговременные параметры ЭЦП вместе с дополнительной информацией хранятся в
массиве 32-битных слов по адресу pdwSignPQAs. Данные по каждому набору долговременных
параметров ЭЦП имеют структуру, представленную в таблице Д.5.
№ изм.
Подп.
Дата
68
BY.СЮИК.00364-01 34 01
Таблица Д.5
Размер, слов
Содержимое
Количество ссылок на данный набор долговременных параметров
1
ЭЦП
1
Долговременный параметр L
(L+31)/32
Долговременный параметр P без префикса
1
Долговременный параметр R
Окончание таблицы Д.5
(R+31)/32
Долговременный параметр Q без префикса
1
Долговременный параметр L
(L+31)/32
Долговременный параметр A без префикса
DWORD dwSignPQAsSize - размер буфера с историей сертификатов.
DWORD dwSignPQAsPos - размер используемой части буфера с историей сертификатов.
Д.2.6 Структура хранилища долговременных параметров ПФОК
Долговременные параметры ПФОК вместе с дополнительной информацией хранятся в
массиве 32-битных слов по адресу pdwCrptPGs. Данные по каждому набору долговременных
параметров ПФОК имеют структуру, представленную в таблице Д.6.
Таблица Д.6
Размер
Содержимое
1
Количество ссылок на данный набор долговременных параметров ПФОК
1
Долговременный параметр L
(L+31)/32
Долговременный параметр P без префикса
1
Долговременный параметр L
(L+31)/32
Долговременный параметр G без префикса
DWORD dwCrptPGsSize - размер буфера с историей сертификатов.
DWORD dwCrptPGsPos - размер используемой части буфера с историей сертификатов.
Д.2.7 Структура хранилища секций сертификатов ЭЦП
Секции сертификатов ЭЦП хранятся в массиве 32-битных слов по адресу pdwSignStorage
как непрерывные участки этого массива и имеют структуру, представленную в таблице Д.7.
№ изм.
Подп.
Дата
69
BY.СЮИК.00364-01 34 01
Таблица Д.7
Размер, слов
1
Содержимое
Смещение в массиве pdwSignStorage до следующей секции
сертификата
1
Размер секции
1
Текущий статус сертификата
1
Время установки текущего статуса сертификата в коротком
формате
1
Вес сертификата
1
Ссылка на предыдущий по весу сертификат
1
Ссылка на следующий по весу сертификат
8
Идентификатор открытого ключа
1
Ссылка на «папу» в дереве идентификаторов открытого ключа
1
Ссылка на предыдущий сертификат в списке идентификаторов
открытого ключа
1
Ссылка на следующий сертификат в списке идентификаторов
открытого ключа
1
Ссылка на «левого сына» в дереве идентификаторов открытого
ключа
1
Ссылка на «правого сына» в дереве идентификаторов открытого
ключа
1
Смещение относительно начала секции до идентификатора
владельца сертификата, либо 0xFFFFFFFF, если идентификатора
нет
1
Ссылка на «папу» в дереве идентификаторов владельца
сертификата
1
Ссылка на предыдущий сертификат в списке идентификаторов
владельца сертификата
1
Ссылка на следующий сертификат в списке идентификаторов
владельца сертификата
1
Ссылка на «левого сына» в дереве идентификаторов владельца
сертификата
№ изм.
Подп.
Дата
70
BY.СЮИК.00364-01 34 01
Продолжение таблицы Д.7
1
Ссылка на «правого сына» в дереве идентификаторов владельца
сертификата
1
Смещение относительно начала секции до серийного номера
1
Ссылка на «папу» в дереве серийных номеров
1
Ссылка на предыдущий сертификат в списке серийных номеров
1
Ссылка на следующий сертификат в списке серийных номеров
1
Ссылка на «левого сына» в дереве серийных номеров
1
Ссылка на «правого сына» в дереве серийных номеров
1
Время начала действия сертификата в коротком формате
1
Время окончания действия сертификата в коротком формате
1
Смещение в массиве pdwHistory до данных о последнем по
времени изменении статуса сертификата, либо 0xFFFFFFFF, если
изменений статуса не происходило
1
Время окончания действия личного ключа в коротком формате
1
Смещение относительно начала секции до полного имени
владельца сертификата, либо 0xFFFFFFFF, если имени нет
1
Смещение относительно начала секции до должности владельца
сертификата, либо 0xFFFFFFFF, если должности нет
1
Смещение относительно начала секции до наименования
населённого пункта владельца сертификата, либо 0xFFFFFFFF,
если наименования нет
1
Политики сертификата – набор 32-х флагов, в котором N-й флаг
установлен если сертификат поддерживает политику, имеющую
индекс N в массиве pdwPolicies (индексирование начинается с
нуля)
1
Смещение в массиве pdwOwnCerts до сертификата в формате
ASN.1
1
Тип сертификата = 0x00000080
1
Смещение относительно начала секции до открытого ключа
№ изм.
Подп.
Дата
71
BY.СЮИК.00364-01 34 01
Окончание таблицы Д.7
Смещение в массиве pdwSignPQAs до набора долговременных
1
параметров ЭЦП
8
Стартовый вектор хеширования для выработки ЭЦП
(L+5)/4
Серийный номер в следующем формате:
(L+6)/4
либо 0
размер
содержимое
1 байт
8-битный хеш серийного номера
1 байт
Длина в байтах L серийного номера
L байт
Серийный номер
Идентификатор владельца сертификата в следующем формате:
размер
содержимое
1 байт
8-битный хеш идентификаторав владельца
сертификата
1 байт
Длина в байтах L идентификатора владельца
сертификата
L+1
Идентификатор владельца сертификата + нулевой
байтов
байт
либо ничего
(L+4)/4
Полное имя владельца сертификата (длиной L байт) + нулевой
либо 0
байт;
либо ничего
(L+4)/4
Наименование населённого пункта владельца сертификата (длиной
либо 0
L байт) + нулевой байт;
либо ничего
(L+63)/32
Открытый ключ в префиксном формате (префикс – длина битового
представления открытого ключа L)
DWORD dwSignStorageSize - размер буфера секций сертификатов ЭЦП.
DWORD dwSignStoragePos - размер используемой части буфера секций сертификатов
ЭЦП.
№ изм.
Подп.
Дата
72
BY.СЮИК.00364-01 34 01
Д.2.8 Структура хранилища секций сертификатов ПФОК
Секции сертификатов ПФОК хранятся в массиве 32-битных слов по адресу
pdwCrptStorage как непрерывные участки этого массива и имеют структуру, представленную в
таблице Д.8.
Таблица Д.8
Размер, 32-
Содержимое
битных слов
1
Смещение в массиве pdwCrptStorage до следующей секции
сертификата
1
Размер секции
1
Текущий статус сертификата
1
Время установки текущего статуса сертификата в коротком
формате
1
Вес сертификата
1
Ссылка на предыдущий по весу сертификат
1
Ссылка на следующий по весу сертификат
8
Идентификатор открытого ключа
1
Ссылка на «папу» в дереве идентификаторов открытого ключа
1
Ссылка на предыдущий сертификат в списке идентификаторов
открытого ключа
1
Ссылка на следующий сертификат в списке идентификаторов
открытого ключа
1
Ссылка на «левого сына» в дереве идентификаторов открытого
ключа
1
Ссылка на «правого сына» в дереве идентификаторов открытого
ключа
1
Смещение относительно начала секции до идентификатора
владельца сертификата, либо 0xFFFFFFFF, если идентификатора
нет
1
Ссылка на «папу» в дереве идентификаторов владельца
сертификата
1
Ссылка на предыдущий сертификат в списке идентификаторов
владельца сертификата
№ изм.
Подп.
Дата
73
BY.СЮИК.00364-01 34 01
Продолжение таблицы Д.8
1
Ссылка на следующий сертификат в списке идентификаторов
владельца сертификата
1
Ссылка на «левого сына» в дереве идентификаторов владельца
сертификата
1
Ссылка на «правого сына» в дереве идентификаторов владельца
сертификата
1
Смещение относительно начала секции до серийного номера
1
Ссылка на «папу» в дереве серийных номеров
1
Ссылка на предыдущий сертификат в списке серийных номеров
1
Ссылка на следующий сертификат в списке серийных номеров
1
Ссылка на «левого сына» в дереве серийных номеров
1
Ссылка на «правого сына» в дереве серийных номеров
1
Время начала действия сертификата в коротком формате
1
Время окончания действия сертификата в коротком формате
1
Смещение в массиве pdwHistory до данных о последнем по
времени изменении статуса сертификата, либо 0xFFFFFFFF, если
изменений статуса не происходило
1
Время окончания действия личного ключа в коротком формате
1
Смещение относительно начала секции до полного имени
владельца сертификата, либо 0xFFFFFFFF, если имени нет
1
Смещение относительно начала секции до должности владельца
сертификата, либо 0xFFFFFFFF, если должности нет
1
Смещение относительно начала секции до наименования
населённого пункта владельца сертификата, либо 0xFFFFFFFF,
если наименования нет
1
Политики сертификата – набор 32-х флагов, в котором N-й флаг
установлен если сертификат поддерживает политику, имеющую
индекс N в массиве pdwPolicies (индексирование начинается с
нуля)
1
Смещение в массиве pdwOwnCerts до сертификата в формате
ASN.1
№ изм.
Подп.
Дата
74
BY.СЮИК.00364-01 34 01
Окончание таблицы Д.8
1
Тип сертификата = 0x00000008
1
Смещение относительно начала секции до открытого ключа
1
Смещение в массиве pdwCrptPGs до набора долговременных
параметров ПФОК
Долговременный параметр N для ПФОК – длина битового
1
представления вырабатываемых общих ключей
(L+5)/4
(L+6)/4
либо 0
Серийный номер в следующем формате:
размер
содержимое
1 байт
8-битный хеш серийного номера
1 байт
Длина в байтах L серийного номера
L байт
Серийный номер
Идентификатор владельца сертификата в следующем формате:
размер
содержимое
1 байт
8-битный хеш идентификаторав владельца
сертификата
1 байт
Длина в байтах L идентификатора владельца
сертификата
L+1
Идентификатор владельца сертификата + нулевой
байтов
байт
либо ничего
(L+4)/4
Полное имя владельца сертификата (длиной L байт) + нулевой
либо 0
байт;
либо ничего
(L+4)/4
Наименование населённого пункта владельца сертификата (длиной
либо 0
L байт) + нулевой байт;
либо ничего
(L+63)/32
Открытый ключ в префиксном формате (префикс – длина битового
представления открытого ключа L)
DWORD dwCrptStorageSize - размер буфера секций сертификатов ПФОК.
№ изм.
Подп.
Дата
75
BY.СЮИК.00364-01 34 01
DWORD dwCrptStoragePos - размер используемой части буфера секций сертификатов
ПФОК.
В разделе Д подразумевается, что:
1) все имена переменных, массивов и адреса буферов являются именами членов класса
CCertsManager, если явно не оговорено иное;
2) все размеры и смещения приводятся в 32-битных словах, если явно не оговорено иное;
3) секцией сертификата ЭЦП называется непрерывный участок буфера pdwSignStorage, в
котором содержатся данные, относящиеся к этому сертификату;
4) секцией сертификата ПФОК называется непрерывный участок буфера pdwCrptStorage,
в котором содержатся данные, относящиеся к этому сертификату;
5) ссылкой на сертификат ЭЦП называется смещение в буфере pdwSignStorage до секции
этого сертификата;
6) ссылкой на сертификат ПФОК называется смещение в буфере pdwCrptStorage до
секции этого сертификата;
7) коротким форматом даты/времени является целое 32-битное число, равное (в нотации
языка С) (Year-2000)<<24|Month<<20|Day<<15|Hour<<10|Minute<<4|Second>>2.
Е. Структура файла настройки
Ниже приведен пример файла настройки .ini.
;===================================================================
;секция настроек работы с сертификатами
[CERTS_INFO]
;пауза между запросами списка отозванных сертификатов в МИНУТАХ (если параметр
равен 0, то запросы не осуществляются)
CRL_QUERY_TIMEOUT_IN_MINUTES = 0
;флаг допустимости загрузки в память самоподписанных сертификатов (по
УМОЛЧАНИЮ - "NO")
SELFSIGNED_CERT_IS_VALID = "YES"
;===================================================================
;секция политик
[POLICIES_INFO]
№ изм.
Подп.
Дата
76
BY.СЮИК.00364-01 34 01
;количество политик сертификатов
CERTS_POLICIES_AMOUNT = 6
;Определение подлинности электронных документов
CERTS_POLICY_1 = 1.3.6.1.4.1.28974.7.1.1.0.0.0.0.0
;"Клиент-банк" - Все документы
CERTS_POLICY_2 = 1.3.6.1.4.1.28974.7.100.199.0.0.0.0.0
;"Внутренний документооборот" - все документы
CERTS_POLICY_3 = 1.3.6.1.4.1.28974.7.200.299.0.0.0.0.0
;"Внутренний документооборот" - заверительная подпись (Канцелярия)
CERTS_POLICY_4 = 1.3.6.1.4.1.28974.7.201.201.0.0.0.0.0
;"Интернет-банкинг" - все документы
CERTS_POLICY_5 = 1.3.6.1.4.1.28974.7.300.399.0.0.0.0.0
;"ДСП" - все документы
CERTS_POLICY_6 = 1.3.6.1.4.1.28974.7.400.499.0.0.0.0.0
;===================================================================
;секция настроек работы с сокетами
[SOCKETS_INFO]
;номер порта для работы с сокетами:
PORT_NUMBER = 49018
;===================================================================
;секция ЭЦП
[SIGNING_INFO]
;SignKey001 = "IK:\Sign.001"
;sign_key = "..\PrivateKeys\sign_key_Клиент_ТК_258_258_08_04_09_16_08_50.sck"
SignKey_77777777 = "..\PrivateKeys\sign_key_77777777.sck"
SignKey_88888888 = "..\PrivateKeys\sign_key_88888888.sck"
№ изм.
Подп.
Дата
77
BY.СЮИК.00364-01 34 01
sign_key_77777777 = "DC:\SignKeys\40"
sign_key_88888888 = "DC:\SignKeys\41"
;===================================================================
;секция расшифрования
[DECRYPTING_INFO]
CrptKey_77777777 = "..\PrivateKeys\crpt_key_77777777.sck"
CrptKey_88888888 = "..\PrivateKeys\crpt_key_88888888.sck"
crpt_key_77777777 = "DC:\CrptKeys\80"
crpt_key_88888888 = "DC:\CrptKeys\81"
;===================================================================
;секция аутентификации
[AUTENTIFICATION_INFO]
AuthKey_88888888 = "..\PrivateKeys\crpt_key_88888888.sck"
AuthKey_77777777 = "..\PrivateKeys\crpt_key_77777777.sck"
auth_key_77777777 = "DC:\CrptKeys\80"
auth_key_88888888 = "DC:\CrptKeys\81"
;===================================================================
[DEBUG_INFO]
DEBUG_PRINTING = "NO"
;DEBUG_PRINTING = "YES"
;===================================================================
;секция транспортных настроек
[TRANSPORT_INFO]
RequestsFolder = ".\Requests\"
ResponsesFolder = ".\Responses\"
;транспортные атрибуты УЦ:
№ изм.
Подп.
Дата
78
BY.СЮИК.00364-01 34 01
;CC_URL = "http://200.0.0.51:49001"
CC_URL = "http://127.0.0.1:49080"
CC_SendTimeout = 60
CC_RecvTimeout = 300
CC_HTTP_ProxyType = 0
CC_HTTP_ProxyAddress = ""
CC_HTTP_ProxyPort = 8080
CC_HTTP_ProxyLogin = ""
CC_HTTP_ProxyPassword = ""
CC_MailBoxAddress = "uc-contact-by@mail.ru"
;транспортные атрибуты РЦ:
RC_URL = "http://200.0.0.51:49001"
RC_SendTimeout = 60
RC_RecvTimeout = 300
RC_HTTP_ProxyType = 0
RC_HTTP_ProxyAddress = ""
RC_HTTP_ProxyPort = 8080
RC_HTTP_ProxyLogin = ""
RC_HTTP_ProxyPassword = ""
RC_MailBoxAddress = "rc-contact-by@mail.ru"
;собственные транспортные атрибуты:
; 0 - не использовать SSL; 2 - SSL версии 2; 3 - SSL версии 3; 4 - SSL версии 2,3; 5 TLS версии 1
SSL_version_for_sending = 0
SSL_version_for_receiving = 0
Our_SMTP_ServerAddress = "smtp.yandex.ru"
Our_SMTP_ServerPort = 25
№ изм.
Подп.
Дата
79
BY.СЮИК.00364-01 34 01
Our_SMTP_ServerPortSSL = 465
Our_MailBoxAddress = "kp1-contact-by@yandex.ru"
Our_MailBoxLogin = "kp1-contact-by@yandex.ru"
Our_MailBoxPassword = "ws12345678ws"
Our_Timeout = 60
Our_POP_ServerAddress = "pop.yandex.ru"
Our_POP_ServerPort = 110
Our_POP_ServerPortSSL = 995
Our_Mail_ProxyType = 0
Our_Mail_ProxyAddress = ""
Our_Mail_ProxyPort = 8080
Our_Mail_ProxyLogin = ""
Our_Mail_ProxyPassword = ""
;===================================================================
;секция корневого удостоверяющего центра
[ROOT_CENTER_INFO]
;имя УЦ
CENTER_NAME = "Удостоверяющий Центр ООО 'Рога и копыта'
;название организации - владельца УЦ
ORGANIZATION_NAME = "ООО 'Рога и копыта'"
;название города
CITY_NAME = "Минск"
;страна
COUNTRY_NAME = "BY"
;ник
CENTER_NICK = "00000001"
№ изм.
Подп.
Дата
80
BY.СЮИК.00364-01 34 01
;период действия сертификата в месяцах
CERTIFICATE_VALIDITY_DURATION = 60
;период действия личного ключа в месяцах
PRIVATE_KEY_VALIDITY_DURATION = 59
;уровень криптостойкости ключа ЭЦП
SIGN_KEY_CRYPTO_LEVEL = 10
;серийный номер
SERIAL_NUMBER = "123456780123456789ABCDEF000000000001"
;идентификатор ключа системного администратора УЦ
SYS_ADMIN_KEY_ID =
"94bf66928d089d59eeb5d749cc7af00532186dc5fd506ea17f07485528a35ced"
;идентификатор ключа администратора безопасности УЦ
SEC_ADMIN_KEY_ID =
"b6d20cbea6f06e0eebff42db4b64f9194fb1ab1e2fa4a0c25f8ff216926ec8ae"
№ изм.
Подп.
Дата
81
BY.СЮИК.00364-01 34 01
Лист регистрации изменений
Номера листов (страниц)
Изм
изменен- замененных
ных
новых
Всего
листов
№
аннули- (страниц) документа
рованных в докум.
№ изм.
Подп.
Дата
Входящий
№ сопроводительного Подп. Дата
докум. и
дата
Download