169 похожих чатов

Добрый день! Можно ли как то свой сертификат заставить работать

? Self Signed. Есть скажем сервер на котором свой сертификат, и чтобы приложение с этим сертификатом ходило. Есть например статья https://habr.com/ru/company/surfstudio/blog/504914/ где вскользь упоминается такая возможность. Однако на практике не получается сделать. С обычным сертификатом, тем же от фейсбука в статье работает, а со своим нет. Есть ли у кого практика реализации? Посмотрел в интернеты в целом где-то приводятся примеры вроде как рабочие, а где-то наборот что ничего не работает (насколько я понял) В целом ощущение что пихать в SetTrustedCertificatesBytes самоподписанный не катит. Хотя справка упоминает некие кастомные сертификаты (To add a custom trusted certificate authority, or to send a client certificate to servers that request one, pass a SecurityContext object as the optional context argument to the HttpClient constructor. The desired security options can be set on the SecurityContext object.) В общем пробовал свои CA и тд, не работает всегда ошибка. При том что curl, postman, openssl s_client все работает, ходит устанавливает соединение, получает данные. Думал может в платформе дело всмысле в ios например но тут нашел пример вот этот https://github.com/dart-lang/sdk/issues/35462#issuecomment-570750234 Выше человек писал что у него рабоиче примеры с кастомными сертификатами но в этом сообщений уже ничего не работает, причем испольщзуется только дарт, все сертификаты генерируются по месту и сервер на дарте и запросы все в одном скрипте, можно просто запустить, и получить в моем случае похожую ошибку - хотя и не такую же. В общем если у кого был опыт буду благодарен если поделитесь

30 ответов

16 просмотров

Цель какая? SSL pinning?

Тоже не совсем понятна цель костыляния этого, когда есть nginx и ему подобные прокси..

Adoris- Автор вопроса

Lf

Adoris- Автор вопроса

Не понял как nginx поможет?

Эм, на целевом хосте разворачиваешь nginx вешаешь на него абсолютно все что хочешь, и создаёшь реверс прокси на твое приложение?

https://habr.com/ru/company/surfstudio/blog/504914/

Adoris- Автор вопроса

Добрый день в моем сообщении ссылка на эту статью, читал

Adoris- Автор вопроса

работает с "нормальными" сертификатами

Ты свой сертификат установил в устройство ?

Adoris- Автор вопроса

Не допру куда будет приложение слать запросы?

Adoris- Автор вопроса

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

Тебе нужен не самоподписанный сертификат. Сгенерируй нормальный сертификат

Adoris- Автор вопроса

Так мне нужен именно самоподписанный, то есть дарт не работает в приныипе с самоподписанными ?

При ssl pinning пофиг, можно сапоподписный

Нет

Что нет?)

Adoris- Автор вопроса

Но ведь в том же примере который Вы привели, исключаются все сертификаты системы? Там создается пустой контект, запрещаются системные сертефикаты, и пиннится свой, просто этот свой проверяемый, а самоподписанный не проверяемый.

Если ты переписал badCertificateCallback. Но так делать вряд ли стоит

При этом учитывай что на вебсокеты это не работает (на всякий случай)

Adoris- Автор вопроса

С этим проблема и помимо вебсокетов, дело в том что судя по всему туда попадает только корневой доверенный или промежуточный сертификат.А не конечный и там проверить тоже проблематично. Единстенное что можно сделать жто поднимать отдельную конечную точку со своим конечным сертификатом, и парсить его вручную...

x509 серт переписан ?

Adoris- Автор вопроса

Я не пробовал еще такое, это из интернетов, в открытых issue

Adoris- Автор вопроса

Это какой-то другой callback?

badCertificateCallback, ошибся

Adoris- Автор вопроса

А ну да, вот там жалуются что вся цепочка туда не попадает, в коллбек и проверить все не возможно, соответсвенно и смысл пропадает .Только костылями листовой сертификат вытягивать, типа через предварительный запрос.

Твой серт не попадает в этот колбек ?

Adoris- Автор вопроса

Нет туда попадает сертификат CA в моем случае

А колбэк один раз вызывывается только для CA ?

Может файл серта неправильно сформирован ?

Adoris- Автор вопроса

наврядли, я дважды переделывал там не скахзать что много вариантов, и потом в примере выше человек все делает в одном скрипте в том числе генерацию сертификатов, ошибки теже, так что скорее всего проблема не в этом. Да и потом openssl s_client а так же curl и postman все работают нормально соединяются хендшейк и все работает

Похожие вопросы

Обсуждают сегодня

Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
32
А чем вам питонисты не угодили?😂
.
79
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Дорогие любители Прекрасной Джулии! Есть кто-то имеющий практический опыт построения ML для Систем Управления? Нам нужно сделать нейросеть для автоматической подстройки пара...
Roman Timo
4
С той же поддержкой Android в тулчейне, если кому интересно. На Swift Forums шло убогое обсуждение всякой херни годами, но ничего годного так и не появлялось. Пришел vgorloff ...
iMike
1
Dim Dim, [02.07.2024 11:07] DB 0x62 Dim Dim, [02.07.2024 11:07] DB 0x66 Dim Dim, [02.07.2024 11:07] кто пояснит что это?
Dim Dim
14
Приветствую ребята,у меня база есть,прорешал много задач с литкода,там деревья,списки, бэктрэкинг и все остальное,что мне сейчас делать?есть может куда устроиться поработать,е...
Aקuст Lеתסuд Aקuст Lеתסuд
5
Всех приветствую. Направьте меня в нужное русло. Постепенно переписываю проект с delphi на lazarus. Приложение - обычный windows/linux клиент для бд firebird. Тут все хорошо. ...
Mishutka
4
Anybody want this chat app? If anybody interested dm  me.. Note - Firstly payment then i send you code but i will show work on gmeet.
Rayyan Ahmad
5
Карта сайта