Skip to content

Onion Service PoW stabilization

This issue exists to collect notes about what is needed to stabalize Proof-of-Work for onion services. The TODO for PoW is TODO POW:. Current TODOs are:

  • Implement disable_pow_compilation setting
  • Figure out what to do with pow_queue_rate setting (do we need that setting? should it relate to rate_limit_at_intro?)
  • Check that enable_pow setting works as simply_update (introduced in !2609 (merged))
  • Error if enable_pow is set in config but feature flag is disabled (introduced in !2609 (merged))

Related issues:

  • #1676 (Limit number of tasks spawned for PoW solves)

Misc things to be fixed:

  • Merge all the hs-pow-* / pow-* features into a single hs-pow-full feature.

In addition to fixing the TODOs, we will also need to do some testing:

  • Ensure interop between Arti and C Tor works as expected
  • Let people use it in practice and see if there are any reports

#1680 exists for writing shadow tests.

We may want to separate out client-side and host-side PoW and stabilize them at different times.

Edited by wesleyac