что такое tsp сервер

Сервер штампов времени

Служба штампов времени (time stamping authority, TSA) – специализированная компонента информационной системы, обладающая надежным источником точного времени (или синхронизируемая с таковым) и оказывающая услуги по формированию штампов времени, с помощью которых можно доказать факт существования какого-либо электронного документа на определенный момент времени.

Штамп времени – это электронный документ, подписанный электронной подписью (ЭП) сервера службы штампов времени (сервера TSA), где в качестве подписываемых данных выступает хэш-функция электронного документа, факт существования которого необходимо подтвердить. Таким образом, штамп времени однозначно связан с этим электронным документом.

В основе работы службы штампов времени лежит реализация протокола TSP (Time stamp protocol), представляющий собой протокол обмена сообщениями типа «запрос — ответ». Клиенты информационной системы посылают серверу службы штампов времени запрос на получение штампа времени. Сервер TSA в ответ возвращает сформированный штамп.

С помощью службы штампов времени можно:

После создания какого-либо электронного документа автор может сформировать запрос в службу штампов времени, в котором в качестве данных для подписи будет вставлена хэш-функция от этого документа. Полученный штамп времени будет являться доказательством существования данного документа на момент формирования штампа времени.

Данная возможность может быть использована в области авторского права.

Данная возможность нашла широкое применение при организации юридически значимого документооборота в различных областях деятельности, в частности на электронных торговых площадках.

Штамп времени в подписанном документе удостоверяет факт того, что электронная подпись под документом была сформирована до момента окончания срока действия сертификата автора подписи или его отзыва в случае компрометации. Таким образом, штамп времени продлевает легитимность ЭП до момента окончания срока действия сертификата сервера TSA, которым подписан штамп, и позволяет осуществлять проверку подписи даже после того, как сертификат автора подписи перестанет быть действительным.

Штамп времени продлевает срок действия электронной подписи под документом до момента окончания срока действия сертификата сервера TSA. Если до момента истечения срока действия сертификата сервера TSA получить новый штамп времени, подписанный уже новым сертификатом сервера, то такой штамп продлит срок действия ЭП уже до момента окончания срока действия нового сертификата сервера службы штампов времени. Таким образом, повторяя процедуру получения штампа времени каждый раз, когда у сервера TSA меняется сертификат подписи, можно с помощью получившейся цепочки штампов времени продлевать срок действия ЭП под документом на десятки лет и при этом иметь возможность в любой момент проверить ее.

Удостоверяющий центр «e-Notary» предоставляет услуги Сервера штампов времени, созданного на базе программного комплекса «Signal-COM TSP Server» разработки ЗАО «Сигнал-КОМ».

Сервер штампов времени «Signal-COM TSP Server» реализует протокол TSP (Time-Stamp Protocol) поверх HTTP и поддерживает российские (ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012, ГОСТ Р 34.10-2001, ГОСТ Р 34.11-94, ГОСТ 28147-89) и зарубежные (RSA, SHA-1, SHA-256, SHA-384, SHA-512) криптографические алгоритмы.

Ежеквартальный платеж за пользование услугами Сервера штампов времени составляет от 20 000 рублей (в зависимости от количества запросов на получение штампов времени).

Источник

Что такое TCP и как он работает?

Протокол управления передачей (TCP) является одним из самых важных протоколов пакета Internet Protocols. Это наиболее широко используемый протокол для передачи данных в сети связи, такой как Интернет.

Длина заголовка TCP составляет минимум 20 байтов и максимум 60 байт.

Адресация

Связь TCP между двумя удаленными хостами выполняется с помощью номеров портов (TSAP). Номера портов могут варьироваться от 0 до 65535, которые делятся как:

Управление подключениями

Связь TCP работает в модели Server / Client. Клиент инициирует соединение, и сервер либо принимает, либо отклоняет его. Для управления подключением используется трехстороннее связывание.

Установка соединения

Клиент инициирует соединение и отправляет сегмент с порядковым номером. Сервер подтверждает это со своим собственным порядковым номером и ACK сегмента клиента, который является еще одним номером последовательности клиентов. Клиент после получения ACK своего сегмента отправляет подтверждение ответа сервера.

Любой из серверов и клиентов может отправлять сегмент TCP с флагом FIN, установленным в 1. Когда принимающая сторона отвечает на это посредством ACKnowlinging FIN, это направление связи TCP закрывается и соединение освобождается.

Читайте также:  что делать работодателю если работник контактировал с больным коронавирусом

Управление полосой пропускания

