2011-11-16 16 views
5

Dostałem tę dll z UnionPay na projekt z Chinami i zostałem poproszony o sprawdzenie. Po wrzuceniu tego do ILSpy, nie mogłem nie zauważyć następujące metody:Czy istnieje ważny powód do ignorowania zerowych/nieważnych certyfikatów SSL (w przypadku przetwarzania płatności)?

private static bool RemoteCertificateCallback(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) 
{ 
    return true; 
} 

Teraz, jak rozumiem, celem takiego zwrotnego jest umożliwienie nieprawidłowych lub null certyfikatów SSL - mam dodano podobne wsparcie dla testów jednostkowych.

(Takie rzeczy sprawia mi bardzo podejrzliwy CHR interwencji rządu pozwalający na umyślne monitorowania man-in-the-middle transakcji).

Czy istnieje uzasadniony powód, dla przetwarzania płatności na wsparcie/null nieważny certyfikaty?

+3

Jak wspomniano, przydaje się do debugowania. Jeśli oczekują, że uruchomisz to w produkcji, pozbądź się ich. – SLaks

Odpowiedz

2

Czy istnieje uzasadniony powód, dla podmiotu obsługującego płatności do obsługi null/nieważnych certyfikatów?

Żadne. Trzymasz sekretne nawrócenie w zaciemnionym pokoju z ... kimkolwiek. Równie dobrze możesz używać tekstu jawnego. Zobacz komentarze do nieuwierzytelnionego SSL w RFC 2246. Całkowicie zgadzam się z @SLaks.