Damian Johnson commited on 2018-02-23 21:15:14
Zeige 1 geänderte Dateien mit 36 Einfügungen und 0 Löschungen.
Posting the SoP project Tim and I have been brainstorming. This is just the first draft - I still need to run this by Tim and hopefully come up with more ideas on subtasks.
... | ... |
@@ -519,6 +519,11 @@ meetings around the world.</li> |
519 | 519 |
Tor. |
520 | 520 |
</p> |
521 | 521 |
|
522 |
+ <p> |
|
523 |
+ <b>Project Ideas:</b><br /> |
|
524 |
+ <i><a href="#pythonTorClient">Python Tor Client</a></i> |
|
525 |
+ </p> |
|
526 |
+ |
|
522 | 527 |
<a id="project-txtorcon"></a> |
523 | 528 |
<h3><a href="https://txtorcon.readthedocs.io/en/latest/">Txtorcon</a> (<a |
524 | 529 |
href="https://github.com/meejah/txtorcon">code</a>, <a |
... | ... |
@@ -730,6 +735,37 @@ meetings around the world.</li> |
730 | 735 |
<ol> |
731 | 736 |
|
732 | 737 |
#Keep old ids in case of incoming links. |
738 |
+ <a id="pythonTorClient"></a><a id="pythonTorClient"></a> |
|
739 |
+ <li> |
|
740 |
+ <b>Python Tor Client</b> |
|
741 |
+ <br> |
|
742 |
+ Language: <i>Python</i> |
|
743 |
+ <br> |
|
744 |
+ Likely Mentors: <i>Damian (atagar), Tim (teor)</i> |
|
745 |
+ <br><br> |
|
746 |
+ <p> |
|
747 |
+<b><a href="https://stem.torproject.org/">Stem</a></b> is our Python implementation of Tor's varous protocols. Traditionally this included <a href="https://stem.torproject.org/tutorials/the_little_relay_that_could.html">stem.control</a> for Tor's <a href="https://gitweb.torproject.org/torspec.git/tree/control-spec.txt">ControlPort</a> and <a href="https://stem.torproject.org/tutorials/mirror_mirror_on_the_wall.html">stem.descriptor</a> to download from Tor's <a href="https://gitweb.torproject.org/torspec.git/tree/dir-spec.txt">DirPort</a>. But recently we added a third to this family, <b><a href="https://lists.torproject.org/pipermail/tor-dev/2018-February/012905.html">stem.client</a></b>, that speaks Tor's <a href="https://gitweb.torproject.org/torspec.git/tree/tor-spec.txt">ORPort protocol</a>: the relay protocol for usage of the Tor network itself. |
|
748 |
+ </p> |
|
749 |
+ |
|
750 |
+ <p> |
|
751 |
+This opens interesting opportunities we've never had before such as... |
|
752 |
+ </p> |
|
753 |
+ |
|
754 |
+ <ul> |
|
755 |
+ <li>Construct a full three-hop circuit that can make GET requests and DNS lookups. If done right this might allow simple usage of the Tor network without even having Tor installed!</li> |
|
756 |
+ <li>Expand <a href="https://stem.torproject.org/tutorials/mirror_mirror_on_the_wall.html#where-can-i-get-the-current-descriptors">descriptor downloading</a> to use Tor's ORPort as an optional alternative for the DirPort. Following this we could adjust Tor so <a href="https://trac.torproject.org/projects/tor/ticket/19129">Fallback Directories no longer require a DirPort</a>.</li> |
|
757 |
+ <li>Add protocol level integration test of Tor's ORPort, for instance exercising edge cases in circuit construction and extension.</li> |
|
758 |
+ </ul> |
|
759 |
+ |
|
760 |
+ <p> |
|
761 |
+And more! Applicants are encouraged to get a decent understanding of <a href="https://gitweb.torproject.org/torspec.git/tree/tor-spec.txt">Tor's ORPort protocol</a> and come up with ideas of their own for neat directions that we can take this. To be clear this is <b>not</b> a particularly easy beginner project as it involves expanding stem.client to support more of Tor's ORPort protocol and crypto. |
|
762 |
+ </p> |
|
763 |
+ |
|
764 |
+ <p> |
|
765 |
+<b>As part of applying for this project please get your hands wet with the codebase by contributing some patches for <a href="https://stem.torproject.org/faq.html#how-do-i-get-started">Stem</a>!</b> |
|
766 |
+ </p> |
|
767 |
+ </li> |
|
768 |
+ |
|
733 | 769 |
<a id="improveOnionServices"></a><a id="improveHiddenServices"></a> |
734 | 770 |
<li> |
735 | 771 |
<b>Help improve Tor onion services</b> |
736 | 772 |