[tor-commits] [tor/master] CREATE_FAST is for when you don't know the onion key

nickm at torproject.org nickm at torproject.org
Wed Jul 5 14:02:12 UTC 2017


commit 943d284752c7c0d7075e7d7a21d5384e8335e95b
Author: Roger Dingledine <arma at torproject.org>
Date:   Mon Jul 3 17:16:26 2017 -0400

    CREATE_FAST is for when you don't know the onion key
    
    it isn't (anymore) for when you think you can get away with saving some
    crypto operations.
---
 src/or/circuitbuild.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index 5fd199c..8bb7c94 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -981,15 +981,11 @@ circuit_send_first_onion_skin(origin_circuit_t *circ)
   node = node_get_by_id(circ->base_.n_chan->identity_digest);
   fast = should_use_create_fast_for_circuit(circ);
   if (!fast) {
-    /* We are an OR and we know the right onion key: we should
-     * send a create cell.
-     */
+    /* We know the right onion key: we should send a create cell. */
     circuit_pick_create_handshake(&cc.cell_type, &cc.handshake_type,
                                   circ->cpath->extend_info);
   } else {
-    /* We are not an OR, and we're building the first hop of a circuit to a
-     * new OR: we can be speedy and use CREATE_FAST to save an RSA operation
-     * and a DH operation. */
+    /* We don't know an onion key, so we need to fall back to CREATE_FAST. */
     cc.cell_type = CELL_CREATE_FAST;
     cc.handshake_type = ONION_HANDSHAKE_TYPE_FAST;
   }





More information about the tor-commits mailing list