How TOR Works- Computerphile

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 พ.ค. 2017
  • What goes on TOR stays on TOR, or so we hope. Dr Mike Pound takes us through how Onion Routing works.
    This video was formerly called "Onion Routing"
    EXTRA BITS: • EXTRA BITS: Onion Rout...
    End to End Encryption: • End to End Encryption ...
    Deep Web / Dark Web: • Secrets of the Deep Da...
    / computerphile
    / computer_phile
    This video was filmed and edited by Sean Riley.
    Computer Science at the University of Nottingham: bit.ly/nottscomputer
    Computerphile is a sister project to Brady Haran's Numberphile. More at www.bradyharan.com

ความคิดเห็น • 1.3K

  • @Aemilindore
    @Aemilindore 5 ปีที่แล้ว +1983

    When guys like these become professors, they end up making a generation of youngsters who revolutionise the technology.

    • @intellectualhybrid2
      @intellectualhybrid2 3 ปีที่แล้ว +27

      They are professors

    • @midnightduo1
      @midnightduo1 3 ปีที่แล้ว +97

      @@intellectualhybrid2 reading comprehension fail

    • @didyoustealmyfood8729
      @didyoustealmyfood8729 3 ปีที่แล้ว +76

      @@intellectualhybrid2 not all professors are like the guy in this video. most of them don't even speak properly. they only focus on their research.
      educating students is just a time waste for them

    • @ramimxss
      @ramimxss 2 ปีที่แล้ว +17

      Genius people like inventing more than teaching which is why we're stuck with the fools we call professors

    • @Freak-px9uk
      @Freak-px9uk 2 ปีที่แล้ว +3

      Yet sometimes they devolve technology by creating trash like facebook and twitter.

  • @pierreabbat6157
    @pierreabbat6157 6 ปีที่แล้ว +4438

    Could you also talk about garlic routing? Which is more vulnerable to leeks?

    • @TheyRiseBand
      @TheyRiseBand 4 ปีที่แล้ว +141

      Pierre Abbat very punny

    • @tabaks
      @tabaks 4 ปีที่แล้ว +45

      Stick to nose picking.

    • @cam7076
      @cam7076 4 ปีที่แล้ว +127

      Tor can be vulnerable to attacks, if running on a potato.

    • @shardv1309
      @shardv1309 4 ปีที่แล้ว +57

      @@TheyRiseBand it isn't a pun, garlic routing is a term used by the I2P network for their own anonymity network

    • @not-lucky2202
      @not-lucky2202 4 ปีที่แล้ว +147

      @@shardv1309 the pun was about leeks.

  • @bunkatood3093
    @bunkatood3093 2 ปีที่แล้ว +367

    As someone currently going for their masters in cybersecurity. They have been a massive help in understanding comp sci and IT concepts. While my professors are great people and they mean the best its was easier for me to get a concept down with a 10-30min computerphile video than a 4 hour long lecture with no practical application. Just wanted to say thanks chaps you been a massive help.

    • @solar9137
      @solar9137 ปีที่แล้ว +2

      same, this channel is very helpful ngl, have a great life

    • @norcalpacific
      @norcalpacific 11 หลายเดือนก่อน

      Are the servers for K1 K2 and K3 predetermined? how does the prior server (k1) know which next server to send it to if K2 is still encrypted?

    • @pascalvallaster4983
      @pascalvallaster4983 9 หลายเดือนก่อน +1

      ​@@norcalpacific They are given within the message the node decrypts. In very! simple words, the message looks like this "{destination}{encrypted-msg}"

  • @Twisted_Code
    @Twisted_Code 4 ปีที่แล้ว +68

    Traffic Analysis (discussed from about 11:20 to 13:00) is one of the major reasons tor works best when a lot of people near you are also connecting to the network. The more people that are connected to the same node, the "noisier" it is on the harder it is to correlate the inputs and outputs. Of course, this resistance to analysis is at a cost: all of that extra traffic also has to be processed by the node at some point, making it slower, so it's a bit of a balancing act

  • @diablominero
    @diablominero 5 ปีที่แล้ว +746

    "No one really knows anything about what's going on at all." Great description of my life.

    • @nutinmyass
      @nutinmyass 5 ปีที่แล้ว +25

      DiabloMinero Nah fam, the FBI got your back

    • @masamune5710
      @masamune5710 3 ปีที่แล้ว

      Why did I read that as he said it?

    • @ankkaah1809
      @ankkaah1809 3 ปีที่แล้ว

      that didn't age well.. imagine, then 2020 hit you, and u don't probably know who u are anymore do you?

    • @HarshKapadia
      @HarshKapadia ปีที่แล้ว

      Same here!

    • @w0lm7b97
      @w0lm7b97 10 หลายเดือนก่อน

      How u doing friend

  • @flukyventures3513
    @flukyventures3513 6 ปีที่แล้ว +2068

    I wish he was my teacher when I first took up computer science.

    • @coolbrotherf127
      @coolbrotherf127 6 ปีที่แล้ว +58

      Yea, this guy knows a lot about networks and technology

    • @flukyventures3513
      @flukyventures3513 6 ปีที่แล้ว +90

      Yea and is an excellent presenter of some pretty complex ideas.

    • @Pipiopy
      @Pipiopy 6 ปีที่แล้ว +10

      the first layer is electronics though

    • @benhook1013
      @benhook1013 5 ปีที่แล้ว +50

      No... the last layer is electronics, and the whole point of computer technology is layers of abstraction. I dont need to know circuit design to program and app or design a computer system.

    • @uropig
      @uropig 4 ปีที่แล้ว +1

      I broke the 666 likes chain.... I'm sorry

  • @CaptainVelveeta
    @CaptainVelveeta 4 ปีที่แล้ว +223

    The absolute best explanation of onion routing ever heard.

  • @Beateau
    @Beateau 3 ปีที่แล้ว +524

    Confidentiality is hiding the message, anonymity is hiding the sender.

    • @godzerkertf4764
      @godzerkertf4764 3 ปีที่แล้ว +84

      Confidentiality is hiding the contents of the message so that only an authorized entity can access the contents. Hiding the presence of the message is known as obscurity.

    • @dapdizzy
      @dapdizzy 3 ปีที่แล้ว +4

      GodzerkerTF must be not so very well known as those guys didn’t pick this word. Love these two comments BTW!

    • @Beateau
      @Beateau 3 ปีที่แล้ว +9

      @@godzerkertf4764 Right, I should have said "hiding the contents of the message" Obscurity is indeed hiding the presence of the message.

    • @rickastley885
      @rickastley885 3 ปีที่แล้ว +13

      Beateau if we're getting really pedantic, obfuscation is obscuring the message by surrounding it with meaningless noise

    • @Beateau
      @Beateau 3 ปีที่แล้ว

      @@rickastley885 Yeah, that's one way to do it.

  • @vinaloi41
    @vinaloi41 6 ปีที่แล้ว +171

    This is definitely my favorite guy on this channel.

  • @HotYoghurt1
    @HotYoghurt1 3 ปีที่แล้ว +11

    I love that people are always trying to charge money for computer courses and that, whereas the best teachers on youtube do it for free. I have so much respect for Mike and Tom. Keep doing what you are a doing and set up a Patreon because the information you are teaching on this channel is amazing and I would gladly donate what I can to you guys.

  • @bogenriederlukas
    @bogenriederlukas 6 ปีที่แล้ว +2056

    Using Tor to access Facebook... Oh what irony...

    • @mmmbrunommm3
      @mmmbrunommm3 5 ปีที่แล้ว +138

      It doesn't need to be your account ...

    • @autohmae
      @autohmae 5 ปีที่แล้ว +139

      Actually, Facebook was used to rally people in for example places like Egypt on Facebook which eventually lead to them overthrowing their government. Which a large part of the public in Egypt seemed to not be against. Which Egypt could not easily block. Now the problem in general with overthrowing a government is, it's like the Forrest Gump's box of chocolate: you never know what you are gonna get.

    • @ashrafbeshtawi3556
      @ashrafbeshtawi3556 5 ปีที่แล้ว +60

      Using Facebook for political goals in many Countries like Syria Egypt and Iran can get u arrested

    • @ThatCat
      @ThatCat 4 ปีที่แล้ว +2

      lol

    • @clarkmeyer7211
      @clarkmeyer7211 4 ปีที่แล้ว +11

      @@autohmae actually that was hillary clinton trying to be clever but instead sabotaged the trust in the american government so now no dictator will trust them again.

  • @thepasserby5546
    @thepasserby5546 6 ปีที่แล้ว +1433

    That preview picture tho. At first blink I was sure that was anything but an onion lol

    • @2175Nono
      @2175Nono 6 ปีที่แล้ว

      ( ͡° ͜ʖ ͡°)

    • @xenosuki
      @xenosuki 6 ปีที่แล้ว +30

      Clickbait :P

    • @boxfan9679
      @boxfan9679 6 ปีที่แล้ว +42

      I looked at it and saw the onion framework. Life of a virgin, I know.

    • @jeffjiang5272
      @jeffjiang5272 6 ปีที่แล้ว +17

      it is shallot, not onion

    • @zinniaward8549
      @zinniaward8549 5 ปีที่แล้ว +5

      Yeah SAME I thought it was a shallot

  • @Youtuber-cx1dx
    @Youtuber-cx1dx 3 ปีที่แล้ว +19

    Clearest description of Tor I've ever heard, obviously a teacher!

  • @bobsmith-ov3kn
    @bobsmith-ov3kn 6 ปีที่แล้ว +17

    A key point left out: Network requests can often have blatant identifiers of who sent that request, and the specifics about what they're doing. It's not just always seemingly arbitrary requests that give no hint of who issued the request. Like when using any sort of system you have to user a user ID or password for.
    This means the final node on the routing path actually can figure out info about who originated the request, and possibly why, despite having the multiple levels of encryption and routing between themselves and the originator

    • @mdcu3893
      @mdcu3893 ปีที่แล้ว +3

      are you talking about the point of if you log onto something, or something else?

    • @drexold
      @drexold 5 หลายเดือนก่อน

      It could be solved by using another circuit. We pass decryption key with our sessionID and when server gets encrypted user credentials, it will decrypt it with the key that matches to our sessionID (that passed with user credentials).

  • @danielluna7648
    @danielluna7648 3 ปีที่แล้ว +6

    Been following for years and I love the content. Always so fascinating. One of the best channels on YT.

  • @ghnna
    @ghnna 6 ปีที่แล้ว +274

    When someone else goes "TOR router"
    and you're there like
    "The Onion Router router?"

    • @rewrose2838
      @rewrose2838 4 ปีที่แล้ว

      May I know what your profile pic is from?
      (Who's the cosplayer/character?)

    • @SeanONilbud
      @SeanONilbud 4 ปีที่แล้ว +15

      @@rewrose2838 Right click on the image, select Search Google for image.

    • @bananya6020
      @bananya6020 4 ปีที่แล้ว +3

      @@rewrose2838 i can make a wild guess at 2b but i doubt that is any close
      i dont do pop culture sorry

    • @bananya6020
      @bananya6020 4 ปีที่แล้ว +6

      @ĐulaRu no one calls it ram memory though

    • @shaiker
      @shaiker 3 ปีที่แล้ว +3

      "The TOR router"

  • @MyTube4Utoo
    @MyTube4Utoo 6 ปีที่แล้ว +4

    I love Dr. Pound's in-depth explanations, and this channel, too.

  • @mrsuperguy2073
    @mrsuperguy2073 6 ปีที่แล้ว +6

    few questions:
    1- why not asymmetric encryption as opposed to symmetric?
    2- could you make it harder to de-anomynise you if packets had a short, random delay before being sent to the next node?
    3- could you make it harder to de-anomynise you if you added dummy data or dummy packets at the entry and/or exit points?

  • @Spicy_Dumplins
    @Spicy_Dumplins 4 ปีที่แล้ว +15

    Great vid, I really appreciate this content. Does anyone know how long a routing chain lasts? It seems pretty important that the paths you take don't remain constant. Would a new route be established with every request, browsing session, or change in server destination? Or is it more of a timed switch?

  • @TheMikkelOLaursen
    @TheMikkelOLaursen 6 ปีที่แล้ว +307

    Why are the lines on Dr. Pound's illustration torn?! Like some sort of screen tearing. It seems to be with almost all the lines drawn.
    It's really tearing me apart...

    • @oskioskioski
      @oskioskioski 6 ปีที่แล้ว +60

      Mikkel Laursen They fixed the camera perspective in post, which I guess left some artifacts. You can see the camera angle switch to and from the torn perspective near the end of the video.

    • @vertical3life
      @vertical3life 6 ปีที่แล้ว +3

      I noticed it at first with his hands and that there's never any camera above him in wide shots.

    • @mauro42321
      @mauro42321 6 ปีที่แล้ว +3

      In 3:45 they switch to a still photo and the tearing disappear, a video specific problem I guess...

    • @fossil98
      @fossil98 6 ปีที่แล้ว +5

      I knew I wasn't going to be the only fuming pedant in the comments. Lol.

    • @mrsuperguy2073
      @mrsuperguy2073 6 ปีที่แล้ว

      Mauricio Omg i didn't even notice!

  • @TecnoCR
    @TecnoCR 6 ปีที่แล้ว +104

    Can make a video by explaining how i2p works ?

    • @yellowcrash10
      @yellowcrash10 6 ปีที่แล้ว +25

      TecnoCR I2P is also called "garlic routing" for those interested.

    • @AlexTrout79
      @AlexTrout79 6 ปีที่แล้ว +8

      Yes but the thumbnail may not be as interesting.

    • @6884
      @6884 5 ปีที่แล้ว +3

      I thought it was called "i have 2p"

  • @bravoelliot
    @bravoelliot 6 ปีที่แล้ว +14

    I love the Computerphile episodes that Mike pound is in!

  • @williamotule
    @williamotule 4 ปีที่แล้ว +6

    Discovering this channel with this nice topic : thanks a lot! Short question, Mike Pound evokes the weakness of finding timely correlations between entry and exit points. But, could some kind of controlled shuffling of the various requests do the trick ( a mixing with other requests)?

  • @kvelez
    @kvelez ปีที่แล้ว +44

    4:06
    Layer encryption.
    6:02
    Attack.
    7:42
    Onion routing.
    8:08
    Speed.
    9:24
    Eavesdropping.
    10:28
    Drawbacks.
    13:03
    Cells.

    • @norcalpacific
      @norcalpacific 11 หลายเดือนก่อน

      Are the servers for K1 K2 and K3 predetermined? how does the prior server (k1) know which next server to send it to if K2 is still encrypted?

    • @pantommy
      @pantommy 8 หลายเดือนก่อน

      ​@@norcalpacificat 7:42

    • @twl148
      @twl148 7 หลายเดือนก่อน

      cells interlinked within cells

  • @joeleckert9462
    @joeleckert9462 4 ปีที่แล้ว +4

    Great insight for a newcomer to the topic, thank you for taking the time to explain!

  • @kosmonautofficial296
    @kosmonautofficial296 5 ปีที่แล้ว +4

    Great video but I am not sure about the last part. An Etherframe is 64-1518 bytes long, not 1512. 1512 would only include the data in the frame, and source mac and destination mac. The data encapulated by the fame is set to a default maximum transmission unit of 1500. This does not include the Preamble + Start Frame Delimiter ether type FCS or the inter frame gap.
    I am also not sure about the point that was made about how a router decides to forward a packet. The router would check the destination mac address to see if it is being sent to its self. Then the router would check the CRC hash at the tail of the L2PDU to see if there was corruption to the transmission of the packet first to determine if it is even going to process the frame. Then it would check the destination ip address and figure out it if will need to do a routing table lookup or if it is destined to the router its self. A new hash is created each time the ethernet frame is rewritten, which is each time it hits a layer 3 device that needs to route it. The hash must match each time a switch or router checks the CRC, if it does not pass it will drop the frame or packet. The tor protocol does encryption at Layer 6 of the OSI model and would not interfere with the passing of the CRC.
    As you said at 13:14 a router determines if a router needs to read a message or forward based on the hash. Incorrect because if the hash does not pass it will drop the packet. A router will determine whether or not to forward the packet based on its IP destination in the L3PDU, not the CRC hash.
    Does tor networking handle routing differently where something would need to be done in the application layer?

  • @nab-rk4ob
    @nab-rk4ob 6 ปีที่แล้ว

    I enjoy listening to Dr. Pound's explanations. I can understand him. The subject is fascinating.

  • @NathanEdgerton
    @NathanEdgerton 8 หลายเดือนก่อน

    I knew nothing about Tor but I saw it was a Mike Pound video so I watched it, definitely glad I did and I feel like I learned something new and important from it :) Thanks a lot for the videos!

  • @IllusionSector
    @IllusionSector 5 ปีที่แล้ว +17

    12:00 He talked about the possibility of de-anonymization through message time signature analysis. Isn't there way to, sort of, stagger those time signatures somehow?

    • @kukuricapica
      @kukuricapica 4 ปีที่แล้ว +1

      Yes but the problem is the size. If send 30kb of data in 5kb chunks it will be difficult but not impossible. In real life they'll just need to find your location and then when you're not home they'll just place some extra piece of software/hardware on your device. Silk road owner got his laptop straight up stolen by FBI lol . You dont play fair so dont expect them to play fair

    • @sentfromheaven00
      @sentfromheaven00 3 ปีที่แล้ว +1

      @@kukuricapica yes but if you are just a user the chances are very low. if you are hosting a black market you will have a high risk

    • @Cplas783
      @Cplas783 3 ปีที่แล้ว +5

      Mix networks have the concept of dummy messages that are produced by the relays (routing nodes) to make the original message ordering harder to trace. Messages may also be output in batches and random or lexicographic ordering may be performed by the relays

    • @VictorYarema
      @VictorYarema 2 ปีที่แล้ว

      Yes, it is possible to ask each node to add some specific randomly chosen delay. But this will impact performance so badly that it may become unusable. Everything comes with a price.

  • @balgruufthegreater9072
    @balgruufthegreater9072 6 ปีที่แล้ว +23

    Interesting video! But I'd like to know how the key exchange works between tor nodes

    • @jellejanwillie
      @jellejanwillie 6 ปีที่แล้ว +16

      That would be another video on its own. But I suggest you look up diffie-hellman key exchange

  • @epiblitik05
    @epiblitik05 2 ปีที่แล้ว +1

    So I created a chain proxy a few years back I could easy implement encryption into the request but man that part about checking the hash at the end to determine where the packet should go is Genius !

  • @Theultimatebohab7137
    @Theultimatebohab7137 2 ปีที่แล้ว

    I could listen to this guy explain stuff all day...

  • @ulteriormotif
    @ulteriormotif 6 ปีที่แล้ว +3

    The last minute of the video contains one of its most important points.

  • @XSpImmaLion
    @XSpImmaLion 6 ปีที่แล้ว +6

    Very interesting stuff... another extra reason for the idea that the more people use TOR, the safer it is. Then again, the most congested it might become.
    I imagine a potential solution for traffic shape analysis would be for client and end node to have constant input without spikes with complete saturation, filling blanks with garbage. But that would also make the whole thing kinda useless in terms of speed.. or extremely complicated to pull. :P And also extremely taxing for every node.

  • @chiragbhatt3662
    @chiragbhatt3662 4 ปีที่แล้ว

    I often find great content videos on this channel ! Guys are technically very rich and great in explaining things easiest way possible - Top man !

    • @chiragbhatt3662
      @chiragbhatt3662 4 ปีที่แล้ว

      Ahh .. just checked and found he`s a researcher (dr.) as I presumed :) respect sir !!

  • @mateuszpiwonski7947
    @mateuszpiwonski7947 5 ปีที่แล้ว +1

    When we're talking about digging into the 'tempo' of messages and de-anonymizing the data- what is the certainty that we're able to establish on those?
    Correct me if I'm wrong but there should be a significant amount of variation resulting from using a lot of nodes, and obviously, the more nodes we use, the more varied our output 'tempo' is going to be. So we have two variables there- the size of the message (which stays the same) and the time interval it takes for the message to arrive at the last link (point B in the video) which is varying depending on many external factors. Also, wouldn't the data be sent over different amount of nodes (and different nodes) every time, which would add to the ambiguity?
    Great video by the way, thanks for making those!

  • @tymscar
    @tymscar 6 ปีที่แล้ว +113

    I love these videos!

  • @wex7t
    @wex7t 4 ปีที่แล้ว +3

    I love your videos, they are very interesting.
    Can we make slow loris attacks anonymously using TOR ? If so, there is still potentially the problem of comparing signals tempo ?

  • @venkateshnambi1576
    @venkateshnambi1576 หลายเดือนก่อน

    This video made my day ! I got to learn a valuable lesson about Tor. Thankyou!

  • @iammaxhailme
    @iammaxhailme 6 ปีที่แล้ว +1477

    ogres have layers

    • @KarjamP
      @KarjamP 6 ปีที่แล้ว

      iammaxhailme
      Why would they have that much skin? Ew.

    • @ryanstewart6834
      @ryanstewart6834 6 ปีที่แล้ว +28

      +KarjamP Shrek Reference...

    • @nice3333333333
      @nice3333333333 6 ปีที่แล้ว +22

      Trolls have even more layers, gotta stay anonymous.

    • @surlyogre1476
      @surlyogre1476 6 ปีที่แล้ว +7

      Hey! I resemble that remark!

    • @KarjamP
      @KarjamP 6 ปีที่แล้ว

      Ryan Stewart
      Perhaps you should know, I was actually joking.

  • @TheXenoEnder
    @TheXenoEnder 6 ปีที่แล้ว +8

    Great video, but I think you should probably have mentioned hidden services (or otherwise servers running nodes themselves, such that the B node is the same as the server you're communicating with). Combining that with information about running one's own node (such that the user controls node A) gives a more complete picture of optimal Onion Routing conditions (though, again, not entirely without potential for pattern analysis). Lastly, I think some people in the comments appear to be treating "being an exit node" like a thing one chooses, so this is just to say that a node is a node and routes, while they can be controlled manually by the sender, generally are generated and the exit node has nothing to do with choosing which node will be the exit (or entrance, for that matter). Love your work, keep it up!

  • @Faisal_Abid
    @Faisal_Abid 6 ปีที่แล้ว +52

    Great video!

  • @neilmurgatroyd3197
    @neilmurgatroyd3197 2 ปีที่แล้ว

    Thanks. I don't know why but I find the way Dr Mike Pound talks about subjects to be very engaging.
    The pace, content and level is exactly at the level I like
    'Great Job!' As the Americans would say. As a Brit it's more of a 'he's OK to be fair, end of'
    (great job, ignore the brit thing)

  • @kevinjones5296
    @kevinjones5296 5 ปีที่แล้ว

    This man is my favorite on this channel I wish he was my personal teacher things would be much simpler.

  • @The_Nova_Glow
    @The_Nova_Glow 6 ปีที่แล้ว +3

    this guy and the animations are amazing!!

  • @cuulcars
    @cuulcars 6 ปีที่แล้ว +4

    I wish Mike would have discussed the differences between exiting the TOR network into the clearnet and accessing hidden services (the packets never exit the TOR network).

  • @fnvtyjkusg
    @fnvtyjkusg 6 ปีที่แล้ว

    Thanks for releasing this just before your exam

  • @Agent_Orange_Peel
    @Agent_Orange_Peel 6 ปีที่แล้ว

    Best computerphile video I have seen yet.

  • @zedthemartian2355
    @zedthemartian2355 2 ปีที่แล้ว +4

    Such a bad choice of an onion drawing, cant stop seeing it. Love the channel!

  • @apr0l
    @apr0l 2 ปีที่แล้ว +3

    Why not add random delays to solve the deanonymizing problem? Would it be too costly for servers and make the connection too slow?

  • @ericsbuds
    @ericsbuds 6 ปีที่แล้ว

    Oh man these are my favorite. Thanks Dr. Pound!

  • @arcmchair_roboticist
    @arcmchair_roboticist 3 ปีที่แล้ว +2

    So do they do things like delay the packets by some random amount for each packet to make the tempo random, or to buffer them so that it waits for a quarter second collecting packets and then evenly distributes them in a random over the next quarter second, or to add random nonsense packets in at every point to make it more difficult to count packets?

  • @memesouls8653
    @memesouls8653 ปีที่แล้ว +7

    This guy definitely put all of his skill points into speech.

    • @kbrizy7490
      @kbrizy7490 7 หลายเดือนก่อน

      Agree 100% - impressive communicator.

  • @forrestvalleyfarmer
    @forrestvalleyfarmer 6 ปีที่แล้ว +49

    Wouldn't it be possible to use random network delay to prevent what you defined as frequency deanonymization? Lets say you have an average delay time on 1 second, and then each message gets randomly delayed from 0 to 2 seconds on each of the nodes. Yes, this would slow down the speed, but would greater improve the anonymity.

    • @liuxsas123
      @liuxsas123 6 ปีที่แล้ว +8

      Yeah, I had the same idea. But there is probably more flaws in this system. If it was this simple to make it fully anonymous, thay would probably have already done that :D Maybe generating random delay lenghts is the problem, since pseudorandom numbers can be cracked down pretty easily.

    • @katrinal353
      @katrinal353 6 ปีที่แล้ว +19

      While adding a small random delay can help with obscurity, it's not really worth it. The delays can still be taken into account and detected by frequency analysis of large amounts of traffic. This solution is not really worth the loss of speed in communications.
      The only way to solve this, would be through completely asynchronous batched data transfers, but that's impossible to manage without introducing a whole bunch of vulnerabilities, or redesigning the whole technique.

    • @katrinal353
      @katrinal353 6 ปีที่แล้ว +3

      +Michael Incog That's not really true. Your computer probably has thousands of threads sleeping right now. Delays don't have to be active livelocks. Even "single-threaded" applications on frameworks like node.js, can deal with that. Event-driven wake ups, can deal with that.
      Even so, a delay is far less expensive than actually processing/decrypting data, and since you add an average delay over the whole network, you essentially replace some actual processing with a delay, in function of time, which should even lower the network load.

    • @forrestvalleyfarmer
      @forrestvalleyfarmer 6 ปีที่แล้ว +3

      Could you explain further how one can analyse the frequency of a random delay? I dont see how we can know where data comes from if we dont know the mean-time of which data is being sent between each requesting computer and responding server.

    • @liuxsas123
      @liuxsas123 6 ปีที่แล้ว +1

      Gjert Ingar Gjersund I am not sure, but i think this has to do with generating trully random numbers. Computers cant do that. They would generate pseudorandom intervals. Which maybe would make it hard to detect the connection for a human, but for a computer it would not actually make much of a challange because it could quickly figure out how the numbers were generated and still see the connection.

  • @wildjezus2934
    @wildjezus2934 6 ปีที่แล้ว +1

    Very cool guy. Its always nice to hear a lection from him. Next video could be how do people find you on a tor via flash or ads or cookies and so on.

  • @rlathbury
    @rlathbury 4 ปีที่แล้ว

    Bravo. This man is the most gifted, lucid explainer of computer matters whom I have come upon. His diagrams, articulateness, and sense of organization are superior. He is commandingly competent. Two small complaints: (1) he speaks too quickly; the pace of his (British) English would be more suited to a neophyte audience were he to slow down, and (2) his occasional jokes sometimes come at crucial moments and so detract from the clarity. He does employ jargon that sometimes I, at any rate, have to look up, when I can catch it (the speed issue again), but that nay be on me, not him.

  • @benjaminbrady2385
    @benjaminbrady2385 6 ปีที่แล้ว +43

    5:16 what an enthusiastic server

  • @lels3618
    @lels3618 6 ปีที่แล้ว +16

    Hey great video. You talk a lot about the key excange. But how does this work? Cant the Routers see your IP when you pass them the key directly? Or if you send it trought the Routers you've already connected with, cant the see the Key for the next Router?

    • @Keex11
      @Keex11 6 ปีที่แล้ว +5

      Don't know how it's implemented but you can do the key exchange with node 2 over the connection of node 1, and with node 3 over node 2 and 1. Just like the final connection but with less nodes. This is what you would do if you browse e.g. Facebook over Tor. You make a key exchange with Facebook over all the Tor nodes.

    • @michaelpound9891
      @michaelpound9891 6 ปีที่แล้ว +37

      Hi, it works using a process called diffie-hellman. It's a bit complex for a youtube comment, but you basically create half the key, and the router creates the other half. You send a public part of your half to them, and they send one back, then you both calculate the key in secret. To add to this, you also encrypt the bit you're sending using the public key of the router in question. So each intermediate router sends on the key exchange, without actually being able to see what's going on. As Keex11 says, you don't ever send keys directly, you send them via already established connections.

    • @robertkelleher1850
      @robertkelleher1850 2 ปีที่แล้ว

      @@michaelpound9891 Yes, but how do the intermediate routers know where to send the messages?

  • @carlosbriceno9871
    @carlosbriceno9871 ปีที่แล้ว +1

    Simply amazing! This is exactly how you should explain technology. Thank you.

  • @frailas
    @frailas 5 ปีที่แล้ว

    I think that you can partially solve the problem, with someone controlling A and B (front and exit node) and measuring intervals between front and exit nodes, but you need to sacrifice performance...
    The idea is that you could delay each message by some random amount. Construct message with variable length of hops between you and server. E.g. exchange some keys from K1,K2,K3,K4,K5,
    construct 1st message K1->K5->K2->server, 2nd message K3->K2->server, 3rd message K4->K1->K4->K2->server, etc... because no node knows full path, and each message will have different amount of hops, all messages will arrive at different time ;) that's the general idea.
    In theses cases when server doesn't have "sticky" sessions, you can change exit not for each message!

  • @MultiAblee
    @MultiAblee 6 ปีที่แล้ว +5

    Couldnt you theoretically have the messages passed through some random functions on every note so that their sendtime differs in a intervall of 0.1 to 1 second or something? Would that not solve the correlation possability ?

    • @Betacak3
      @Betacak3 6 ปีที่แล้ว +3

      It would maybe make that a little better, but it would make latency and throughput a lot worse.

    • @mduckernz
      @mduckernz 6 ปีที่แล้ว +1

      MultiAblee Yes. There are systems like that. They are often called tumblers or mailboxes, or just stochastic routers.

    • @victorburaglio8543
      @victorburaglio8543 4 ปีที่แล้ว

      Also a kind of similar question (2 years later I know), would it be possible to simulate the traffic on an end-node (ie. send other packets to other websites that are not reverted back to you) ?

  • @010timeboy27
    @010timeboy27 4 ปีที่แล้ว +6

    How does the client side share k2 and k3 without creating a connection with those machines?

    • @supercoolgames8218
      @supercoolgames8218 4 ปีที่แล้ว

      Did you ever find out? I thought the same thing.

    • @010timeboy27
      @010timeboy27 4 ปีที่แล้ว

      @@supercoolgames8218 I just re-watched it. I think the client shares the keys using public/private key encryption. He explains at 3:46 .

    • @supercoolgames8218
      @supercoolgames8218 4 ปีที่แล้ว +1

      But to share the keys doesnt that mean a direct connection with those nodes?

  • @hanswurst2503
    @hanswurst2503 6 ปีที่แล้ว

    i love when mike explains things

  • @jkg466
    @jkg466 ปีที่แล้ว

    I like this guy. I just subscribed. He explains things well like a friend who wants to teach you.

  • @runforitman
    @runforitman 2 ปีที่แล้ว +11

    wouldn't a downside to being a node be that you'd get into trouble for the sites that other people went to?
    because it'll look like your computer went to those sites when it was someone on the other side of the world who actually requested it

    • @user-tt1zq7ws2e
      @user-tt1zq7ws2e 2 ปีที่แล้ว +4

      Im no expert but if you’re a node, then dont you automatically not have any affiliation with the client? It looks like a client can’t be a node for it’s own message so any node in that chain is innocent for that particular message

    • @SpeedsGamer
      @SpeedsGamer 2 ปีที่แล้ว +1

      That's exactly why you can't be pinpointed. It could be anyone and the secret services can't simply hunt you without knowing for sure you really did it

  • @hnasr
    @hnasr 4 ปีที่แล้ว +5

    3:30 if I as a client negotiated a symmetric key with each of the Tor Nodes that means each Tor node knows my IP address correct?

    • @macdjord
      @macdjord 4 ปีที่แล้ว +6

      No, because when you're sending the message to Node B to negotiate the key, you send it through Node A.

    • @hnasr
      @hnasr 4 ปีที่แล้ว +3

      Jordan Macdonald thanks Jordan! Make sense, its like the Entry node acts like a proxy. And thats ok because the entry node already knows the client..

    • @exactzero
      @exactzero 3 ปีที่แล้ว

      @@hnasr Yup, but a proxy that doesn't know your request.

  • @MartinMarchev
    @MartinMarchev ปีที่แล้ว +1

    Great videos! Very informative and well explained. Any chance you would make a similar video for I2P?

  • @ramnaraian8188
    @ramnaraian8188 6 ปีที่แล้ว +1

    Nice explanation..But one question I have, I am doing reverse engineering on TOR network traffic. Can we distinguish between a relay node (B,C) and actual sender (A). Sender may be a relay node. Any byte pattern for this? Or any logic on the basis of RX and TX?

  • @CarrionMaw
    @CarrionMaw 6 ปีที่แล้ว +340

    Uh I think you'll find that TOR actually stands for The Ogre Router, because ogres have layers, like cakes.

    • @JollyJuiice
      @JollyJuiice 5 ปีที่แล้ว +35

      OGRES
      are _NOT_
      LIKE *CAKES*

    • @Blankroundz
      @Blankroundz 5 ปีที่แล้ว +3

      This comment needs more likes

    • @RenatoMarinoHenz
      @RenatoMarinoHenz 3 ปีที่แล้ว +1

      Although these routers do not stink, or when you leave 'em out in the sun, they get all brown, start sproutin’ little white hairs., but I'd say they can make you cry.

    • @universenerd3627
      @universenerd3627 3 ปีที่แล้ว +4

      Women: uhh i bet he's cheating on me
      Men: SHREEEEEEEEK

  • @ShadyPossum
    @ShadyPossum 6 ปีที่แล้ว +74

    What are your thoughts on the US government claiming that Tor is essentially useless and they can spy on Tor traffic? Do you believe its entirely based on sniffing the beginning node and end node?

    • @michaelpound9891
      @michaelpound9891 6 ปีที่แล้ว +127

      When Edward Snowden leaked the NSA files back in 2013, one of them was a slideshow called "Tor Stinks", in short it was a classified NSA talk about how challenging tor is to break, and how much they hate it. World governments definitely operate tor relays, but at the moment I don't think (we can't know) they have access to some flaw in the protocol. They have in the past, they funded researchers from CMU to perform lot of traffic analysis via compromised relays and a flaw in the protocol, Silk Road 2.0 was among the sites taken down in that attack. You can read more here:
      blog.torproject.org/blog/tor-security-advisory-relay-early-traffic-confirmation-attack
      Do they still have access? Difficult to say, but I would guess they don't right now.

    • @Lysergesaure1
      @Lysergesaure1 6 ปีที่แล้ว +19

      Tor is still vulnerable to deanonymizing attacks, ie user error with badly configured browsers/proxies. This is why it is so recommended to use the Tor browser, as it will do its best to keep yourself from those.

    • @DiapaYY
      @DiapaYY 6 ปีที่แล้ว +18

      The tor nodes are publically listed so you might even be more safe to actually buy drugs or stuff if you are an exit node.

    • @ShadyPossum
      @ShadyPossum 6 ปีที่แล้ว +8

      How would the FBI know that theyre an exit node, and not just another along the way?

    • @DiapaYY
      @DiapaYY 6 ปีที่แล้ว +1

      ShadyPossum I think it's public

  • @oaklyfoundation
    @oaklyfoundation 6 ปีที่แล้ว

    best host ever I absolutely love him doesn't matter what he is talking about its always interesting. .

  • @a.r4hm4n
    @a.r4hm4n ปีที่แล้ว

    there's magic in michael pound and tom scott. literally magic!!

  • @srenh-p3798
    @srenh-p3798 4 ปีที่แล้ว +71

    I would not want to be the last guy forwarding a request to some dodgy website.

    • @danielhricmail
      @danielhricmail 4 ปีที่แล้ว +4

      I know right, seems insecure. kinda beating the whole meaning of it.

    • @Xfacehack
      @Xfacehack 4 ปีที่แล้ว +4

      If you got nothing to hide :pPPPPpPPPpPp

    • @jdotmay
      @jdotmay 4 ปีที่แล้ว +14

      Tor gives you the option to manually disable being a bridge, or an entrance exit node.

    • @pilotavery
      @pilotavery 4 ปีที่แล้ว +11

      If someone sets up a bridge, they can prove to everyone they have a bridge and can not be held responsible

    • @kukuricapica
      @kukuricapica 4 ปีที่แล้ว +26

      I may sound like a devils advocate here but you dont host anything so it shouldn't matter. If I send something ilegal via mail you dont hold post office responsible. Same with CP. I mean those people should seek help but people who host those websites or even making a content are the problem.

  • @MateHegyhati
    @MateHegyhati 6 ปีที่แล้ว +7

    I love these videos, but one day I'll make a compilation of Him putting His shirt straight on His left shoulder (with Yakety sax of course) :-D

  • @caseyabbott7170
    @caseyabbott7170 ปีที่แล้ว

    I just got done watching the Silk Road movie and wanted to know more about this. Not for nefarious reasons. It’s just interesting. This was a great video thanks.

  • @TalesGrimm
    @TalesGrimm 5 ปีที่แล้ว +1

    So would it be possible to setup a cabinet of exit nodes and harvest urls from the packets, essentially mapping the tor network and making .onion directories easier to find?

  • @braddles
    @braddles 4 ปีที่แล้ว +4

    That picture in the thumbnail might not of been the best choice.

  • @lovell8983
    @lovell8983 2 ปีที่แล้ว +6

    We gonna have a word about the video thumbnail

  • @bradkaral1188
    @bradkaral1188 2 หลายเดือนก่อน

    Question: If you had access to point A and point B, would it be possible to compare the message that came out of point A with the message that came out of point B to figure out what was different/had changed? Wouldn't knowing what had changed/was different help you figure out more about the data?

  • @stannisbarracuda5693
    @stannisbarracuda5693 3 ปีที่แล้ว +1

    this guy is so interesting to listen to , captivating is the word

  • @Bormeir
    @Bormeir 6 ปีที่แล้ว +21

    If I set up a TOR node, am I responsible for all the traffic that goes through it? Could you be arrested if some of the traffic was illegal?

    • @katrinal353
      @katrinal353 6 ปีที่แล้ว +43

      No. That would mean all ISPs in the world would also be responsible for all illegal stuff in the internet. Usually nothing is illegal unless it involves you, acquiring or redistributing illegal information, or using illegal services.

    • @MegtaBubble
      @MegtaBubble 6 ปีที่แล้ว +9

      Unless you are an exit node, not really.

    • @d3line
      @d3line 6 ปีที่แล้ว +14

      Unless you're a math teacher in Russia and tor exit node.

    • @mduckernz
      @mduckernz 6 ปีที่แล้ว +7

      Ronan Only if you're the exit node, really, because they're the only ones that know where traffic is going to.

    • @mrdecodeofficial669
      @mrdecodeofficial669 6 ปีที่แล้ว +4

      If you setup an END node then yes, if middle then no.

  • @KX36
    @KX36 6 ปีที่แล้ว +52

    I always thought tor stood for "the onion ring".
    mmm... onion rings...

    • @34cvc
      @34cvc 4 ปีที่แล้ว +6

      Thank you homer

    • @CZghost
      @CZghost 3 ปีที่แล้ว

      @@34cvc That's exactly what I thought of right now :D :D

  • @zer02626
    @zer02626 3 ปีที่แล้ว +1

    Wonderful intermediate overview. Would recommend.

  • @exm3266
    @exm3266 5 ปีที่แล้ว

    Would it _help_ throw off correlations between "the two points" by simultaneously talking to several end servers at once? As in, even if you're really just looking at "Facebook", you also send requests to "Google" and "Twitter" at the same time. I know that it'd probably still be possible to pick out some patterns, but would it be a worthwhile precaution?

  • @purposespecific670
    @purposespecific670 5 ปีที่แล้ว +3

    But if your operating system is compromised as most are by default, tor is useless right? No?

    • @alyamanmaasarani7832
      @alyamanmaasarani7832 4 ปีที่แล้ว

      Linux exists for that matter. It's open source and verified.

    • @igorthelight
      @igorthelight 4 ปีที่แล้ว

      True.
      That's why you shall use Tails OS :-)

  • @BestFleetAdmiral
    @BestFleetAdmiral 6 ปีที่แล้ว +56

    8:53
    "We've got a situation here where no one really knows anything about what's going on at all"
    gee sounds like my life
    and politics
    and lots of things really

    • @forestriver437
      @forestriver437 4 ปีที่แล้ว

      no one needs to know what's going on in your but you

  • @raniem4368
    @raniem4368 20 วันที่ผ่านมา

    Ive been wondering for a while how the keys are exchanged.
    Asuming a compromised Entry Guard how would you prevent the entry guard from simply rerouting to its own exit node? and therefore get all the information?

  • @7887luca
    @7887luca 5 ปีที่แล้ว +2

    @Computerphile quick question at 5:43 you say the middle node doesnt need to know who you are. if this is the case how would you exchange keys with it??

    • @randomnobody660
      @randomnobody660 4 ปีที่แล้ว

      you exchange keys with it thru the previous node, which you exchange with thru the previous node etc?

  • @FredoCorleone
    @FredoCorleone 5 ปีที่แล้ว +6

    What if the majority of the nodes is controlled by NSA?

    • @josephbargo5024
      @josephbargo5024 4 ปีที่แล้ว +1

      The game is rigged? Lol
      All the nodes are public knowledge, the only way for the nsa to use this information is to knock out all the servers except 3, then they will control k1 k2 k3. I think they’ve only done that once.

  • @qm3ster
    @qm3ster 3 ปีที่แล้ว +6

    You'll probably need to reupload this.
    There is a serious flaw at 4:09, where no image of Shrek appears when he says "in layers" and raises his eyebrows.

  • @realGBx64
    @realGBx64 6 ปีที่แล้ว +1

    what I don't get is how exactly do you get the keys for encrypting the message for the 2nd and 3rd nodes without exposing yourself or the keys to the other nodes / eavesdroppers?

  • @utkarsh12
    @utkarsh12 2 ปีที่แล้ว

    Tor is the opposite of non-repudiation. The origin/sender of a message can't be verified because the message goes through several routers randomly. It's also encrypted in transit until the last router before the destination

  • @iip
    @iip 2 ปีที่แล้ว +8

    Gabe from Office seems to have taken a keen interest in tech! Good for Sabre for promoting cross team functions

    • @USN1985dos
      @USN1985dos 2 ปีที่แล้ว +1

      Looks nothing like Gabe though.

    • @xahst
      @xahst หลายเดือนก่อน

      @@USN1985dos I agree, not even close. The haircut is the only thing that resembles Gabe.
      I think Jared Dunn in 'Silicon Valley' does look like Gabe though

  • @rohitpal7739
    @rohitpal7739 2 ปีที่แล้ว +4

    Damn this thumbnail

  • @xxPow3rslave
    @xxPow3rslave 4 ปีที่แล้ว

    I really appreciate your videos man, truly

  • @yitzchakissachirschberg7670
    @yitzchakissachirschberg7670 6 ปีที่แล้ว +1

    This video was great! I feel bad this channel doesn't have the same activity that it once had....

  • @ThePapabear2012
    @ThePapabear2012 4 ปีที่แล้ว +6

    We have a situation where nobody knows what is going on at all also. We call it Congress.

  • @lohphat
    @lohphat 6 ปีที่แล้ว +8

    What prevents a massive DDoS attack from taking out TOR routing nodes?

    • @SnuggleMe
      @SnuggleMe 6 ปีที่แล้ว +2

      Not a lot. The node will just become unresponsive and a new chain of connections will be made instead because that routing node is not responsive.

    • @michaelpound9891
      @michaelpound9891 6 ปีที่แล้ว +11

      Numbers, that's about it. There are 7000+ relays, that's a challenging thing to DOS. This is one of the reasons TOR are always looking for people to volunteer as relays.
      metrics.torproject.org/networksize.html

    • @lohphat
      @lohphat 6 ปีที่แล้ว +2

      There is route convergence and re-routing delays. All you need to do is DDoS enough then move on to the next set of routers.
      Botnets can range into the 100s of thousands of nodes so taking out 7000 TOR nodes is not out the realm of possibility.

    • @trevor2453
      @trevor2453 6 ปีที่แล้ว +2

      It's not really worth it to do this unless you're some nation state that's trying to reduce the number of nodes to ones that they're running. An attack of this scale would be immediately obvious. A private individual wouldn't have that same incentive, so they'd be better off using that botnet to extort websites for money or sell their services to other individuals.

    • @lohphat
      @lohphat 6 ปีที่แล้ว

      Nation states do have incentives -- and they do it. With increasing frequency.

  • @Mrkostaszx
    @Mrkostaszx 6 ปีที่แล้ว +2

    4:52 is this camera broken? You can see some inconsistencies that follow everytime you switch to that one

    • @exactzero
      @exactzero 3 ปีที่แล้ว

      Its angle was manipulated with a software to make it look topside.

  • @newbreaker0403
    @newbreaker0403 3 ปีที่แล้ว

    Super interesting subject and well explained. Thank you.