TCP использует концепцию размера окна, чтобы удовлетворить потребность в управлении пропускной способностью. Размер окна сообщает отправителю на удаленном конце, количество сегментов байтов данных, которое может получить приемник с этого конца. TCP использует медленную фазу запуска с использованием размера окна 1 и увеличивает размер окна по экспоненте после каждого успешного сообщения.

Например, клиент использует размер окна 2 и отправляет 2 байта данных. Когда подтверждение этого сегмента получено, размер окна удваивается до 4, а следующий отправленный сегмент отправляется длиной 4 байта данных. Когда получено подтверждение 4-байтового сегмента данных, клиент устанавливает размер окна 8 и т. Д.

Если упущено подтверждение, то есть данные, потерянные в транзитной сети или полученные NACK, размер окна уменьшается до половины, а медленная начальная фаза начинается снова.

Контроль ошибок и контроль потока

TCP использует номера портов, чтобы узнать, какой процесс приложения ему нужен для передачи сегмента данных. Наряду с этим он использует порядковые номера для синхронизации с удаленным хостом. Все сегменты данных отправляются и принимаются с порядковыми номерами. Отправитель знает, какой последний сегмент данных был принят Получателем, когда он получает ACK. Получатель знает о последнем сегменте, отправленном отправителем, ссылаясь на порядковый номер недавно полученного пакета.

Если порядковый номер недавно полученного сегмента не совпадает с порядковым номером, который ожидал приемник, он отбрасывается и NACK отправляется обратно. Если два сегмента поступают с одинаковым порядковым номером, значение временной метки TCP сравнивается для принятия решения.

Мультиплексирование

Способ объединения двух или более потоков данных в один сеанс называется мультиплексированием. Когда клиент TCP инициализирует соединение с сервером, он всегда ссылается на четко определенный номер порта, который указывает на процесс приложения. Сам клиент использует случайный номер порта из частных пулов номеров портов.

Используя TCP Multiplexing, клиент может взаимодействовать с несколькими различными процессами приложения за один сеанс. Например, клиент запрашивает веб-страницу, которая, в свою очередь, содержит различные типы данных (HTTP, SMTP, FTP и т. Д.), Тайм-аут сеанса TCP увеличивается, и сеанс остается открытым на более длительное время, так что накладные расходы на трехстороннюю рукопожатие могут избегать.

Это позволяет клиентской системе получать несколько соединений по одному виртуальному соединению. Эти виртуальные соединения не подходят для серверов, если тайм-аут слишком длинный.

Контроль перегрузок

Когда большое количество данных подается в систему, которая не способна обрабатывать ее, происходит перегрузка. TCP управляет перегрузкой с помощью механизма Window. TCP устанавливает размер окна, говорящий на другом конце, сколько сегмента данных нужно отправить. TCP может использовать три алгоритма управления перегрузкой:

Управление таймером

TCP использует различные типы таймеров для управления и управления различными задачами:

Таймер сохранения:

Таймер повторной передачи:

Постоянный таймер:

Timed-Wait:

Восстановление после аварий

TCP — очень надежный протокол. Он предоставляет порядковый номер для каждого байта, отправленного в сегменте. Он обеспечивает механизм обратной связи, т.е. когда хост получает пакет, он привязан к ACK, чтобы ожидал пакет, имеющий следующий порядковый номер (если он не является последним сегментом).

Когда TCP-сервер прерывает связь в середине и перезапускает его процесс, он отправляет трансляцию TPDU всем своим хостам. Затем хосты могут отправить последний сегмент данных, который никогда не был непризнан и продолжен.

Источник

Что такое tsp сервер

Тестовый TSP-сервер

Тестовый TSP-сервер работает на основе службы штампов времени «КриптоПро TSP Server».

Сервер работает по протоколу TSP поверх HTTP. Для обращения к серверу посредством обычного соединения необходимо использовать адрес http://testca2012.cryptopro.ru/tsp/tsp.srf или https://testca2012.cryptopro.ru/tsp/tsp.srf для соединения по протоколу КриптоПро TLS.

Сервер отвечает на запросы штампов времени.

Сертификат подписи штампов времени издан Тестовым Центром Сертификации КРИПТО-ПРО на основе КриптоПро УЦ 2.0.

Чтобы тестовое программное обеспечение доверяло меткам времени, полученным с данного сервера, необходимо установить корневой сертификат тестового Центра сертификации в хранилище сертификатов операционной системы «Доверенные корневые центры сертификации».

