程序員如何在自己的軟件中使用Tor Network(Tor network API)?

dyydp 9年前發布 | 30K 次閱讀 程序員
 

最近在搜索KX上網軟件時經常會發現Tor Network的字眼。回想起近年來的很多著名的黑客攻擊事件的描述中很多也出現了Tor Network。那么,Tor Network究竟是個什么東西呢?黑客是如何利用Tor Network進行黑客攻擊的?我們程序員是否也可以在自己的軟件中使用Tor Network呢?

首先來看看 維基百科 是如何介紹Tor Network的:

Tor(The Onion Router,洋蔥路由器)是實現匿名通信的自由軟件。Tor是第二代洋蔥路由的一種實現,用戶通過Tor可以在因特網上進行匿名交流。最初該項目由美國海軍研究實驗室贊助。2004年后期,Tor成為電子前哨基金會(EFF)的一個項目。2005年后期,EFF不再贊助Tor項目,但他們繼續維持Tor 的官方網站。

由于Tor可以匿名進行TCP傳輸,這就導致了被濫用的可能。路由器存放有一個“出口政策”(exit policy),內有各種地址、端口的組合規定,通過這個來區別哪些傳輸可以通過這個節點而離開Tor網絡,這樣就可能防范許多濫用的可能。潛在的濫用包括:

  • P2P:拋開合法性不談,如果通過Tor網絡來進行大量數據的傳輸,這就有些不禮貌了,畢竟洋蔥路由器是由志愿者,花費自己的帶寬創建起來的。
  • E-mail:匿名的SMTP很容易導致垃圾郵件的產生,一般Tor節點的“出口政策”,都拒絕對外連接到端口25(SMTP的端口)。
  • 蓄意破壞:由于不會被識破,用戶有時會利用Tor來對協作網站進行破壞,這導致許多的網站,包括維基百科[13],決定部分限制對Tor的通訊。

聽起來Tor是一款很強悍的黑客工具,但這只是人們對其使用的一個方面。一款軟件的好壞和意義并不是它自身決定的,而在于使用它的人。就像是一把斧頭,既可以幫助人砍木頭,也能用來傷害人。

Tor Network是一個開放的網絡,它有各種API可以使用。程序員可以利用這些接口在自己的程序中調用這些接口。現成的api接口有這樣幾種:

當然,如果你想獲得更多的編程自由和更大的權限,你可以直接研究 Tor Network控制協議

Tor Network的官方網站是 https://www.torproject.org 。目前國內用戶需要KX上網才能訪問。

[原創,CC Licensed]

 本文由用戶 dyydp 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!