Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Callback для проверки подлинности сертификата сервера при использовании SSL (API, C/C++)
|
|||
|---|---|---|---|
|
#18+
Приветствую, Ну, т.е. SMTP клиент по TCP коннектится к серверу используя SSL, а там его всречают невалидным сертификатом (то же с pop3,imap, https). По умолчанию клиента разворачивают и он возвращает ошибку. Но можно задать Callback (как вариант на все приложение), и если Callback возвращает true то клиент продолжает работать с сервером. Как это делать в .Net я нарыл: SSL:Удаленный сертификат недействителен согласно результатам проверки подлинности. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. (P.S. Извините за код не на C++, это для иллюстрации того, о чем спрашиваю, а спрашиваю как раз о том как в классике, читай на C++ это делается) Но я иногда использую COM-объект CDO.Message, и на него этот трюк не проходит, потому что COM это другой процесс. А вопрос такой: какие WIN API вызывают этот CallBack в приложении? как мне эту ловушку выставить? Я по API конечно любитель большой, но с "проверкой сертификата" только второй день воюю, поэтому как это делается на классике не знаком. Нет ли каких примеров на C++? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2015, 17:17 |
|
||
|
Callback для проверки подлинности сертификата сервера при использовании SSL (API, C/C++)
|
|||
|---|---|---|---|
|
#18+
Дмитрий77какие WIN API вызывают этот CallBack в приложении? Не помню я, чтобы в WinAPI были функции работы с SSL вообще. Так что все вопросы - к документации по используемой тобой библиотеке. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2015, 17:28 |
|
||
|
Callback для проверки подлинности сертификата сервера при использовании SSL (API, C/C++)
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Но вот эта же огромная глава же есть: Security and Identity Вопрос то не про SSL а про механизм проверки сертификата на подлинность. Можно подумать, .Net классы (в которых это есть) не на WIN API основаны. Ну, можно конечно попытаться сорцы глянуть чего там вызывается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2015, 17:43 |
|
||
|
Callback для проверки подлинности сертификата сервера при использовании SSL (API, C/C++)
|
|||
|---|---|---|---|
|
#18+
Дмитрий77Но вот эта же огромная глава же есть: И какой именно кусок этой огромной главы ты пытаешься использовать? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2015, 17:59 |
|
||
|
Callback для проверки подлинности сертификата сервера при использовании SSL (API, C/C++)
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovИ какой именно кусок этой огромной главы ты пытаешься использовать? Дмитрий, если б я знал, то я бы пытался использовать а не задавал бы тут этот вопрос. Исходники подобного для .Net как бы есть: http://referencesource.microsoft.com/#q=RemoteCertificateValidationCallback но ни на какие API намеков я там не вижу, как обычно бывает. Меня конкретно интересует обернуть в эту штуковину системный COM объект CDO.Message (sdosys.dll), но внутренних методов, событий и т.п. позволяющих это сделать через сам COM он не предоставляет, или я не узрел. Т.е. в определенный момент винды вызывают проверку сертификата удаленного сервера. В процедуру этой проверки надо влезть, ну например вывести диалог, согласиться ли с недостоверным сертификатом, или сразу ответить ДА (практически все почтовые программы типа Outlook/Outlook Express такой диалог выводят в соответствующих случаях). По умолчанию, если не влезать, ответ будет НЕТ, т.е. приложение не сможет отправить почту через подобный сервер. Вот картинка чтоб понятней было о чем речь идет: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2015, 19:41 |
|
||
|
Callback для проверки подлинности сертификата сервера при использовании SSL (API, C/C++)
|
|||
|---|---|---|---|
|
#18+
М.б. вот это Certificate Policy Server Interfaces но не уверен, и хотелось бы именно API как функции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2015, 19:55 |
|
||
|
Callback для проверки подлинности сертификата сервера при использовании SSL (API, C/C++)
|
|||
|---|---|---|---|
|
#18+
Вот кажется что-то похожее: CertChainFindByIssuerCallback callback function ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2015, 20:17 |
|
||
|
Callback для проверки подлинности сертификата сервера при использовании SSL (API, C/C++)
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovНе помню я, чтобы в WinAPI были функции работы с SSL вообще. Да? Добрый человек наводку дал. 17687222 WINHTTP_STATUS_CALLBACK function pointer MSDNWINHTTP_CALLBACK_STATUS_FLAG_INVALID_CERT SSL certificate is invalid. WINHTTP_CALLBACK_STATUS_FLAG_CERT_REVOKED SSL certificate was revoked. WINHTTP_CALLBACK_STATUS_FLAG_INVALID_CA The function is unfamiliar with the Certificate Authority that generated the server's certificate. WINHTTP_CALLBACK_STATUS_FLAG_CERT_CN_INVALID SSL certificate common name (host name field) is incorrect, for example, if you entered www.microsoft.com and the common name on the certificate says www.msn.com. WINHTTP_CALLBACK_STATUS_FLAG_CERT_DATE_INVALID SSL certificate date that was received from the server is bad. The certificate is expired. WINHTTP_CALLBACK_STATUS_FLAG_SECURITY_CHANNEL_ERROR The application experienced an internal error loading the SSL libraries. Пока не разбирался, но вот думаю, я ж напрямую в API не лезу, у меня COM объект CDO.Message, он лезет. Т.е. вот можно ли на него эту ловушку в принципе выставить? (Net-овская ловушка на него не действует). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2015, 19:38 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=47&tid=2018975]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 130ms |

| 0 / 0 |