Для проверки штампов времени также необходим сам сертификат службы штампов. Его можно получить здесь или при указании в запросе на штамп времени флага certReq, тогда служба штампов включит свой сертификат в ответ. При использовании КриптоПро TSP Client этот сертификат можно установить в хранилище «Другие пользователи» для того, чтобы функции проверки штампа находили его автоматически.

Читайте также:  что такое defrost в микроволновке

OID тестовой политики можно не указывать в запросе. Для информации его значение 1.2.643.2.2.38.4.

Используйте данный TSP-сервер только в тестовых целях. Не следует доверять штампам времени, выданным этим сервером, также как и сертификатам тестового Центра сертификации.

Источник

Что такое tsp сервер

Использование ПАК «КриптоПро TSP» позволяет участникам информационных систем получать штампы времени, связанные с электронными документами. Штамп времени представляет из себя электронный документ, подписанный электронной цифровой подписью (электронной подписью), где подписанными данными являются значение хэш-функции электронного документа и время предоставления штампа времени. Таким образом, штамп времени однозначно связан с электронным документом, на который он выдается и обеспечивает его целостность.

Для реализации сервиса TSP необходимо на базе «КриптоПро TSP Server» организовать Сервер службы TSP и встроить «КриптоПро TSP Client» в программное обеспечение клиентских рабочих мест. Встраивание «КриптоПро TSP Client» осуществляется с использованием инструментария разработчика – «КриптоПро PKI SDK».

Для чего нужны штампы времени

Краткое описание протокола TSP

Протокол TSP (Time-Stamp Protocol) является протоколом типа «запрос-ответ». Весь обмен заключается в двух сообщениях. Клиент инициирует взаимодействие, посылая серверу запрос на штамп времени, на что сервер возвращает ответ, содержащий выпущенный штамп или не содержащий его в случае ошибки.

Запрос на штамп времени

Запрос на штамп времени включает следующие поля:

Идентификатор политики определяет, по какой политике должен быть выдан штамп времени. Политики штампов времени задаются сервером штампов времени и устанавливают набор правил, по которым выдаются штампы времени, а также области их применения.

Например, в системе может быть определено несколько политик с разными идентификаторами и следующим описанием:

Поле Nonce позволяет клиенту проверить своевременность полученного ответа, в котором сервер штампов времени должен разместить то же самое значение nonce, которое было в запросе.

Ответ сервера штампов времени

Ответ сервера штампов времени содержит следующие поля:

Штамп времени представляет собой CMS-сообщение (PKCS#7) типа SignedData (см. RFC 3369 «Cryptographic Message Syntax (CMS)»). Содержимым этого сообщения является структура со следующими полями:

Сервер штампов указывает признак ordering, если он работает в режиме строгой упорядоченности штампов. Т.е. сравнение времён двух выданных этим серверов штампов даже без учёта точности времени определяет порядок их выдачи.

Как хранить штампы времени совместно с документами

В RFC 3161 «Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)» описан вариант хранения штампа времени на документ с ЭЦП (ЭП) формата CMS SignedData в неподписанном атрибуте этого CMS-сообщения.

Для организации долговременного архивного хранения документов с ЭЦП (ЭП) могут использоваться штампы времени, а также дополнительные данные, необходимые для подтверждения подлинности ЭЦП (ЭП) – так называемые доказательства подлинности ЭЦП (ЭП). К таковым относятся:

Для обеспечения актуальности ЭЦП (ЭП) при долговременном хранении необходимо периодически получать новые штампы времени.

Возможный вариант форматов данных и идентификаторы атрибутов для долговременного хранения документов с ЭЦП (ЭП) на основе CMS-сообщений описаны в европейском стандарте CAdES (ETSI TS 101 733). Версия этого стандарта опубликована в виде RFC 5126 «CMS Advanced Electronic Signatures (CAdES)»>RFC 5126 «CMS Advanced Electronic Signatures (CAdES)».

Источник

🏠 Интернет Всего 🚗

Продолжаем путешествие по сетевым протоколам.

TCP и UDP — оба протоколы транспортного уровня. UDP — это протокол без установления соединения и с негарантированной доставкой пакетов. TCP (Transmission Control Protocol) — это протокол с установлением соединения и с гарантированной доставкой пакетов. Сначала происходит рукопожатие (Привет. | Привет. | Поболтаем? | Давай.), после чего соединение считается установленным. Далее по этому соединению туда и обратно посылаются пакеты (идет беседа), причем с проверкой, дошел ли пакет до получателя. Если пакет потерялся, или дошел, но с битой контрольной суммой, то он посылается повторно («повтори, не расслышал»). Таким образом TCP более надёжен, но он сложнее с точки зрения реализации и соответственно требует больше тактов / памяти, что имеет не самое последнее значение для микроконтроллеров. В качестве примеров прикладных протоколов, использующих TCP, можно назвать FTP, HTTP, SMTP и многие другие.

