Skip to content

mit-dci/tortise

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Tortise

What is Tortise

Tortise is a (very) simple, distributed, decentralized twitter which runs over tor. It is designed to be a good basis for learning more about how to build systems on top of privacy protecting technology like Tor.

Instructions

  1. Make sure you have the latest python installed, using a tool like brew

  2. Clone this repository to your home directory

  3. Install Tor Browser: https://www.torproject.org/

  4. Add the following lines to your torrc file.

    HiddenServiceDir /Users/<YOUR USERNAME>/tortise/priv 
    HiddenServicePort 80 127.0.0.1:8083
    

    Hints:

    • You'll need to customize the directory paths to wherever you cloned this repo!
    • The priv/ subfolder will automatically be created
    • My torrc is located at: /Applications/TorBrowser.app/TorBrowser/Data/Tor/torrc
    • Still Need help? https://www.torproject.org/docs/tor-hidden-service.html.en has more detailed instructions

    Fun Fact: the -rc suffix doesn't really stand for anything useful, but you can think of it as resource configuration.

  5. (Re)Start TorBrowser.

  6. in src/, run python run.py, and leave it running. This is your server. You may need some dependencies: pip install PySocks pip install tornado

  7. check priv/hostname to see your onion address (keep key in priv private)

  8. Paste the address into the Tor Browser to connect.

  9. visit /peer on your website to put your friends domains (ie, http:/// in and send/recieve messages

  10. CHALLENGE EXERCISES:

  11. Make your peers persistent: that is, make it so that you don't need to reconnect every time

  12. Allow People to post messages with a username... * Make that username a keypair!

  13. Make a nicer user interface

  14. Clear out old messages

  15. Make it so that only you can post to your server

Releases

No releases published

Packages

 
 
 

Languages

  • Python 100.0%