Статус: Участник
Группы: Участники
Зарегистрирован: 10.11.2017(UTC) Сообщений: 10 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал(а) «Спасибо»: 3 раз Поблагодарили: 4 раз в 4 постах
|
Автор: Alexcrool ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) - В качестве сертификата при шифровании подается сертификат ФСС. Так-так, а раньше что, шифровали отправку своим, клиентским? Да нет, вроде сертификатом ФСС и шифровалось в 1.1 Отредактировано пользователем 6 мая 2021 г. 15:16:46(UTC)
| Причина: Не указана
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 25.01.2019(UTC) Сообщений: 27 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 3 раз Поблагодарили: 9 раз в 3 постах
|
По многочисленным просьбам нуждающихся выкладываю ВЕСЬ проект. В нем есть готовый exe. Постарался расписать, что нужно для работы. Ну яснее просто некуда! Рабочий, проверил перед опубликованием. ![](/forum2/Themes/soclean/icon_file.gif) CryptoFss.rar (1,316kb) загружен 98 раз(а).P.S. Господа, если для решения поставленной задачи вы не знаете и не понимаете что делать, то в этом случае нужно учиться, разбираться, изучать материал. Получить готовый пример это хорошо, много раз так делал и сам, но так вы никогда не станете высококвалифицированным специалистом.
|
![thanks](/forum2/Themes/soclean/heart_small.png) 4 пользователей поблагодарили Alexcrool за этот пост.
|
thpg оставлено 07.05.2021(UTC), Рафик оставлено 12.07.2021(UTC), Дима2505 оставлено 06.10.2021(UTC), Shuraken оставлено 02.11.2021(UTC)
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 25.01.2019(UTC) Сообщений: 27 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 3 раз Поблагодарили: 9 раз в 3 постах
|
Автор: thpgЦитата:Так-так, а раньше что, шифровали отправку своим, клиентским? Да нет, вроде сертификатом ФСС и шифровалось в 1.1 Все верно! Но при отправке сообщений в 1.1. в запрос с шифрованным сообщением в тег <X509Certificate> вставляли сертификат пользователя, которым было зашифровано сообщение. В 2.0. этот сертификат вставляется в ранее подписанное сообщение в разделе <Header><X509Certificate> перед шифрованием. А в сообщение с зашифрованным сообщением в раздел <X509Certificate> уже ставим сертификат ФСС. СПЕЦИФИКАЦИЯ 5.2. Структура зашифрованного сообщения В блоке <soapenv:Header> исходного шифруемого сообщения необходимо добавить блок <X509Certificate>, содержащий публичный ключ сертификата отправителя. Структура сообщения для шифрования после этого будет выглядеть следующим образом: - EncryptionMethod – в качестве параметра содержит определение алгоритма шифрования; - KeyInfo – содержит информацию об секретном ключе, сгенерированном для данного информационного взаимодействия (CipherValue) и публичный сертификат сертификат ФСС, на котором были зашифрованы данные при направлении запросов в Фонд, или публичный сертификат пользователя, на котором были зашифрованы данные при формировании ответа в системе ФСС на запрос пользователю (X509Certificate); - CipherData – зашифрованное сообщение. Так написано в спецификации. ничего не выдумано. все четко Отредактировано пользователем 7 мая 2021 г. 5:57:51(UTC)
| Причина: Не указана
|
![thanks](/forum2/Themes/soclean/heart_small.png) 1 пользователь поблагодарил Alexcrool за этот пост.
|
thpg оставлено 07.05.2021(UTC)
|
|
Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 395 раз в 366 постах
|
Я только не совсем понимаю, если теперь сертификат отправителя внутри зашифрованного сообщения, то как они получают ключ согласования для расшифровки. Регистрируете сертификат отправителя заранее?
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 25.01.2019(UTC) Сообщений: 27 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 3 раз Поблагодарили: 9 раз в 3 постах
|
Я тебе точно не отвечу. Я не особо в теме. Но сообщение, подписанное, шифруется сертификатом ФСС с помощью асимметричного ключа. Почитай про это отдельно. А сертификат отправителя он у них есть из реестра МО (добро пожаловать в ЕГИСЗ). P.S. Поидее процесс расшифровки в ФСС, такой же как и у нас, после получения ответа. Посмотри алгоритм расшифровки и поймешь как получается ключ. Отредактировано пользователем 11 мая 2021 г. 10:54:36(UTC)
| Причина: Не указана
|
|
|
|
Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 395 раз в 366 постах
|
Почитаю, поразбираюсь, что поменялось. Вообще фраза про гост шифрование ассиметричным ключом сразу выглядит как ересь, так как гост-89 (он же магма) симметричный алгоритм, а Кузнечика (не знаю точно какой он) текущие сертифицированные версии КриптоПро не поддерживают. С этим даже разбираться не надо, точка. Других алгоритмов шифрования по гост насколько знаю нет. Посмотрю, может там с эфемерным ключом что-то интересное делается. Отредактировано пользователем 11 мая 2021 г. 12:41:44(UTC)
| Причина: Не указана
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 25.01.2019(UTC) Сообщений: 27 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 3 раз Поблагодарили: 9 раз в 3 постах
|
Посмотри. Потом расскажешь. Мне тоже стало интересно послушать че к чему. Правда я в шифровании ничего не понимаю. В гостах не разбираюсь. Главное работает, а как хз. Если распишешь, буду рад почитать. P.S. А в общем, тему бы перенести. А то я исходник в Delphi выложил, а тут тема .NET Отредактировано пользователем 12 мая 2021 г. 4:13:08(UTC)
| Причина: Не указана
|
|
|
|
Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 395 раз в 366 постах
|
Посмотрел, не так чтобы совсем до деталей, но действительно фокус в эфемерной ключевой паре. Генерируется эфемерная ключевая пара. Ключ согласования (симметричный) вырабатывается с участием закрытой части эфемерной пары и открытого ключа из сертификата ФСС. Далее (как и раньше) генерируется сессионный ключ (симметричный). Данные (подписанный файл) шифруются сессионным ключом. Сессионный ключ шифруется ключом согласования. К зашифрованному сессионному симметричному ключу в блоб прикрепляется открытая часть эфемерной пары, после чего эфемерная пара, сессионный ключ, ключ согласования уничтожаются.
Та самая открытая часть эфемерной пары (прикрепленная в блоб к зашифрованному сессионному ключу) заменяет открытый ключ из сертификата отправителя, поэтому для расшифровки не нужен сертификат отправителя. ФСС с помощью закрытого ключа из контейнера ФСС и открытой части эфемерной пары получают ключ согласования. Так как он симметричный то им можно и шифровать и расшифровывать - расшифровывает им сессионный ключ. Он тоже симметричный - расшифровывает им данные.
Однако для ответного сообщения сертификат потребуется (и потому его втиснули в подписанное сообщение), так как закрытая часть эфемерной пары уже уничтожена отправителем запроса и если ФСС зашифрует на открытом ключе эфемерной пары, отправитель запроса не сможет расшифровать ответ.
Итого: в процессе шифрования/расшифрования запроса участвуют эфемерная ключевая пара + пара ФСС, сессионный ключ. Для ответа - другая эфемерная ключевая пара + пара отправителя запроса, другой сессионный ключ. Раньше были и для запроса и для ответа пара отправителя запроса + пара ФСС, сессионный ключ.
На первый взгляд, контейнер и сертификат отправителя теперь не участвуют в шифровании сообщения, но это как раз те детали куда еще не смотрел. Если правда так, то наверно возможно зашифровать по старому, просто прикрепить ключ из сертификата вместо открытого ключа эфемерной пары (изменить только подготовку блоба).
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 25.01.2019(UTC) Сообщений: 27 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 3 раз Поблагодарили: 9 раз в 3 постах
|
Круто! В общем ФСС немного усложнив процесс шифрования повысил безопасность сообщений гулящие по открытой среде интернет.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.11.2015(UTC) Сообщений: 13 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал(а) «Спасибо»: 2 раз
|
Пытаюсь разобраться с примером от Alexcrool (#22) Все собрал, скомпилировал, но вот незадача: при запросе ругается на незарегистрированный класс, который находится в c14n.dll
И зарегистрировать эту dll не удается (точка входа DllRegisterServer не найдена). Если вы использовали этот вариант, как с этим справились?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close