Читайте также:  что делать если укусила пчела в спину

HTTP (Hypertext Transfer Protocol) — прикладной протокол, с помощью которого сервер отдаёт странички нашему браузеру. HTTP в настоящее время повсеместно используется во Всемирной паутине для получения информации с веб-сайтов. На картинке светильник на микроконтроллере с ОС Contiki на борту, в котором цвета задаются через браузер.

HTTP протокол текстовый и достаточно простой. Собственно вот так выглядит метод GET, посылаемый утилитой netcat на локальный IPv6 адрес сервера с лампочками:

Метод HTTP (англ. HTTP Method) обычно представляет собой короткое английское слово, записанное заглавными буквами, чувствительно к регистру. Каждый сервер обязан поддерживать как минимум методы GET и HEAD. Кроме методов GET и HEAD, часто применяется методы POST, PUT и DELETE. Метод GET используется для запроса содержимого указанного ресурса, в нашем случае тут GET /b HTTP/1.0 где путь /b отвечает за цвет (синий). Ответ сервера:

Код состояния (у нас 200) является частью первой строки ответа сервера. Он представляет собой целое число из трёх цифр. Первая цифра указывает на класс состояния. За кодом ответа обычно следует отделённая пробелом поясняющая фраза на английском языке, которая разъясняет человеку причину именно такого ответа. В нашем случае сервер отработал без ошибок, всё пучком (ОК).

Как запрос, так и ответ содержат заголовки (каждая строка — отдельное поле заголовка, пара имя-значение разделена двоеточием). Заканчиваются заголовки пустой строкой, после чего могут идти данные.

Мой браузер отказывается открывать локальный IPv6-адрес, поэтому в прошивке микроконтроллера прописан дополнительный адрес и такой же префикс также нужно назначить виртуальному сетевому интерфейсу симулятора:

Если curl отработал без ошибок, то ссылку можно спокойно открывать в браузере.

Здесь мы научим наш игрушечный TCP/IP стек понимать TCP протокол. Итак организация соединения по протоколу TCP начинается с т.н. трехстороннего квитирования (рукопожатия). Как всегда разобраться с сетью поможет Wireshark.

Когда требуется установить соединение с удалённым сервером, ему отправляется пакет с установленным флагом SYN, что означает инициализацию сессии. Тут есть поле Sequence Number (на картинке 1039510418), начальное значение этого поля выбирается случайным образом инициатором соединения.

Сервер, в ответ на этот пакет, отвечает пакетом с битами SYN, ACK. Своё значение Sequence Number (на картинке 16770109) он тоже генерирует случайным образом. Также он должен заполнить поле Acknowledgment Number, которые будет равно сумме принятого Sequence Number плюс 1 т.е. 1039510419.

Теперь инициатору подключения не остается ничего другого, как ответить ACK. Здесь Acknowledgment Number аналогично будет равно сумме принятого Sequence Number плюс 1 т.е. 16770110.

С этого момента соединение считается установленным. Дальнейшие пакеты будут передавать уже полезную нагрузку – данные протоколов вышестоящих уровней. В отличие от UDP, тут на каждый пакет нужно отправлять подтверждение (флаг ACK), дабы удалённый узел знал, что отправленные им данные были успешно приняты. При этом так же происходит взаимное увеличение Sequence Number у сервера и у клиента, но только уже не на 1, а на размер отправляемых данных.

Для закрытия соединение удалённому узлу посылается пакет с установленным флагом FIN.

С точки зрения реализации TCP это классический конечный автомат. На картинке показаны как состояния сервера, так и клиента (разные цвета стрелок), на стрелках отображено событие/действие – например переход сервера (синяя стрелка) из состояния LISTEN в состояние SYN RECEIVED происходит по событию SYN, реакция на это событие отправить клиенту SYN+ACK в ответ:

Теперь немного кода. Приведенный ниже пример очень сильно упрощён, тут нет состояний и реализована только минианимальная логика, достаточная для обмена данными утилитой netcat.

Обработка полезных данных — выводим на экран, печатаем в UART:

Чтобы вывести данные в дисплей, отправляем девайсу TCP-пакет на любой порт помощью netcat:

Источник

Строительный портал