Public key cryptography - Diffie-Hellman Key Exchange (full version)

Поделиться
HTML-код
  • Опубликовано: 28 ноя 2024

Комментарии • 627

  • @dancarlson3045
    @dancarlson3045 8 лет назад +567

    The color analogy is amazing. Great work simplifying a difficult and important concept.

    • @human.earthling
      @human.earthling 7 лет назад +14

      Yes! This is the first time I have understood this concept due to the color analogy.

    • @1986xuan
      @1986xuan 7 лет назад +6

      Analogies are so powerful

    • @jacquelinecahill4836
      @jacquelinecahill4836 6 лет назад +2

      I really enjoyed this. Thanks for breaking it down.

    • @Percavius
      @Percavius 5 лет назад +2

      It's good in that it's simple, however unlike the discreet logarithm problem, you would be able to make a good estimate of the secret colour based on the starting colour and one of the mixed colours. For example if Eve received the starting colour yellow, and a mixed colour green, she can infer that the secret colour mixed in must be some shade of blue, which makes her search much easier. Recognizing this threw me off a bit at first.

    • @jsonkody
      @jsonkody 5 лет назад

      The concept is simple and genius.

  • @ChristopherCricketWallace
    @ChristopherCricketWallace 8 лет назад +301

    by far the best explanation of public key encryption EVER.

    • @ArtOfTheProblem
      @ArtOfTheProblem  3 года назад +5

      thanks for watching! stick around

    • @lennonmclean
      @lennonmclean 3 года назад +5

      unfortunately, public key is completely different than key exchange. public key requires different keys to encrypt and decrypt, so there's no need for diffie hellman to agree on a secret key.

    • @ArtOfTheProblem
      @ArtOfTheProblem  Год назад

      made another vid: ruclips.net/video/OFS90-FX6pg/видео.html

  • @wilkmasterflex
    @wilkmasterflex 12 лет назад +77

    A great illustration. Diffie-Hellman has a well-known, fun vulnerability. Spoilers: Eve, knowledgeable herself on color theory, intercepts messages between Alice and Bob not letting their messages go directly to them. Instead she creates a color of her own. Mixing it twice with each of Alice and Bob's colors she creates two keys. She can now read Bob's message, re-encrypt, and send to Alice and pose as Bob. Same goes in the other direction. If only Alice could trust Bob's color comes from him.

    • @Germanywithtripti101
      @Germanywithtripti101 4 года назад +4

      an underestimatted comment

    • @Arkalius80
      @Arkalius80 3 года назад +6

      This is why you typically use a digital signing algorithm like DSA to authenticate the messages from each party.

    • @lennonmclean
      @lennonmclean 3 года назад +6

      if only (epic RSA foreshadowing)

    • @alittax
      @alittax 3 года назад +11

      This is called the man-in-the-middle attack.

    • @AnimMouse
      @AnimMouse 3 года назад +2

      Key signing parties!

  • @albertoradice7713
    @albertoradice7713 8 лет назад +17

    This is precisely how mathematical concepts should always be explained. You guys nailed it!

    • @ArtOfTheProblem
      @ArtOfTheProblem  Год назад

      would love your feedback again ruclips.net/video/OFS90-FX6pg/видео.html

  • @satnamo
    @satnamo 8 лет назад +75

    Martin Hellman said:
    The system...has since become known as Diffie-Hellman key exchange.
    While that system was first described in a paper by Diffie and me, it is
    a public key distribution system, a concept developed by Merkle, and
    hence should be called 'Diffie-Hellman-Merkle key exchange'
    if names are to be associated with it. I hope this small pulpit might help in that
    endeavor to recognize Merkle's equal contribution to the invention of
    public key cryptography.

  • @dm8144
    @dm8144 4 года назад +2

    I am typing typing this message in 29/10/2020 and this is one of the best and easiest explanation about public and private key system ever. well done.

  • @AjayPoriya
    @AjayPoriya 8 лет назад +178

    I nominate this video for OSCAR !!

    • @barbell13
      @barbell13 7 лет назад +10

      Yeah Oscar would definitely like this video

    • @alice_in_wonderland42
      @alice_in_wonderland42 6 лет назад

      Computerphille uses the same technique.

  • @Nefariouspat
    @Nefariouspat 7 лет назад +3

    I've watched a few videos on public key cryptography, but never really understood how it worked until I heard this colour analogy. Absolutely phenomenal video!

  • @notmychairnotmyproblem
    @notmychairnotmyproblem 4 года назад

    THIS IS THE EASIEST EXPLANATION OF MODULAR MATH I'VE EVER SEEN
    Why didn't I have this channel 10 years ago when I was in college??!!

  • @jasoncorrigan9937
    @jasoncorrigan9937 6 лет назад +7

    My background in advanced math concepts is somewhat limited, and so it's always been difficult for me to intuitively grasp how DH worked. After years of struggling, this is the one video that really drove the point home for me. Thank you!

    • @oliverbeck6839
      @oliverbeck6839 5 лет назад +1

      dafuq YEARS? i grasped it in about 15 minutes lol

  • @199NickYT
    @199NickYT 11 лет назад +47

    "While Eve is stuck grinding away at the Discrete Logarithm Problem"
    Hahaha that's definitely the best part right there.

  • @davidcalderon6062
    @davidcalderon6062 8 лет назад +13

    this is the best explanation I've seen on anything.

  • @supernanotech1
    @supernanotech1 4 года назад +1

    Time hardened Encryption just like safe hardening how much time is needed to open it. I love this, this is the best way to explain encryption ever. I love how they have IBM sage running for this video also. Amazing

  • @SomeOne-tb2sd
    @SomeOne-tb2sd 3 года назад +1

    One the best and simplistic explanation of what appears to be a complex algorithmic process. Thank you.

  • @AgglomeratiProduzioni
    @AgglomeratiProduzioni 7 лет назад

    For a few months, my teacher didn't manage to explain this to a class.
    In 8 minutes, this video can explain it to every dummy.
    If it's simple, keep it simple.

  • @AkashVermaNITian
    @AkashVermaNITian 9 лет назад +13

    Colors made it wonderful to comprehend... really impressing!

    • @MEANASSJAMSTER
      @MEANASSJAMSTER 9 лет назад

      Akash Verma now. I think that I understand how my Gizmo (for online banking) from HSBC works........

    • @Appoxo
      @Appoxo 3 года назад

      I actually needed the numbers to kinda grasp the concept...

  • @5mwa
    @5mwa 11 лет назад +1

    Good explanation, better than those explanations given by the professors in lectures...
    My tutors can explain this to me for 1 day and I still don't get it.
    Now I find this concept extremely simple.

  • @georgiepentch
    @georgiepentch 4 года назад +3

    Oh my god, your content would fit SO WELL into a podcast format! It's something we need!

    • @ArtOfTheProblem
      @ArtOfTheProblem  4 года назад +2

      Funny you say that, i'm working on developing a podcast right now. I was town between just using the audio from these or doing a new conversational approach. can you listen to the demo I posted last week and give feedback? ruclips.net/video/1w4Y_sCDeCE/видео.html

    • @georgiepentch
      @georgiepentch 4 года назад

      @@ArtOfTheProblem wow sorry, I don't know why I just got this notification now, but I did listen to the demo and I loved it! Keep it up :)

  • @laurv8370
    @laurv8370 6 лет назад +8

    Very nice! Hat off! One of the best explanations I have seen, and nice put into the story. however, when you swap those powers, you should use parenthesis, that is because generally, powering is not commutative. That is, a^b^c is not equal to a^c^b, modular or non modular powering. Powering is right-associative. But (a^b)^c=a^b*a^b*...a^b (c times) which is a^(b*c)=a^(c*b)=a*a*a*a.... (b*c times), which is (a^c)^b always, modular or not. This is due to the commutativity of the _multiplication_ operation. Not the powers.

  • @KevinElamMusic
    @KevinElamMusic 4 года назад +17

    Excellent video! My only complaint is the explanation of "how Alice did the same calculation as Bob" from 7:27 to about 7:40. Starting at 7:27, we see that "12 = 3^13mod17". Then conveniently, right at 7:34, when that figure is substituted into Alice's original expression, the "mod 17" DISAPPEARS and the 12 is simply replaced by "3^13". Although this IS mathematically correct, it REQUIRES a rather advanced principle of modular arithmetic: namely, that [(a*mod c)^ b]*mod c = (a^b)mod c. (In the example from the video, a = 3^13, b is 15, and c is 17). So, you effectively CAN simply remove the extra "mod c" term, but the video glosses over this difficult but crucial step. My sister and I just spent 2 hours figuring out the proof for this principle. If anyone's interested I can share a photo of the completed proof. (It can be found online also).

  • @mmuarc
    @mmuarc 4 года назад

    Best explanation you can find on the internet about this. The color analogy is Godlike

  • @fireflies15
    @fireflies15 2 года назад

    "without letting Eve, who's always listening.."
    brilliant video, amazing explanation
    thank you!

  • @johnmacward
    @johnmacward 9 лет назад

    Brilliant explanation about key exchange for those of you interested in how your data is encrypted over the web. Ok, when the maths comes you need to pay attention but all in all the best explanation I've found.

  • @appapurapu
    @appapurapu 8 лет назад +5

    Brilliant trick behind Diffie Hellman explanation is very clear.
    Thanks a Lot.

  • @Konraden
    @Konraden 12 лет назад

    I'm reading wiki trying to understand how public-key encryption works (I'm told its better than symmetrical encryption). I remember someone tried to explain this before using colors, so a quick search--and I find your video. This is a great video.

  • @kanaverum
    @kanaverum 7 лет назад

    Perhaps the best explanation of private key exchange on the internet. Thanks very much for this video!

  • @wreilly09
    @wreilly09 2 года назад

    THIS DID IT!! You helped me understand a few points that, in my opinion, we’re not pearly presented in other videos. Thank you very much.

  • @valor36az
    @valor36az 5 лет назад +5

    I don’t know what your background is just amazing explanation of concepts

    • @ArtOfTheProblem
      @ArtOfTheProblem  5 лет назад +3

      I did a degree in CS and Engineering however I've always enjoyed explaining things. thanks for the feedback

  • @mfratto
    @mfratto 8 лет назад +3

    That's called magic math. Great video. Very helpful. Now to watch the series.

  • @skidude9800
    @skidude9800 5 лет назад

    Single best explanation on any cryptography concept I've seen.

  • @mort8568
    @mort8568 4 года назад

    I'm not even a math guy or even like numbers that much but every once in a while I come back to this video purely because of how entertaining it is

  • @mash0000
    @mash0000 9 лет назад

    Use of mixing colors as an analogy to explain the DH concept was brilliant. I know DH concept well, but never thought of the color analogy. Good job!

  • @jon_hodl
    @jon_hodl Год назад

    Still one of the absolute best videos for explaining asymmetric key pair encryption

  • @earavichandran
    @earavichandran 5 лет назад +1

    Now i understand clearly about diffe Hellman method. Lovely and lively demo video. Thanks for making this wonderful video.

    • @ArtOfTheProblem
      @ArtOfTheProblem  5 лет назад +1

      thanks please share and stick around for more content.

    • @earavichandran
      @earavichandran 5 лет назад

      @@ArtOfTheProblem yes.thanks for your valuable reply.

  • @FyberOptic
    @FyberOptic 12 лет назад +2

    Great video, you described it in a perfect way to understand. Though I'm not sure if it was clear for everyone that this was merely for calculating a mutual key to use with a cipher, and not really for actually communicating information itself.

  • @exdunn
    @exdunn 8 лет назад

    I learned more from this video than 5 weeks worth of lecturing in my university class.

  • @xetronchan1059
    @xetronchan1059 6 лет назад

    Most amazing and simple and clean explanation of Diffie-Hellman algorithm I've came across. Great!!!

  • @scienceblossom6197
    @scienceblossom6197 6 лет назад

    Can't thank you enough. Awesome video. I wish you also explained how the digital signature works in order to avoid Eve pretending to be either Bob or Alice.

  • @mipmap24
    @mipmap24 5 лет назад

    Videos like this are always remind me why I am fascinated about the cybersecurity field! This is a fantastic video!

  • @KILO993
    @KILO993 7 лет назад

    I found your video while studying for a technical certification. Very well done. Thank you :D

  • @CarlitoProductions
    @CarlitoProductions 5 лет назад +1

    if this was 2 hours, i'd still watch it. awesome explanation

  • @IgorAherne
    @IgorAherne 8 лет назад +6

    This helped me understand it:
    Imagine Bob and Allice want to teleport to some secret planet without Eve joining them.
    1) *Neither Alice nor Bob have a planet in mind where they would like to meet*. They want to use their own piece of puzzle to mutually arrive at the same planet. Depending on which private keys they've chosen initially the final planet will be in the very different locations of universe.
    2) They publicly pick which galaxy they want to be in
    3) They can pick any number they want, scramble it with the publicly known galaxy's name, and send it over to each other.
    4) now each one has the scrambled piece of another person. Both pieces were scrambled with the same galaxy.
    5) scrambling Allice's piece with the scrambled code received from Bob will teleport her to planet XYZ.
    6) Bob will do the same thing with the scrambled code received earlier from Alice, which will teleport him to planet XYZ
    because Eve didn't mix-in any of her information into the exchanged (scrambled) messages and was only listening to their conversation, she is unable to align herself with the planet XYZ where those two went.
    Even if Eve would substitute her message instead of Bob', this would only result Alice and Eve arriving to FZK, without Bob. Alice would see that it's not Bob and no information would be disclosed.

  • @silastube_
    @silastube_ 8 лет назад +3

    If you can't explain it simply, you don't understand it well enough - Albert Einstein.
    You guys are the very definition of the above quote. Subscribed! :)

  • @greg4529
    @greg4529 9 лет назад +2

    Amazing and excellent explanation. Better than my lecturer!

  • @SanjayShelat
    @SanjayShelat 5 лет назад

    This is an excellent explanation of what is usually a difficult issue to understand. Thank you!

  • @roxiogamer
    @roxiogamer 7 лет назад +1

    Oml dude this is exactly what I have been looking for! A visual explanation on how it works ! 10/10

  • @thomaspribitzer5373
    @thomaspribitzer5373 6 лет назад

    that colour analogy was mind blowing. made my day!

  • @ForcefighterX2
    @ForcefighterX2 7 лет назад

    Man you should get a teaching award for this explanation and video! Please become a teacher and make our children happy! :-)

  • @duallancers001
    @duallancers001 8 лет назад

    This was dramatically more helpful than the meager amount of info my book offered on the subject; thank you.

  • @SomdeepSengupta
    @SomdeepSengupta 9 лет назад +76

    LOL ... I came for Diffe Hellman lesson. Got a lesson in Cold war politik.

  • @tonyc3668
    @tonyc3668 2 года назад +1

    Finally a good explanation!
    You are a legend!

    • @ArtOfTheProblem
      @ArtOfTheProblem  2 года назад +1

      glad you found this years later!

    • @tonyc3668
      @tonyc3668 2 года назад

      @@ArtOfTheProblem hahaha! I started life 3 weeks late, so it's definitely a trend for me =)

  • @ROCDUC
    @ROCDUC 11 лет назад

    Your videos are great. They have interesting visuals as well as an easy voice to listen to.

  • @Malmizaur
    @Malmizaur 9 лет назад +143

    wow finaly the video i was looking for with the best explanation and number proving examples
    thank you very much I also checked your chanel realy awesome

    • @ArtOfTheProblem
      @ArtOfTheProblem  9 лет назад +12

      +Malmizaur Episode 3 is up next: ruclips.net/video/4qN9OvvEPr8/видео.html

    • @dangerlibya2010
      @dangerlibya2010 8 лет назад

      you are a magician !

  • @wassollderscheiss33
    @wassollderscheiss33 9 лет назад +18

    I love it! (this is the first thing I publicly love on the internet) :-)

    • @ArtOfTheProblem
      @ArtOfTheProblem  9 лет назад +2

      wassollderscheiss33 That's so awesome. Thanks for the love

  • @davidr.flores2043
    @davidr.flores2043 5 лет назад +3

    Fantastic. I've watched many videos on this same topic; nevertheless, this is The Best one. A million thanks for breaking down difficult concepts in an easy, understandable way. Kudos!

    • @ArtOfTheProblem
      @ArtOfTheProblem  5 лет назад +1

      appreciate the feedback. I always watch every video on a topic before making a new one, so i'm glad you noticed :)

  • @fubonte
    @fubonte 7 лет назад

    why can't i like this video more than once? thank you for an excellent explanation

  • @KautilyaSave
    @KautilyaSave 9 лет назад

    Great video explanation. I loved the demonstration of colors & Mod Calculus Clock rope.

  • @Kevi_N.
    @Kevi_N. 9 лет назад +25

    The trick in a nutshell:
    ( G^*a* mod P )^*b* mod P = G^*a*^*b* mod P = ( G^*b* mod P)^*a* mod P = *key*
    *a* and *b* - private numbers
    *key* - private key (same for both)
    G - public generator
    P - public prime module
    ( G^*a* mod P ) = *A*
    ( G^*b* mod P) = *B*
    *A* and *B* - public numbers
    both sites do:
    *A*^*b* mod P = *B*^*a* mod P = *key*

    • @yc4295
      @yc4295 7 лет назад

      I try to calculate in Javascript but found it not the same, is there any wrong?
      According to the fomula "( G^a mod P )^b mod P = G^a^b mod P",
      Assume G = 3, a = 13, P = 17, b = 15
      Math.pow(Math.pow(3, 13) % 17, 15) % 17 = 10
      Math.pow(Math.pow(3, 13), 15) % 17 = 2
      Math.pow(Math.pow(3, 15) % 17, 13) % 17 = 10
      But 10 is not equal to 2

    • @romanmandeleil
      @romanmandeleil 7 лет назад

      Not clear how A^b = B^a

    • @uid26
      @uid26 6 лет назад

      Paste this into console: Math.pow(Math.pow(3,15)%17, 13)%17
      Result should be 10

  • @MohammadNadeem1
    @MohammadNadeem1 3 года назад

    This is sad to see the subscribers are only 71.3K. I have seen RUclips Channels with Billions of Subscribers and what they are doing is just insulting others in the name of comedy. The way this guy has explained the topic is amazing. I am subscribing to this channel because he won by subscription.

  • @ninumedia
    @ninumedia 9 лет назад

    Thank you for taking the time to record and produce this video! Beautiful explanation.

  • @abeer_nawaf_sul
    @abeer_nawaf_sul 9 лет назад

    very smart.. my teacher also explained it in a wonderful way so it stuck in our minds .. bless him

  • @MalaAnsoo
    @MalaAnsoo 4 года назад

    This is ingenious. Thanks for sharing your knowledge and creativity and helping people to understand so easily.

    • @ArtOfTheProblem
      @ArtOfTheProblem  4 года назад

      appreciate the feedback and comment, stay tuned!

  • @princyep8409
    @princyep8409 7 лет назад +1

    The articulation is excellent! Great read

  • @AlexU2be
    @AlexU2be 11 лет назад

    Thanks! Now it's clear, much better than the previous "short" version. The end there was quite unclear.

  • @ketansanil6046
    @ketansanil6046 10 лет назад

    Algorithm explanation was really simple and effective

  • @IAmSinister5
    @IAmSinister5 7 лет назад

    This is such a good explanation, it makes so much sense logically to me now.

  • @akshaymahale6521
    @akshaymahale6521 9 лет назад

    It was just awesome, u played wid the colors and dat made the algo go so simple to understand !!!

  • @thor0707
    @thor0707 12 лет назад

    Great video and explanations. Wild coincidence at 1:35, he draws a pentagram.

  • @jacquesvanderwesthuizen7287
    @jacquesvanderwesthuizen7287 9 лет назад

    Very well explained. I would recommend this video to anyone studying the arts of encryption/decryption.

  • @jaketarren
    @jaketarren 12 лет назад

    Linked to my cryptography teacher, this is how he should explain this to the class.

  • @MohamedAnsari_H
    @MohamedAnsari_H 8 лет назад +4

    fantastic video, explained something I've wondered for a long time, Thank you.

  • @blackcheetah4550
    @blackcheetah4550 4 года назад

    The best explanation on RUclips .. thank you very very much ❤️❤️

  • @Yashuu96
    @Yashuu96 7 лет назад +1

    This video is so awesome! Had been looking for the answer to this problem.

  • @adityamenon
    @adityamenon 12 лет назад

    Watched it twice - I got it the second time, but I'm still amazed by the fact that it works... what an amazing "hack"!

  • @garykubiak
    @garykubiak 11 месяцев назад +2

    This video explanation is terrific! Best one I've seen!

  • @atom2ueki
    @atom2ueki 10 лет назад

    definitely an awesome video show you how to understand Diffie-hellman key exchange

  • @milo10001
    @milo10001 11 лет назад +1

    That's why modulus is used. When you add two values, like secret + x = y, it's easy to substract and calculate secret = y - x. But when you use mod infinite number of "secret" values produce the same result "y", so you cannot reverse using substraction.

  • @ashutoshnautiyal9625
    @ashutoshnautiyal9625 5 лет назад

    this kind of learning material is actually i m looking for. Great explanation
    .

  • @rschintalapati
    @rschintalapati 9 лет назад +1

    Amazing explanation! The best video about DH Algorithm. Thank you, it really helped me a lot.

  • @godfreytan1001
    @godfreytan1001 7 лет назад

    Deep concept but simply explained. Excellent!

  • @hdlopesrocha
    @hdlopesrocha 2 года назад

    Cryptography 101, the best intro ever!

  • @willydafunkykid
    @willydafunkykid 4 года назад

    Wow respect! I have rarely seen anyone explain anything that well before..

  • @mustafarangwala5657
    @mustafarangwala5657 8 лет назад

    Very nice i was thought about the color logic in my college but i wondered how it would work in numbers.Excellent video.

  • @mortenbrodersen8664
    @mortenbrodersen8664 6 лет назад

    Best explanation I have ever seen. Well done!

  • @hamradiocq
    @hamradiocq 6 лет назад

    First video to really explain it

  • @federicocreti4699
    @federicocreti4699 9 лет назад

    This video is really amazing!!!!!!!! THE COLORS: incredible!!!!!

  • @AmanShaikh-qr5lh
    @AmanShaikh-qr5lh 5 лет назад

    That's a wonderful example!!! Mind blowing 😍😍😍

  • @aymanjabali
    @aymanjabali 4 года назад

    Thank you sooo much for putting time and work into this video.
    you've helped a lot of people around the world

  • @tasoskontos10
    @tasoskontos10 5 лет назад

    Great video! It helped me an insane amount understanding the public key cryptography consept.

  • @h.kkhandelwal9142
    @h.kkhandelwal9142 9 лет назад

    Lovely videos. .... awesome way of descriptions. .... awesome job.... very well done guys

  • @piriyaie
    @piriyaie 7 лет назад

    AWESOME!!!! Please keep on teaching... You did a great job!!!

  • @danyellbaptiste1055
    @danyellbaptiste1055 6 лет назад +3

    EXCELLENT EXPLANATION. Thank You!

  • @houyao2147
    @houyao2147 6 лет назад

    Amazing!!!! This is the best explanation that i've ever seen.

  • @ArKaineRevived
    @ArKaineRevived 12 лет назад

    This going to help me pass my networking exam, thanks!

  • @19RedX91
    @19RedX91 5 лет назад

    The Best Explanation of Diffe Hellman, Thank you Good Sir! Subscribed

  • @orionjonesy226
    @orionjonesy226 9 лет назад

    Thank you for making this video, great explanation and brief history of the concept! Keep on, keeping on!

  • @Derbauer
    @Derbauer 5 лет назад

    Just......beautifully and succinctly explained!

    • @ArtOfTheProblem
      @ArtOfTheProblem  5 лет назад +1

      thanks for the feedback, stay tuned for more

  • @jackdrost7291
    @jackdrost7291 7 лет назад

    Excellent explanation of a hard thing to understand. Thank you! (Cool background music too!)

  • @carlossiverio3570
    @carlossiverio3570 Год назад

    This is the best explanation by far.

  • @wilkmasterflex
    @wilkmasterflex 11 лет назад +1

    Because Eve is in the middle. Alice wants to talk to Bob, however she talks to Eve about how she wants to talk to Bob, first. So Alice negotiates (performs Diffie Hellman) to Bob *through* Eve. Eve just switches out Alice's color with her own, and vice versa. Basically, Alice/Eve have a secure channel, and Eve/Bob have one too. But not Alice/Bob! This lets Eve talk as both Alice and Bob. She can read their messages *and* pass them along so Bob/Alice have no idea they have been compromised.