<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679953</guid>
        <pubDate>Wed, 03 Aug 2016 10:32:51 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679953</link>
        <description><![CDATA[MasterBoy: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=406143&view=findpost&p=3679913'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Jiro &#064; <time class="tag-quote__quoted-time" datetime="2016-08-03T06:16:55+03:00">03.08.16, 03:16</time></span><div class='quote '>Если не ошибаюсь то <div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">IdTCPClient1.SendCmd(&#39;GETINFO status/bootstrap-phase&#39;, -1);</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script> и далее тор возвращает фазу готовности в процентиках.<br>
но возможно перед этим нужно ещё пульнуть команду TAKEOWNERSHIP.</div></div><br>
Огромное спасибо, отправив GETINFO status/bootstrap-phase я получил 250-status/bootstrap-phase=NOTICE BOOTSTRAP PROGRESS=100 TAG=done SUMMARY=&quot;Done&quot; - то что нужно &#33; В самое яблочко. TAKEOWNERSHIP отправлять не требуется. Еще раз и спасибо добрый человек.  :thanks:]]></description>
        <author>MasterBoy</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679913</guid>
        <pubDate>Wed, 03 Aug 2016 03:16:55 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679913</link>
        <description><![CDATA[Jiro: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=406143&view=findpost&p=3679853'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>MasterBoy &#064; <time class="tag-quote__quoted-time" datetime="2016-08-02T18:38:28+00:00">02.08.16, 18:38</time></span><div class='quote '>какими командами через порт контрола) готовность тора к отправке трафика ? </div></div><br>
<br>
Если не ошибаюсь то <div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">IdTCPClient1.SendCmd(&#39;GETINFO status/bootstrap-phase&#39;, -1);</div></ol></div></div></div></div> и далее тор возвращает фазу готовности в процентиках.<br>
но возможно перед этим нужно ещё пульнуть команду TAKEOWNERSHIP.<br>
<br>
Вообще лучше поснифить, там всё точно покажется, чем снифить вопрос хороший ... я чем-то снифил, увы не помню чем.<br>
вроде использовал SockSniff от Nirsoft.<br>
<br>
ps:<br>
кстати если запускать тор без HashedControlPassword то всё равно нужно слать AUTHENTICATE но уже с параметром -1:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp;IdTCPClient1.SendCmd(&#39;AUTHENTICATE&#39;,-1);</div></ol></div></div></div></div>]]></description>
        <author>Jiro</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679853</guid>
        <pubDate>Tue, 02 Aug 2016 18:38:28 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679853</link>
        <description><![CDATA[MasterBoy: Я вас понял, но это не решение вопроса, у меня получилось, для поддержания форума я поделюсь ответом.<br>
<br>
Случайно натолкнулся в недрах интернета что на контрольный порт тора можно цепляться телнетом, введя ту последовательность которая реализована в коде моей программы я быстро получил отлуп аналогичный выхлопу исключения, потом пробовал различные варианты пока не получил код 250, и о да страйк &#33; AClient.SendCmd (&#39;AUTHENTICATE &quot;mypassword&quot;&#39;); запрос должен выполняться без запятой &#33; и пароль обязательно в кавычках (о чем и написано в выхлопе исключения) тема решена, профит.<br>
<br>
======================<br>
15:44:42 TOR_EXEC:356 PID:4176 SocksPort:32207 ControlPort:32208<br>
15:44:42 Ожидание готовности TOR: 5000<br>
15:44:47 TOR Вернул код ошибки: 250<br>
15:44:47 Авторизация на порте управления прошла успешно 250<br>
======================<br>
<br>
Есть еще вопросы, уважаемый <strong class='tag-b'>Jiro</strong> не могли бы вы подсказать как мне определить (какими командами через порт контрола) готовность тора к отправке трафика ?]]></description>
        <author>MasterBoy</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679818</guid>
        <pubDate>Tue, 02 Aug 2016 15:06:16 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679818</link>
        <description><![CDATA[Jiro: <strong class='tag-b'>MasterBoy</strong><br>
<br>
я уже не помню что да как там с этим хэшем и авторизацией, просто в итоге пришёл к выводу, что проще на эту авторизацию забить и работать без неё.<br>
То есть просто запускать тор без параметра <strong class='tag-b'>HashedControlPassword</strong> и его значения.<br>
<br>
<br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2016-08-02T15:08:10+00:00">02.08.16, 15:08</time></span></span><br>
ну а далее можешь слать вские там newnymb и тд.]]></description>
        <author>Jiro</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679799</guid>
        <pubDate>Tue, 02 Aug 2016 11:52:42 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3679799</link>
        <description><![CDATA[MasterBoy: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=406143&view=findpost&p=3626512'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Jiro &#064; <time class="tag-quote__quoted-time" datetime="2015-09-25T20:10:12+00:00">25.09.15, 20:10</time></span><div class='quote '>Всё, со всем разобрался всё работает.  :)</div></div><br>
Извиняюсь за некропост, но тем не менее не могли бы вы подсказать как именно решился вопрос ?<br>
<br>
У меня выдает вот такой выхлоп. <br>
<br>
==============<br>
13:56:08 Ошибка авторизации на порте управления: Authentication failed: Password did not match HashedControlPassword value from configuration. Maybe you tried a plain text password? If so, the standard requires that you put it in double quotes.<br>
==============<br>
<br>
<div class="tag-spoiler spoiler closed"><div class="spoiler_header" onclick="openCloseParent(this)">Скрытый текст</div><div class="body"><br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;</div></ol></div></div></div></div><br>
// Обработка статуса TOR<br>
  if (Exec &lt;&gt; 0) and (ExePID &lt;&gt; 0) then<br>
  begin<br>
    LogFileAdd(&#39;TOR_EXEC:&#39; + IntToStr(Exec) + &#39; PID:&#39; + IntToStr(ExePID) + &#39; SocksPort:&#39; + IntToStr(Port) + &#39; ControlPort:&#39; + IntToStr(ControlPort));<br>
    LogFileAdd(&#39;Ожидание готовности TOR: 5000&#39;);<br>
    Delay(5000); // Защитное время ожидания запуска<br>
<br>
    // Подключение к порту управления<br>
    begin<br>
      AClient:= TIdTCPClient.Create(nil);<br>
      try<br>
        AClient.Host := &#39;127.0.0.1&#39;;<br>
        AClient.Port := ControlPort;<br>
        AClient.ConnectTimeout := 10000; // 10.0 sec<br>
        AClient.ReadTimeout := 10000;    // 10.0 sec<br>
        AClient.Connect;<br>
        try<br>
          AClient.SendCmd (&#39;AUTHENTICATE&#39;,&#39;16:E60A178AF69054FB6039E7FA8B207A89E20B9AE648BA765540187A558A&#092;r&#092;n&#39;);<br>
          LogFileAdd(&#39;TOR Вернул код ошибки: &#39; + AClient.LastCmdResult.Code);<br>
          if AClient.LastCmdResult.Code = &#39;250&#39; then<br>
          begin<br>
            LogFileAdd(&#39;Авторизация на порте управления прошла успешно 250&#39;);<br>
            Result := True;<br>
          end;<br>
        except<br>
          on E: Exception do<br>
          begin<br>
            LogFileAdd(&#39;Ошибка авторизации на порте управления: &#39; + E.Message);<br>
            exit<br>
          end;<br>
        end;<br>
      finally<br>
        AClient.Free;<br>
      end;<br>
    end;<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;</div></ol></div></div></div></div><br>
<br>
</div></div><br>
<br>
Запускаю так: <br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;</div></ol></div></div></div></div><br>
(paramstr(0), &#39;--socksport &#39; + IntToStr(Port) + &#39; --controlport &#39; + IntToStr(ControlPort) + &#39; --hashedcontrolpassword 16:E60A178AF69054FB6039E7FA8B207A89E20B9AE648BA765540187A558A&#39;, @ABuffer[0]);<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;</div></ol></div></div></div></div><br>
<br>
Пробовал и просто пароль и в кавычках и 16-ричный хоть ты тресни не проходит авторизация и все.<br>
<br>
Хотел посмотреть как авторизуется Vidalia, но так и не смог найти подходящего инструмента, через Microsoft LoopBack Adapter не получается, там нет нужнго трафика.<br>
<br>
Может кто натолкнет на правильные мысли ?  :thanks:]]></description>
        <author>MasterBoy</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626512</guid>
        <pubDate>Fri, 25 Sep 2015 20:10:12 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626512</link>
        <description><![CDATA[Jiro: Всё, со всем разобрался всё работает.  :)]]></description>
        <author>Jiro</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626376</guid>
        <pubDate>Fri, 25 Sep 2015 08:10:27 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626376</link>
        <description><![CDATA[Fr0sT: Так все равно через сокеты, если не ловит обмен через локалхост - укажи в настройках внешний адрес вместо 127.0.0.1 и будет ловить]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626207</guid>
        <pubDate>Thu, 24 Sep 2015 12:08:53 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626207</link>
        <description><![CDATA[Jiro: SmSniff - это снифер трафика сетевой карты, а нужен снифер между двумя локальными приложениями, как раз appsniff это умел делать, внедряясь в чужой процесс.<br>WireShark - давно как-то использовал, чё-то он мне своим недружественным фейсом вобще не понравился.]]></description>
        <author>Jiro</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626171</guid>
        <pubDate>Thu, 24 Sep 2015 09:01:19 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626171</link>
        <description><![CDATA[Fr0sT: Я в основном SmSniff юзаю, но можно и монстра WireShark попробовать]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626099</guid>
        <pubDate>Wed, 23 Sep 2015 21:27:06 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626099</link>
        <description><![CDATA[Jiro: Хорошо бы, только вот инструмента хорошего для этого нету, был когда-то appsniff хорошая штуковина, но на x64 не работает, а аналогов я не знаю, пробовал некоторые сниферы, но без результата. :(]]></description>
        <author>Jiro</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626049</guid>
        <pubDate>Wed, 23 Sep 2015 15:52:46 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3626049</link>
        <description><![CDATA[Fr0sT: Так может в настройках тора надо аутентиф-ся. Можно поснифать, как общается с ним Видалия]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3625911</guid>
        <pubDate>Wed, 23 Sep 2015 07:57:02 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3625911</link>
        <description><![CDATA[Jiro: Меня интересует смена нима для текущего подключения главным образом. <br>
Ну а в идеале конечно было бы неплохо иметь возможность полноценно общаться с тором и получать от него всю инфу.<br>
<br>
<br>
В <s class='tag-s'>этих ваших</s> интернетах есть один пример, в разных вариантах, один такой вариант ниже. <br>
Но он не работает, тк после tcp.SendCmd(&#39;AUTHENTICATE&#39;,-1); результат приходит 515 Чё делать то?<br>
<br>
Тор завожу так:<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '><br>
&quot;C:&#092;Users&#092;Userok&#092;Desktop&#092;BTor Browser&#092;Browser&#092;TorBrowser&#092;Tor&#092;tor.exe&quot; --defaults-torrc &quot;C:&#092;Users&#092;Userok&#092;Desktop&#092;BTor Browser&#092;Browser&#092;TorBrowser&#092;Data&#092;Tor&#092;torrc-defaults&quot; -f &quot;C:&#092;Users&#092;Userok&#092;Desktop&#092;BTor Browser&#092;Browser&#092;TorBrowser&#092;Data&#092;Tor&#092;torrc&quot; DataDirectory &quot;C:&#092;Users&#092;Userok&#092;Desktop&#092;BTor Browser&#092;Browser&#092;TorBrowser&#092;Data&#092;Tor&quot; GeoIPFile &quot;C:&#092;Users&#092;Userok&#092;Desktop&#092;BTor Browser&#092;Browser&#092;TorBrowser&#092;Data&#092;Tor&#092;geoip&quot; GeoIPv6File &quot;C:&#092;Users&#092;Userok&#092;Desktop&#092;BTor Browser&#092;Browser&#092;TorBrowser&#092;Data&#092;Tor&#092;geoip6&quot;<br>
</div></div><br>
<br>
Не рабочий пример из интернетов:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">procedure TorChangeIP(AHost: string; APort: integer);</div><div class="code_line">&nbsp;&nbsp;const ErrMsg = &#39;Tor ChangeIP Error: &#39;;</div><div class="code_line">&nbsp;&nbsp;var tcp: TIdTCPClient;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;tcp:=TIdTCPClient.Create(nil);</div><div class="code_line">&nbsp;&nbsp;try</div><div class="code_line">&nbsp;&nbsp; &nbsp;tcp.Host:=AHost;</div><div class="code_line">&nbsp;&nbsp; &nbsp;tcp.Port:=APort;</div><div class="code_line">&nbsp;&nbsp; &nbsp;tcp.Connect;</div><div class="code_line">&nbsp;&nbsp; &nbsp;try</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;tcp.SendCmd(&#39;AUTHENTICATE&#39;,-1);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;if tcp.LastCmdResult.TextCode&#60;&#62;&#39;250&#39; then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;raise Exception.Create(ErrMsg+tcp.LastCmdResult.TextCode);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;tcp.SendCmd(&#39;SIGNAL NEWNYM&#39;,-1);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;if tcp.LastCmdResult.TextCode &#60;&#62;&#39;250&#39; then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;raise Exception.Create(ErrMsg+tcp.LastCmdResult.TextCode);</div><div class="code_line">&nbsp;&nbsp; &nbsp;finally</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;tcp.Disconnect;</div><div class="code_line">&nbsp;&nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp;finally</div><div class="code_line">&nbsp;&nbsp; &nbsp;tcp.Free;</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">end;</div></ol></div></div></div></div>]]></description>
        <author>Jiro</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3625904</guid>
        <pubDate>Wed, 23 Sep 2015 07:03:02 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3625904</link>
        <description><![CDATA[Fr0sT: А какого рода управление нужно?]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3625870</guid>
        <pubDate>Tue, 22 Sep 2015 19:19:14 +0000</pubDate>
        <title>Tor Control на Delphi</title>
        <link>https://forum.sources.ru/index.php?showtopic=406143&amp;view=findpost&amp;p=3625870</link>
        <description><![CDATA[Jiro: Доброденько.<br><br>Есть ли рабочие примеры, управления TOR-ом ?]]></description>
        <author>Jiro</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      </channel>
      </rss>
	