Powód dla którego uwierzytelnienia się tylko serwer jest bardzo prosty i pragmatyczny - uwierzytelnienie klienta certyfikatem X.509 wymaga posiadania certyfikatu. A ten przywiązuje klienta albo do konkretnego komputera albo do karty elektronicznej - a ta z kolei wymaga czytnika i sterowników. Hasło i login nadal są najłatwiej przenośnym i najbardziej uniwersalnym mechanizmem uwierzytelnienia - a ludzkie oczy i palce to interfejs, który ma każdy "pecet".
Poza ochroną przed podsłuchiwaczami zadaniem SSL/TLS jest przede wszystkim zapewnienie klienta, że łączy się z tym serwerem, z którym rzeczywiście chciał się połączyć. Po to właśnie operator serwera kupuje certyfikat X.509 w zaufanej firmie - centrum certyfikacji - takiej jak Thawte, Verisign i inne. Firma gwarantuje klientowi, że łącząc się przez SSL z serwerem https://moj.multibank.pl/ łączy się faktycznie z serwerem, który ma prawo posługiwać się tą nazwą (a nie fałszywką, podstawioną nam w wyniku ARP spoofingu lub DNS cache spoofingu). Oraz że serwis ten należy do "BRE Bank SA" z Łodzi (pole Subject certyfikatu) a nie cwaniaka, który zarejestrował tę domenę na fałszywy dowód osobisty.
Jakiś dziwny jesteś! Pytasz się: "Więc jak mogę to obejść. Jakie biblioteki wykorzystać..." po czym sam sobie odpowiadasz: "zapewne z WinInet". Wiec na czym polega Twój problem ? Nawet podałem link do PDF'a gdzie jest opis ja to zrobić.Miroo_007 napisał(a):Więc jak mogę to obejść. Jakie biblioteki wykorzystać ...
#include <IdSSLOpenSSL.hpp>
#include <IdHTTP.hpp>
#include <IdSSLOpenSSLHeaders.hpp>
void __fastcall TForm1::btn1Click(TObject *Sender)
{
TIdHTTP * http = NULL;
TIdConnectionInterceptOpenSSL * ciossl = NULL;
try
{
http = new TIdHTTP(NULL);
ciossl = new TIdConnectionInterceptOpenSSL(NULL);
// http->HandleRedirects = true;
AnsiString adres("https://addons.mozilla.org/pl/firefox/");
ciossl->SSLOptions->Method = sslvSSLv23; //sslvSSLv2;
ciossl->SSLOptions->Mode = sslmClient; // sslmUnassigned;
http->Intercept = ciossl;
Memo1->Text = http->Get(adres);
}
__finally
{
delete http;
delete ciossl;
}
}
Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 0 gości