C#创建隐藏服务槽控制端口

时间:2017-03-12 21:15:11

标签: c# tor

所以我正在制作像ricochet这样的小型聊天应用程序,但随后在C#中我成功连接到tor控件并创建了一个隐藏的服务ID和私钥,但是在那之后我被卡住了,我发送{ {1}}到tor控制端口,它使用隐藏的服务ID和私钥以及代码250进行应答。但是,如何使其自动运行服务呢?我尝试使用谷歌搜索,但无法找到任何东西,所有的例子都是python或c ++,如果有人能指出我正确的方向,这将是伟大的。另外,我使用Knapcode.TorSharp,因此tor安装不是持久的,用户有一个配置文件,其中密钥等被保存,它应该从那里开始。

提前致谢

1 个答案:

答案 0 :(得分:1)

当您致电<script> var urls = [ 'http://url1.com/', 'http://url2.com/' ]; </script> 时,隐藏服务立即开始运行(一旦发布隐藏服务描述符并建立电路[通常在一两分钟内]即可访问)。

如果您希望这些服务在后续运行时自动重新启动(对于非持久性Tor安装),那么当您的应用程序重新启动时,您需要以编程方式对ADD_ONION进行类似的调用,并检测到私钥将保存到配置文件中。

您可以使用现有密钥重新创建隐藏服务,语法如下:

ADD_ONION

第一次拨打ADD_ONION RSA1024:*PKEY_GOES_HERE* Flags=DiscardPK Port=8946,8946 时,响应应如下所示:

ADD_ONION

您希望在250-ServiceID=abcdefg123456 250-PrivateKey=RSA1024:MIICXAIBAAKBgQC91z4mjpNF5ddRL6jm7rnmgwSiQ6dNXF1Fo8sz1wOsGqWKgE4C6Bd3KT+zgQgXJlioIJOCEP9D0b/qlPCvEiGG3/fPEn1+Zpf5N4oNRI+in7J2m3xihhgAinbscJ0vM+1vfnRLlMrtYdE9J5aKle+t+OC6ZoXTxzPZRZkmXtqVpp8QIDAQPXAoGBAK7oh8zChBJch5u3i6jpvsIRaM2QA68VMKKfHPOwYSPKkUcgm7+10xjpGlXqxmd93yVYjk/CFU6JDIe3nmHPFK82BtPgyEMRtmVmcunS262Ead/ffpzAErBSdihOF7zO/wGjGgIaMW9Bhy69aK5LcNUB30Iu9+MWG62xz8tTgcEhAkEA8QNKMyKdRUbgGc9Gv1n8JtMs0Af/a/OHozdn1ywvHxw7mzahF936gqHIdg67XLtIj5TaUSM/44OoEvvURnG7QJBAMmlVttRd8y+/FnA6dPkesQMpPw+ipHLNUrf7qPrX3py670vLbprWDNYCOn6oaxoRtl/iRXPI5CgjMXmnu356pUCQDnWD0VMJi+MvZSUACbZXwP2ApP1bHfla3I7Xaezh5oDxtoAd0PS4STh1+HQUPvQW4WfLUcSsz9UaMAg2NI+fFUCQc7D1PVW7sqSGBth3jXE+3+H6WY2iy8Z1Ji+l2KRdJ8IiIOWdfcgUpMNzZV8jc7Y9Cm5p5l2wy7kjfGADyYBCXkCQD9fnmVMlUO1xITfW8K+pAf6FPcvfo8J0rpWHEhG4CxjFw4s4s9Mzjme1e17YnfK21CNIOxd2bkqVI4j4o= 250 OK 中保存它所回复的内容,并在下次运行应用程序时使用此值重新启动隐藏的服务。