Как подключиться к серверу openssl с помощью оболочки openssl C#
Мне дали сертификат, ключ и файл цепочки (.crt, .key и .pem), который я должен использовать для подключения к серверу. Я пробовал использовать openssl для создания файла. pfx и использовал его с TcpClient / SslStream / authenticate в качестве клиента. Это не сработало. Теперь я понимаю, что если сервер использует openssl, то и клиент должен (или мучительно учиться тому, как openssl делает свое дело, и писать много кода). Я включил доступную оболочку openssl C# в проект, но понятия не имею, как подключиться к серверу с ее помощью. Работает командная строка openssl...
openssl s_client-key provided.key-cert provided.crt-CAfile providedChain.pem-connect 127.0.0.1:12345
Это утверждение работает, но как я могу использовать оболочку, чтобы сделать то же самое в C#?
Что я уже пробовал:
Я попробовал стандартный TcpClient и в обратном вызове соединения создал SslStream и попытался аутентифицироваться как клиент. Вызов принимает сертификат, но, насколько я понимаю, это один файл, который содержит информацию о сертификате, а также ключ. Я использовал openssl, чтобы объединить их, но это не сработало. Сервер выгоняет меня, потому что начальное рукопожатие не работает (не переходите к части аутентификации).