IdHttp (Indy) - szyfrowanie danych podczas logowania

0

Witam
Mam w programie login i hasło. Chcę się za pomocą nich zalogować do zewnętrznego serwisu (czyt. nie własnego a więc nie mam możliwości nic dodać/zmienić). Z logowaniem nie ma problemu. Chciałbym tylko aby dane te były wysyłane do tejże strony w postaci zaszyfrowanej. Po prostu nie chcę, aby ktoś uruchomił sobie np. wireshark'a i widział login i hasło. Strona do której chcę się zalogować nie posiada raczej protokołu ssl czy "bezpiecznego logowania".
Da się takie coś zrobić? Oczywiście nie pytam o zaszyfrowanie tego loginu i hasła w programie, tym będę zajmował się później. Na razie chcę ukryć dane wysyłane przez program do tegoż serwisu za pomocą komponenty IdHTTP (Indy).

0

Nie rozumiem jak chcesz nawiązać szyfrowane połączenie z serwerem nie obsługującym szyfrowania.

Można wykombinować aby jeżeli to WWW zrobić obsługę normalnego hasła (do uzycia bezpośrednio przez WWW) i hasła przemielonego za w jakiś dziwny sposób sposób generować jakiś unikalny dla każdego logowania token czy coś i tak się bawić ale średnio to widzę i to pierwsza (nie do końca przemyślana) myśl.

0

Mogę się mylić, ale jeżeli serwer odczekuje hasła w postaci odszyfrowanej, a nie dopuszcza odbioru danych wysłanych po HTTPS, to chyba tylko jawnie da się to przekazać. Niekiedy jeszcze przy autoryzacji szyfruje się szyfrowanie Base64, ale na przykład pakiet Synapse (bo nie wiem jak z Indy) pozwala to odszyfrować. Poza tym funkcje deszyfrujące i szyfrujące tym sposobem są dostępne na google, a więc i tak ktoś, kto podejrzy WireSharkiem czy innym snifferem albo debuggerze HTTP zawartośc pakietu - może sobie owe hasło rozszyfrować. Ale może jest jeszcze jakiś inny sposób przekazania jawnego hasła w sposób bezpieczny, ale ja nie jestem ekspertem od protokołów i takiego sposobu nie znam, może ktoś inny coś tutaj Tobie doradzi.

0

Ogólnie mi chodziło, aby użytkownik mojego programu mógł zalogować się do pewnego serwisu nie znając do niego loginu i hasła. "Normalny" użytkownik nic nie będzie grzebał, ale jeśli jakiś użytkownik zechce zdobyć login i hasło no to może go bez wysiłku mieć a co za tym idzie - uzyska dane do konta. Szukam coś ala curl w php ale wszystko po stronie użytkownika a nie serwera.
Miałbym jeszcze taki pomysł, że podstawiałbym cookie - czyli zaloguję się u siebie a później użytkownikowi podstawę cookie już zalogowanego użytkownika na stronę. Ale nie wiem czy to będzie działać (niekiedy strony sprawdzają czy nie zmieniło się IP lub data). Co o tym myślicie?

0

Można i spróbować z cookie, ale jeżeli będzie ono identyczne jak te uzyskane przez przeglądarke lub wydobyte z pakietu przy analizie logowania przeglądarką WWW, na przykład pod WireSharkiem - to o ile się orientuje ciutke w temacie, cookie może wygasnąć albo mogą zajść inne okoliczności, takie jak wspomniałeś. Jeżeli jednak strona nie sprawdza IP to można spróbować sprawdzić co jest w ciasteczku, pewnie będzie tam zahashowane hasło i jakiś expire, który jeżeli jest konieczny musiał być ustalić jak jest zapisywany i później tworzyć taki sam expire dla daty i godziny odpowiednio późniejszej od tych, w momencie których następuje logowanie Twoim programem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1