Implement circuit padding machines

C tor has functionality for sending and receiving padding cells on circuits according to configurable padding machines. Eventually we may want to implement that in Arti.

  • Write a design document explaining how we'll use maybenot. !3225 (merged)
  • Write a set of wrappers around maybenot for use with Arti. !3185 (merged)
  • Integrate maybenot: trigger events as appropriate. !3222 (merged)
  • Integrate maybenot: send padding as appropriate. !3237 (merged)
  • Integrate maybenot: support traffic blocking. !3237 (merged)
    • Backend for blocking: new sink combiner. !3228 (merged).
  • Accept or reject incoming padding depending on whether we have a padding machine !3241 (merged)
  • Add functionality to track the incoming padding ratio and reject excessive padding. !3241 (merged)
  • Resolve Review all TODO circpad comments. !3271 (merged)
  • Finish discussion on !3276 (merged)
  • Implement critical changes from !3276 (merged)

Deferred:

  • Add a padding machine to approximately match Tor's current padding.
  • Negotiate padding.
Edited Oct 07, 2025 by Nick Mathewson
Assignee Loading
Time tracking Loading