Как я могу скрыть свои данные от сниффинга? - PullRequest
2 голосов
/ 01 июля 2011

Я использую этот код для подключения к fileserve.com, используя свою премиум-учетную запись. Я хочу поделиться своей программой, но они могут легко поднять имя пользователя и пароль с помощью «HTTP Analyzer». Есть ли способ скрыть мое имя пользователя и пароль от прослушивания? Iиспользуйте Delphi 2007.

procedure TForm1.Button1Click(Sender: TObject);
var
  i:integer;
  Data, Page : TStringList;
begin
  IdHTTP1.OnRedirect := nil;
  IdHTTP1.AllowCookies := True;
  IdHTTP1.HandleRedirects := True;
  IdHTTP1.ProtocolVersion := pv1_1;
  IdHTTP1.CookieManager := IdCookieManager1;
  IdHTTP1.RedirectMaximum := 15;
  IdHTTP1.Request.UserAgent := 'Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 5.1)';

  Data := TStringList.Create;
  try
    Data.Add('loginUserName=[user]');
    Data.Add('loginUserPassword=[pass]');
    Data.Add('autoLogin=');
    Data.Add('loginFormSubmit=Login');
    IdHTTP1.Post('http://www.fileserve.com/login.php', Data);
  finally
    Data.Free;
  end;

  IdHTTP1.HandleRedirects := False;
  IdHTTP1.OnRedirect := IdHTTP1Redirect;
  IdHTTP1.Get('http://www.fileserve.com/file/aYkRqp3');

  Edit1.Text := idHTTP1.Response.Location;
  for i := 0 to IdCookieManager1.CookieCollection.Count - 1 do
    Memo2.Lines.Add(IdCookieManager1.CookieCollection.Items[i].CookieText);
end;

1 Ответ

4 голосов
/ 01 июля 2011

Нет способа скрыть биты, которые вы передаете от сниффинга. Единственное, что вы можете сделать, - это зашифровать биты, чтобы даже если кто-то их схватил, они не могли понять, что они имеют в виду. Посмотрите, есть ли на веб-сайте, к которому вы подключаетесь, доступная версия HTTPS, и попробуйте использовать ее (и обработчики протокола HTTPS в Indy) вместо версии HTTP.

...