Does this mean that your project would build out Tor protocol functionality as a JavaScript project, but that your recommendation would not be to utilize the current Tor network and make a separate one?
Yes and no, the recommendation is not to use the Tor network for Zcash the way it is used by the Tor browser (and probably Arti), because you canāt control anything (everything is streamed via one circuit whose lifetime is very long, you canāt choose the nodes, the lifetime of guards, the path of circuits, etc)
node-Tor allows you to use the Tor protocol the way you like, with or without Tor network nodes, of course today there are no real other choices than using Tor network nodes but if we never start adding other independent ones then we will never move forward a decentralized Tor protocol system, for example guards should not be Tor network nodes (because a guard can know it is the first node and possibly deanonymize you), if we take the browser Tor circuits they implement the Tor protocol over WebSockets, then the entry guard must implement the WS interface, I did ask some years ago the Tor project team to open WS everywhere (which they have implemented because of Flashproxy) but never got any answer, so they decide to do whatever they like and you must follow, I did not check the latest status but Snowflake also is ridiculous, with only one or two servers
You mention the Convergence proposal in your grant and GitHub and other places. It seems like node-Tor would gravitate towards this Convergence proposal in such a way where connection tot eh Tor network itself would be deprecated in node-Tor to support this new p2p architecture. Are there plans for the Convergence proposal long term and how does that align with node-Tor?
Indeed the goal is to move toward a Convergence like design, using browsers and servers as node-Tor nodes, this can be combined with Tor network nodes, the plan is already inside the proposal, but this needs to be funded, ideally other devs can join the project, but I donāt think itās really possible before phase 4 is released (the request for funding here again)
If you look well, unlike the initial Convergence proposal the latest one does not design the peer discovery system, because I think itās up to the upper layer (here Zcash) to do this the appropriate way (most likely not the Tor network central way)
This is a bit the story of the life of node-Tor: it always falls somewhere outside the scope of grants proposal but not far, everybody finds it interesting but I am always welcome to keep going ahead alone, the fact that I am not asking millions for funding does not mean that the project is anecdotic
A direct application to Zcash could be zcashd | node-Tor | zcashd, now as previously mentionned I donāt find it so good, but still keeping it in mind, another one could be to compile node-Tor in C/C++ (emscripten?), I am not very C/C++, probably others can find/propose solutions
My advice would be to reach out to some Zcash ecosystem projects, such as wallets, that may be utilizing JavaScript in their stack to see if node-Tor would be helpful.
I can do so, which wallets would you suggest?
ZOMG (previous yearās grantās committee) decided to fund Arti from the Tor Project because we believed the reimplementation of Tor would benefit our privacy goals for Zcash. In general, you should aim to provide a direct connection between a grant proposal and the benefit to the Zcash ecosystem when applying.
Maybe but it seems like (in the light of this thread) that you donāt really know what you will get at the end, and if itās a remake of the Tor network then back to the beginning of this post (and vulnerabilities like bitcoin CVE), so I am not sure to see the direct connection, but Zcash opening the path to a p2p Tor protocol looks to be one, in line also with Zcash privacy goals