Статус: Участник
Группы: Участники
Зарегистрирован: 09.08.2018(UTC) Сообщений: 17 Откуда: Москва Сказал «Спасибо»: 4 раз Поблагодарили: 3 раз в 2 постах
|
test.zip (1,582kb) загружен 2 раз(а).Коллеги, доброго времени суток! В версии OpenSSL 1.1.1g (версия файлов 1.1.1.7) наблюдается неприятный баг: при выходе из openssl.exe (командой exit) приложение сваливается по не пойманному AV. Версия gostengy 4.0.536.0 Проверил ProcessHacker'ом что загружены именно эти библиотеки. Собрал тестовый пример, добавлю во вложение. Это openssl.cfg: Код:openssl_conf = openssl_def
[openssl_def]
engines = engine_section
[engine_section]
gostengy = gost_section
[gost_section]
engine_id = gostengy
dynamic_path = gostengy
default_algorithms = CIPHERS, DIGESTS, PKEY, PKEY_CRYPTO, PKEY_ASN1
Это openssl.cfg Это ossl.cmd: Код:set OPENSSL_CONF=.\openssl.cfg
openssl.exe
Выглядит так: Код:c:\MSM\x\exe\111>set OPENSSL_CONF=.\openssl.cfg
c:\MSM\x\exe\111>openssl.exe
OpenSSL> version
OpenSSL 1.1.1g 21 Apr 2020
OpenSSL> engine
(dynamic) Dynamic engine loading support
(gostengy) CryptoPro GostEngy ($Revision: 203422 $)
OpenSSL> ciphers
TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:RSA-PSK-AES256-GCM-SHA384:DHE-PSK-AES256-GCM-SHA384:RSA-PSK-CHACHA20-POLY1305:DHE-PSK-CHACHA20-POLY1305:ECDHE-PSK-CHACHA20-POLY1305:AES256-GCM-SHA384:PSK-AES256-GCM-SHA384:PSK-CHACHA20-POLY1305:RSA-PSK-AES128-GCM-SHA256:DHE-PSK-AES128-GCM-SHA256:AES128-GCM-SHA256:PSK-AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:ECDHE-PSK-AES256-CBC-SHA384:ECDHE-PSK-AES256-CBC-SHA:SRP-RSA-AES-256-CBC-SHA:SRP-AES-256-CBC-SHA:RSA-PSK-AES256-CBC-SHA384:DHE-PSK-AES256-CBC-SHA384:RSA-PSK-AES256-CBC-SHA:DHE-PSK-AES256-CBC-SHA:GOST2012-GOST8912-GOST8912:GOST2001-GOST89-GOST89:AES256-SHA:PSK-AES256-CBC-SHA384:PSK-AES256-CBC-SHA:ECDHE-PSK-AES128-CBC-SHA256:ECDHE-PSK-AES128-CBC-SHA:SRP-RSA-AES-128-CBC-SHA:SRP-AES-128-CBC-SHA:RSA-PSK-AES128-CBC-SHA256:DHE-PSK-AES128-CBC-SHA256:RSA-PSK-AES128-CBC-SHA:DHE-PSK-AES128-CBC-SHA:AES128-SHA:PSK-AES128-CBC-SHA256:PSK-AES128-CBC-SHA
OpenSSL>exit
Даже если прсото запустить ossl.cmd и сразу там exit то вылетает. Если просто openssl.exe то всё норм. Т.е. я делаю вывод что с gostengy что-то. Вот сборка (openssl собирал не сам, взял с сайта где люди специально собирают) test.zip (1,582kb) загружен 2 раз(а).
|
2 пользователей поблагодарили Coriolis за этот пост.
|
pd оставлено 23.04.2020(UTC), vasyast оставлено 07.05.2020(UTC)
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,496 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 466 раз в 333 постах
|
Автор: Coriolis test.zip (1,582kb) загружен 2 раз(а).Коллеги, доброго времени суток! В версии OpenSSL 1.1.1g (версия файлов 1.1.1.7) наблюдается неприятный баг: при выходе из openssl.exe (командой exit) приложение сваливается по не пойманному AV. Спасибо, да, видимо изменился порядок вызовы деструкторов, не были к такому готовы, сборка с исправлением будет в ближайшее время. |
|
1 пользователь поблагодарил pd за этот пост.
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,496 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 466 раз в 333 постах
|
Автор: Дмитрий Пичулин Автор: Coriolis Коллеги, доброго времени суток! В версии OpenSSL 1.1.1g (версия файлов 1.1.1.7) наблюдается неприятный баг: при выходе из openssl.exe (командой exit) приложение сваливается по не пойманному AV. Спасибо, да, видимо изменился порядок вызовы деструкторов, не были к такому готовы, сборка с исправлением будет в ближайшее время. Исправлено: https://update.cryptopro...t/nginx-gost/bin/210517/ |
|
1 пользователь поблагодарил pd за этот пост.
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 09.08.2018(UTC) Сообщений: 17 Откуда: Москва Сказал «Спасибо»: 4 раз Поблагодарили: 3 раз в 2 постах
|
Супер, сегодня протестируем уже, спасибо! UPD: Коллеги, всё работает, спасибо большое! Отредактировано пользователем 28 апреля 2020 г. 11:20:06(UTC)
| Причина: Не указана
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 27.05.2020(UTC) Сообщений: 28 Сказал(а) «Спасибо»: 1 раз
|
Здравствуйте! Скажите пожалуйста, возможно ли создание откреплённой подписи xml файла с помощью openssl+gost engine, используя алгоритм gost12_256 так, чтобы можно было успешно провести верификацию способом, как в стандартоном примере - Simple\xml\vb\Verify.vb для CryptoPro.Net, с небольшими изменениями: Код:
Public Shared Sub Main(ByVal args As String())
' Разбираем аргументы
If args.Length < 2 Then
Console.WriteLine("Xml.Verify <document> ...")
Return
End If
' Создаем новый XML документ в памяти.
Dim xmlDocument As XmlDocument = New XmlDocument()
Dim xmlSgn As XmlDocument = New XmlDocument()
' Сохраняем все пробельные символы, они важны при проверке
' подписи.
xmlDocument.PreserveWhitespace = True
xmlSgn.PreserveWhitespace = True
' Загружаем подписанный документ из файла.
xmlDocument.Load(args(0))
xmlSgn.Load(args(1))
' Ищем все node "Signature" и сохраняем их в объекте XmlNodeList
Dim nodeList As XmlNodeList = xmlSgn.GetElementsByTagName(
"Signature", SignedXml.XmlDsigNamespaceUrl)
Console.WriteLine("Найдено:{0} подпис(ей).", nodeList.Count)
' Проверяем все подписи.
For curSignature As Integer = 0 To nodeList.Count - 1
' Создаем объект SignedXml для проверки подписи документа.
Dim signedXml As SignedXml = New SignedXml(xmlDocument)
' Загружаем узел с подписью.
signedXml.LoadXml(nodeList(curSignature))
' Проверяем подпись и выводим результат.
Dim result As Boolean = signedXml.CheckSignature()
' Выводим результат проверки подписи в консоль.
If result Then
Console.WriteLine("XML подпись[{0}] верна.", curSignature + 1)
Else
Console.WriteLine("XML подпись[{0}] не верна.", curSignature + 1)
End If
Next
End Sub
Архив с исходным xml файлом, файлом с откреплённой подписью и сертификатом: example.zip (2kb) загружен 9 раз(а). example.zip (2kb) загружен 9 раз(а).
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,496 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 466 раз в 333 постах
|
Автор: Dmitrii F Здравствуйте! Скажите пожалуйста, возможно ли создание откреплённой подписи xml файла с помощью openssl+gost engine, используя алгоритм gost12_256 так, чтобы можно было успешно провести верификацию способом, как в стандартоном примере - Simple\xml\vb\Verify.vb для CryptoPro.Net,
Подпись через библиотеку openssl + gostengy в принципе сделать возможно на любые данные. Можно ли сделать то, что вам необходимо, через утилиту командной строки openssl мы не знаем. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 27.05.2020(UTC) Сообщений: 28 Сказал(а) «Спасибо»: 1 раз
|
Спасибо большое, что ответили. Вероятно, что я не совсем правильно сформулировал вопрос.
Создание откреплённой подписи указанным алгоритмом производится успешно.
А вот поверить, как в примере VB выше успешно не получается. Возможна ли в принципе такая (как в примере) проверка откреплённой подписи? Или нужно использовать другую технологию проверки?
Просто, если возможно, то мне будет проще понять, что я действительно что-то не так делаю при проверке - может канонизация xml, которая производится перед созданием откреплённой подписи (Python:lxml.etree) не совсем совпадает с канонизацией, которая производится в .Net (XmlDsigExcC14NTransform) или SignatureMethod Algorithm и DigestMethod Algorithm надо как-то по-другому указывать.
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,496 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 466 раз в 333 постах
|
Автор: Dmitrii F Спасибо большое, что ответили. Вероятно, что я не совсем правильно сформулировал вопрос.
Создание откреплённой подписи указанным алгоритмом производится успешно.
А вот поверить, как в примере VB выше успешно не получается. Возможна ли в принципе такая (как в примере) проверка откреплённой подписи? Или нужно использовать другую технологию проверки?
Просто, если возможно, то мне будет проще понять, что я действительно что-то не так делаю при проверке - может канонизация xml, которая производится перед созданием откреплённой подписи (Python:lxml.etree) не совсем совпадает с канонизацией, которая производится в .Net (XmlDsigExcC14NTransform) или SignatureMethod Algorithm и DigestMethod Algorithm надо как-то по-другому указывать.
Создайте по этому вопросу отдельную тему и сформулируйте вопрос более чётко. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 27.05.2020(UTC) Сообщений: 28 Сказал(а) «Спасибо»: 1 раз
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 27.05.2020(UTC) Сообщений: 28 Сказал(а) «Спасибо»: 1 раз
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close