Public Key Cryptography: RSA Encryption Algorithm

Sdílet
Vložit
  • čas přidán 13. 06. 2024
  • RSA Public Key Encryption Algorithm (cryptography). How & why it works. Introduces Euler's Theorem, Euler's Phi function, prime factorization, modular exponentiation & time complexity.
    Link to factoring graph: www.khanacademy.org/labs/explo...

Komentáře • 1K

  • @thabg007
    @thabg007 Před 9 lety +1790

    my brain is running at 100% CPU usage watching this video

  • @karjedav
    @karjedav Před 6 lety +571

    Possibly the best explanation of anything on the Internet.

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 6 lety +19

      Thanks Aalap, I hope to try and match this video with the upcoming one on P vs. NP

    • @silbersmurber
      @silbersmurber Před 5 lety

      agree

    • @ccg8803
      @ccg8803 Před rokem

      by sure

    • @yassinesafraoui
      @yassinesafraoui Před rokem +1

      Yes, it explains such a complex topic very easily, hands up 🙌

  • @TheSleyths
    @TheSleyths Před 9 lety +352

    God the people that came up with this thing are surely geniuses, can't but feel idiotic after watching this.

    • @Youda00008
      @Youda00008 Před 8 lety +20

      TheSleyths i feel like that all the time during my studies

    • @a1988ditya
      @a1988ditya Před 8 lety +1

      +TheSleyths +1

    • @ezekielchoke2580
      @ezekielchoke2580 Před 6 lety +21

      Constantly feeling like that since I started digging into computer science.

    • @MikhailFederov
      @MikhailFederov Před 6 lety +7

      No kidding. The R in RSA is the same R in CLRS, the most widely-referenced algorithms textbook in existence, which almost all top computer science universities use in their algorithms curriculum.

    • @barrykendrick3146
      @barrykendrick3146 Před 6 lety +8

      +The Sleyths Perhaps... & perhaps not.
      Recall that during WW2 scientists did a test on the atomic bomb underneath Wrigley Field. They dropped a cylinder of radioactive material through more such, with a hole in it. The test was successful: the temperature in the room immediately rose ~20 degrees as predicted, since for a brief period the uranium had reached critical mass. They were "smart."
      Factoring is tough, but let me tell you something: every math problem was unsolved through the very day before it was solved.
      The US Government has made it clear they do not like having public codes which they are not privy to. What do you think would happen if they discovered an easy factoring technique: would they announce it to the World? Or keep it secret so that they could read everyone's messages?!

  • @ashokbanerjee8843
    @ashokbanerjee8843 Před 8 lety +568

    Admirable how simply you worked through explaining it all. Beautifully done, both the delivery and the accompanying graphics and animation

    • @TheResonating
      @TheResonating Před 8 lety

      +Art of the Problem question, at 13:43, which component is the chosen color, and which one is the "complement" color?

    • @arfcommer15
      @arfcommer15 Před 6 lety

      This is an amazingly well laid out video that is far easier to digest than learning it the math way. I wish it was around 20 years ago! I've never seen it's equal that shows the multiple ways - color mixing, private, secret, pre-shared, AND the underlying various encryption schemes/history in such an understandable manner! Well Done!

    • @AkashdeepSingh-qq5fw
      @AkashdeepSingh-qq5fw Před 5 lety

      at 14:14 did you put the value of k randomly. so if i put k=1 or k=5 i will have different values of d(decription key), will i get the same value of m(message)when using the decription key d?

    • @Artaxerxes.
      @Artaxerxes. Před 3 lety

      @@arfcommer15 The "math way" is clearer than this. This video glosses over many important details

  • @pixelbogpixxelbog2090
    @pixelbogpixxelbog2090 Před rokem +16

    10 years old? Wow better quality than most videos today. Well done :)

  • @arrelite
    @arrelite Před 6 lety +238

    should be some law stating that any and all education must be presented in a manner equal to or greater than the quality of this video.

    • @dapdizzy
      @dapdizzy Před 3 lety +3

      This is mind bogglingly powerfully simple! I’m impressed! I’m working on integration with a DSS system right now and also reading a book Introduction to Algoryhms third edition by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein.
      I’m currently reading about Ferma theorem and coming up to the internals of RSA. This video is mighty and impressive! One of the masterpieces of explanation of very complex algorithms is a clear and approachable way. Thank you for it!

    • @morgankuphal3417
      @morgankuphal3417 Před 3 lety +8

      Right! I paid $15,000 a semester and I learned more in 16 minutes and 30 seconds than I did in 13 weeks.

    • @punditgi
      @punditgi Před 3 lety +1

      Best explanation anywhere! Bravo, signore!

    • @iselapuga1856
      @iselapuga1856 Před 2 lety

      @@dapdizzy lol oki

  • @fries6402
    @fries6402 Před 3 měsíci +4

    remember watching these on khan academy when i was in elementary school and am now taking cryptography as an upper level math class in university. these videos were ahead of their time and the explanation is still at a gold standard

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 3 měsíci

      that's SO cool to hear, love this story, thanks for sharing...i remember when I made this video it feels like another era

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 2 měsíci

      New video is up on Evolution of Intelligence czcams.com/video/5EcQ1IcEMFQ/video.html

  • @whatever-ko8qx
    @whatever-ko8qx Před 4 lety +7

    I might be late to the party but thanks a bunch for this awesome explanation! These 17 minutes were more effective than 2 hours of lecture at my university.

  • @SawSkooh
    @SawSkooh Před 10 lety +82

    Outstanding explanation with one frustrating defect: throwing 'k' in with absolutely no mention of how to obtain it. Getting the right k is essential for calculating d.

    • @TheDJay72
      @TheDJay72 Před 7 lety +11

      calculation of k is not entirely necessary. we can take the bezout relation of e and phi(n) as our d value, or use the extended euclidean algorithms to calculate it.

    • @doyoungjung9332
      @doyoungjung9332 Před 6 lety +5

      yes, it's right. d is a multiplicative inverse of e mod phi(n)

    • @nathankagoro9969
      @nathankagoro9969 Před 5 lety +2

      can someone please explain in simple terms how we get k, I need it for a project

    • @Sheeplie33
      @Sheeplie33 Před 4 lety

      (ed - 1) = k*phi(N) for some integer k, we don't really need to know what k is since we just obtain that cluster by doing (ed - 1). (According to a book on this subject).

    • @robneff7084
      @robneff7084 Před 4 lety +1

      Agreed. That was glossed over. As I understand it, because of the repeating nature of the mod function, k can be anything you want, just to add a bit of randomness into the key.
      Hopefully I can post a link to another video here, as choosing d and e is better explained here, IMO: czcams.com/video/oOcTVTpUsPQ/video.html

  • @charlesgerard5721
    @charlesgerard5721 Před 6 lety +18

    Heck of a video, I've watched around 5 times now.

  • @cottondai
    @cottondai Před 3 lety +2

    Wow what a great way to convey such a difficult subject of cryptography in such a comprehensive yet understandable way.

  • @Nemanja29100
    @Nemanja29100 Před 8 lety +87

    Such a nice explanation,thank you very much

  • @icy14
    @icy14 Před 5 lety +66

    16:05 That was me with the rock after watching this video

  • @jatinsw1128
    @jatinsw1128 Před 9 lety +13

    One of the finest videos to explain the beauty of cryptology and hence prove the magic of prime numbers

  • @davidlawrence8085
    @davidlawrence8085 Před 3 lety +1

    This is absolutely the best exposition of public key, for me at this point.

  • @Vojtos3
    @Vojtos3 Před 2 lety +3

    This is gold. I can’t image how much work it must have involved. I appreciate your work greatly

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 2 lety +6

      it was an epic video to great, I put everything I had into it :)

  • @robneff7084
    @robneff7084 Před 4 lety +9

    This was just what I was looking for, and very good up until 12:00. Then I had to watch it a couple times, and fill in a couple intermediate math steps that were glossed over, but now I got it. It also helps to know the rules for picking d and e, which are better covered in other videos (explains why k is there and why he could magically replace it with 2, for instance).

    • @2sourcerer
      @2sourcerer Před rokem +4

      I'm stuck. Which other videos?

  • @davidr.flores2043
    @davidr.flores2043 Před 3 lety +1

    This is the 'n' time I've come back for this explanation, and every time I watch it I am nothing short of amazed. Kudos to Art of the Problem!!!

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 3 lety

      thanks david, happy to have you around. love to see it aged well

  • @matthewsnow6317
    @matthewsnow6317 Před 8 lety +3

    This is by far the best explanation of RSA Encryption I've ever seen. I really like how you actually explained the algorithms and how it was derived.

  • @MaxRoth
    @MaxRoth Před 10 lety +23

    I saw a few people asked about where the k=2 comes from around 14:22. I spent a while trying to figure this out myself so I thought I would share. Rather than guess a k, the better way to solve for d is to find the modular inverse d= e^-1 mod phi(n). I found a python script that could do this quickly and allowed me to solve for d easily. It also allows you to make sure that the gcd of e and phi n are is one. That is necessary. en.wikipedia.org/wiki/Multiplicative_modular_inverse
    Oh and I also should say that is an awesome video and I am very grateful that you took the time to make this. It really is an amazing piece of work. Thanks!

    • @RegnerVE
      @RegnerVE Před 9 lety

      Max Roth but how to find k if you don't have the 'd'?

    • @MaxRoth
      @MaxRoth Před 9 lety +1

      Ruben Verbrugghe That is exactly what I mentioned in the comment. It is the Multiplicative Modular Inverse. d= e^-1 mod phi(n). Here is where I found a python script to find this. It is algorithmic which means it is not easy to solve by hand.
      en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm

    • @RegnerVE
      @RegnerVE Před 9 lety

      I will check it out tomorow thx for the fast respons buddy!

    • @AnuragSawarkar
      @AnuragSawarkar Před 5 lety

      Hi, I would just like to ask you, where exactly does the d=e^-1 mod phi (n) originate from?

    • @yanivmms
      @yanivmms Před 4 lety

      Brother help me out please! There's a mistake in his calculation in the last example and this is driving me INSANE, I really hope I'm missing something here, but listen:
      if....
      c=1394
      n=3127
      d=2011
      now plug them in the equation: c^d mod n=m and it's supposed to come out to 89.
      However, using a calculator: 1394^2011 mod 3127 = 1506
      Click on this link to see the calculation:
      calculatorpi.com/c?a=mod%281394**2011%2C+3127%29&submit=+++Calculate+++&b=#here
      What is going on.... ????

  • @omkarium
    @omkarium Před 3 lety +7

    Watching videos as such, makes me believe in CZcams Gods.

  • @theeggmancometh
    @theeggmancometh Před 7 lety +1

    This is probably the best explanation I've seen yet as to how this works - it's always boggled my mind when I start thinking about numbers that large, and I'm no slouch at math.

  • @davidr.flores2043
    @davidr.flores2043 Před 5 lety +1

    I'd like to take the opportunity to thank those who kindly put the time and effort to do this MAGNIFICENT video. EVERYTHING is extremely well thought, done and said. Kudos to you "Art of the Problem". Cheers

  • @CalebJones
    @CalebJones Před 10 lety +7

    Fantastic video for figuring out how public key/private key work.

  • @anusha5788
    @anusha5788 Před 6 lety +13

    This video is really an Art- You really have the Art of Teaching with conceptual depth!
    I have a video suggestion: Please do a video on Elliptic Curve Cryptography.

  • @skim2958
    @skim2958 Před 6 lety +1

    This video is by far the most elegant and easy to understand explanation of RSA encryption I've seen. Thank you.

  • @TheISNetworldConsultant

    The best explanation of cryptography that I have seen on the internet.

  • @amaridissou65
    @amaridissou65 Před 3 lety +6

    Incredibly well explained, it was magical. Thank you!

  • @zekininadresi
    @zekininadresi Před 5 lety +3

    This is just one of the greatest crypto related videos out on web (with an excellent timing of bg theme changes :))

  • @lukaborec1671
    @lukaborec1671 Před 7 lety +1

    Both the way in which this is explained and the style of the video are beyond amazing. Thank you!

  • @fireflies15
    @fireflies15 Před 2 lety +1

    mind = BLOWN
    even though I couldnt catch up with every single point and calculation, at the end when all the pieces came together my mind was blown. thank you so much for this brilliant video, my network security final is in 4 days hehehe

  • @sujitkumarsingh3200
    @sujitkumarsingh3200 Před 6 měsíci +2

    In engineering, I have learnt encryption and deception in details, but this video explains those concepts in great details.

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 6 měsíci +1

      made this for people like you

    • @mr.pineapple7688
      @mr.pineapple7688 Před měsícem +1

      @@ArtOfTheProblem thanks a lot! i hope u get what u expect sharing such useful informations

  • @martinziet7157
    @martinziet7157 Před 9 lety +31

    This is so beautiful, pure consciousness at work. Its implications will soon be felt by everyone, as cryptography is the way out of all tyranny, oppression and unaccountable government's overreach.

  • @mihiguy
    @mihiguy Před 10 lety +5

    Nice description. In fact, Phi function is only multiplicative for factors that are coprime (don't share any common prime factor), but that is not a problem since our two factors are two different prime numbers and therefore coprime by definition :)

  • @jihochoi_cs
    @jihochoi_cs Před 6 lety +1

    This video has by far the best explanation of public/private key!

  • @guilhermedantas5067
    @guilhermedantas5067 Před 2 lety

    I've never seen a video so well done to explain a very technically complex (and intriguing) topic! Amazing!

  • @guitarinos
    @guitarinos Před 5 lety +12

    At 11:02 one has to be careful. The Euler's Phi Function is multiplicative (i.e ϕ(a*b)=ϕ(a)*ϕ(b)) only if the greatest common divisor satisfies gcd(a,b)=1. Otherwise we would have 4=ϕ(8)=ϕ(2*4)=ϕ(2)*ϕ(4)=1*2=2. In our case, we're always taking two different primes and the condition holds.

    • @petrprokop63
      @petrprokop63 Před rokem +1

      Striked me too. Glad to find your comment here, otherwise I'd be in doubts...

  • @AjithChanaka
    @AjithChanaka Před 6 lety +3

    You explained it clearly. Thank you very much.

  • @bayremgharssellaoui238

    One of the best explanations on the internet, plus the lock analogy is amazing

  • @Lik3wise
    @Lik3wise Před 6 lety +1

    Simply put, your video was amazing to watch. You cleared up everything (most of it) in a really easy to understand way. Thank you. You succeeded, where many other people failed.

  • @peschebichsu
    @peschebichsu Před 4 lety +6

    Very nice, especially the example at the end! Just how you get the number 2 at 14:22 is not really understandable

  • @Kelkworth
    @Kelkworth Před 4 lety +5

    11:06 don't forget that this only holds when A and B are both prime

  • @annablendermann
    @annablendermann Před 6 lety +1

    Nice. This really helped me understand the details of the RSA algorithm, and how the decryption is actually discovered by the sender of the original message

  • @philippdolomit4830
    @philippdolomit4830 Před 3 lety

    Greatest Video I have found so far about Public Key Cryptography.
    Thanks a lot for summarizing and simplifying this topic.

  • @SongwriterTaco
    @SongwriterTaco Před 8 lety +123

    At 14:20 where did that k = 2 come from in d = (2*3016 + 1)/3 ????

    • @Demorgorgon
      @Demorgorgon Před 7 lety +9

      So I pick k = 1 and end up with a non-integer number. What happens then?

    • @tywald
      @tywald Před 7 lety +225

      Then you try k = 2, if it's still non-integer then you try k = 3. etc. In my exam we worked with these numbers, going to use the same variable names as in the video.
      p1 = 31
      p2 = 23
      m = 42
      n = 31*23 = 713
      φ(n) = 30*22 = 660
      Choosing e, starting with e = 3 => 660/3 = 220 //Not good
      Testing e = 5 => 660/5 = 132 //Still not good
      Testing e = 7 => 660/7 = 94.28571429 //Good, doesn't share factor with φ(n).
      Choosting d, starting with k = 1:
      d = (1*660+1)/7 = 94.42857143 //Not good, non-integer.
      Try k = 2:
      d = (2*660+1)/7 = 188.7142857 //Not good, non-integer.
      Try k=3:
      d = (3*660+1)/7 = 283 //Good
      Encryption:
      c = m^e mod n = 42^7 mod 713 = 199
      Decryption:
      m = c^d mod n = 199^283 mod 713 = 42
      Hope this helps :)

    • @ats1995
      @ats1995 Před 7 lety +7

      tywald Thanks for writing it out! Helped a lot for a lazy mobile user.

    • @samirdayalsingh7721
      @samirdayalsingh7721 Před 7 lety +12

      my book kept confusing me as it didnt clear the trials that u showed. and with the video, i was goin crazy. thanks for putting it up.

    • @ZonkoKongo
      @ZonkoKongo Před 7 lety +1

      thanks, made even the last bit clear

  • @opinionsarenotmyown8818
    @opinionsarenotmyown8818 Před 9 lety +41

    Holy shit, my brain is overheating. Was running at 100% capacity since 9:55

  • @chatterb
    @chatterb Před rokem

    Ten year late but glad to arrive here. This explanation, wow what a great journey.

  • @22Tech
    @22Tech Před 4 lety +1

    this was so high quality and explained this concept super well! I can't thank you enough

  • @guanine369
    @guanine369 Před 10 lety +20

    quick question, around 14:21 we see that the equation as 2 as the K value, why is that, because when I try to replicate this equation, I can't seem to get a resulting whole number, so why is it 2 in this case, what do you have to do to put in the value for K?

    • @obtron
      @obtron Před 4 lety +6

      iterate k from 1 until (k*phi(n))+1) is divisible by e to give an integer, if the result is in fraction then increment k n try again.

  • @kristofkallo
    @kristofkallo Před 6 lety +53

    I would like to share some ideas I learned about the topic. Many of you asked about how k came on. Let me approach this from a different angle. We would like to choose d so that e · d = k · ϕ(N) + 1 is true for some k. In other words, we need to fulfill the following congruence: e ⋅ d ≡ 1 (mod ϕ(N)). Since we have already found an e so that e and ϕ(N) don't share a common factor, or in other words, gcd(e, ϕ(N)) = 1, this congruence is a linear congruence for the variable d, which has a solution, because of the fact that gcd(e,ϕ(N)) = 1, and can be solved using Euklides' algorithm. Therefore, the main point is not to find a k by guessing, but to find d directly, using the method mentioned above. I hope this helped some of you.

    • @bartoszkowalski885
      @bartoszkowalski885 Před 2 lety

      i still dont understand why we need K

    • @duartemortagua5782
      @duartemortagua5782 Před 2 lety

      @@bartoszkowalski885 you dont

    • @Loxodromius
      @Loxodromius Před 2 lety +1

      OK I understand your point, but how do we calculate k?

    • @duartemortagua5782
      @duartemortagua5782 Před 2 lety

      @@Loxodromius you use the euclidean extended algorithm, which gives you d and k at once. You can Aldo get d with the Chinese Remainder theorem, if you know p and q, which is more efficient.

    • @michaelfung680
      @michaelfung680 Před 2 lety

      @@bartoszkowalski885 I thought the usage of k is to find an integer d,
      say at 14:20 (3016+1)/3=1005.667 but (2*3016+1)/3=2011, which is a 4-digit number

  • @Wownerd1265
    @Wownerd1265 Před 6 lety

    So many other videos, this one finally includes formulas and examples, exactly what I was looking for.

  • @redrodlrowon
    @redrodlrowon Před 9 měsíci

    The producers of this video are, without question, didactic geniuses.

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 9 měsíci

      thanks so much, made this video almost a decade ago and worked really hard on it

  • @a1988ditya
    @a1988ditya Před 8 lety +11

    how is k determined ?? why is 2 here ??

  • @mayabielecki7438
    @mayabielecki7438 Před 4 lety +6

    Thank you so much for this video. It explained everything so well and helped me finally understand! Just one question. Since this all relies on Euler's Theorem, for which you mention that m and n must share no factors, what if the message m happens to share a factor with n (i.e. it is divisible by either p1 or p2)?

    • @poincareseifert1673
      @poincareseifert1673 Před rokem

      @Maya Bielecki
      Although Euler's theorem itself - in the form m^{φ(n)}≡1 (mod n) - is indeed only valid for an m relatively prime to the modulus n (relatively prime means that they share no non-trivial factors or equivalently that their greatest common divisor is 1), the actual relation justifying the validity of the encryption method is a bit more general, as follows: given a square-free natural number n (this condition means that n is not divisible by the square of any k≧2 or equivalently that all the prime divisors of n have multiplicity 1 in n; do remark that this is in particular the case for N=p_1*p_2, in the video presentation) and a natural number r congruent to 1 modulo φ(n), it is necessarily the case that m^r≡m (mod n).

  • @brandone7273
    @brandone7273 Před 3 lety +2

    This video was amazing. I've been racking my brain trying to conceptualize public and private keys. I couldn't figure out why input couldn't just be fed into the public key over and over to crack the private key, but your video finally made it click. Thank you for posting!

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 3 lety

      thrilled to hear it

    • @dneirfenoz1961
      @dneirfenoz1961 Před 2 lety

      Yes same here. It's incredible that there is a mathematical equations to make a scramble rubics cube almost impossible to return it back to same position as it was scrambled

  • @gambleroflife
    @gambleroflife Před rokem

    I have been researching on public key cryptography for 3 weeks. This is the best explanation. Thanks

  • @wemingle
    @wemingle Před 8 lety +3

    This video is dope. Thanks bruh.

  • @reservoirman
    @reservoirman Před 9 lety +7

    This was an excellent video, despite the glossing over of k.

    • @MatthewLiuCube
      @MatthewLiuCube Před 4 lety

      The k was multiplied to make sure that (k*phi(n) + 1)/3 was a whole number. If k was 1, then it wouldn't give a whole number.

  • @Mynamegeoph
    @Mynamegeoph Před 2 lety

    I have a cybersecurity test tomorrow and this video is just amazing and extremely helpful, awesome job

  • @dropagemonem
    @dropagemonem Před 2 lety

    i am cryptographer and i believe i grasped concept of rsa the way i have never before. that's how on point your interpretation is. respect.

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 2 lety

      wow that's amazing to hear, I'm curious what clicked?

  • @AbbyChau
    @AbbyChau Před 8 lety +5

    The equations around 5:30 are misusing the congruent sign, it should be equal.

  • @tejaslodaya1
    @tejaslodaya1 Před 9 lety +7

    What is the key length?? And what does k signify in the equation of d,i.e
    d=(k*phi(n)+1)/e)?? Please reply quickly
    thabg007 Art of the Problem RenanzinhoSP

  • @ericdonofrio6946
    @ericdonofrio6946 Před 5 lety

    This is an EXCELLENT explanation of RSA!

  • @ayoubmokeddem8706
    @ayoubmokeddem8706 Před 2 lety

    I have never been interested in cryptography .. I played this video by accident .. but man what an excellent explanation and content you got for the entire 16 minutes.

  • @ongy3
    @ongy3 Před 10 lety +5

    Why do you multiply the function by k?

  • @DJTimeLock
    @DJTimeLock Před 8 lety +35

    My brain hurts. xD

  • @yangpiao3071
    @yangpiao3071 Před 3 měsíci

    The best video about explaining the RSA. Not only the procedure of performing encryption and decryption, but also clarify mathmathic knowledge behind that.

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 3 měsíci

      thanks, so cool people still find this

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 2 měsíci

      Hey I have a new video out: czcams.com/video/5EcQ1IcEMFQ/video.html would love if you could help me share it

  • @gavindeulufount2043
    @gavindeulufount2043 Před 10 lety

    Nice work man, this helped a lot. And yeah, the distribution of the primes is one of the most beautiful things I've learned about. You have to wonder how in the hell there is so much structure in a sequence that is just adding 'one' to the next!

  • @Serob42
    @Serob42 Před 10 lety +13

    14:14 Why the private key is multiplied by '2' ??? What does this '2' mean???

    • @BilalMellah
      @BilalMellah Před 7 lety +4

      he picked K from nowhere x)

    • @ImGuti
      @ImGuti Před 7 lety

      PFM!

    • @MatthewLiuCube
      @MatthewLiuCube Před 4 lety +2

      It's so that when you divide by 3, you get a whole number

  • @valentinsarmagal
    @valentinsarmagal Před 7 lety +26

    The eavesdropper name is EVE! EVE the EAVESDROPPER. Thank you.

  • @Nik-dz1yc
    @Nik-dz1yc Před 3 lety

    ive watched this so many times and its just so perfect

  • @petrospaulos7736
    @petrospaulos7736 Před rokem

    2023: still the greatest video on the topic. Many people are asking about k=2. In this case modular inverse would be heplful: the modular inverse of 3 mod 3016 is 2011.

  • @kshow666
    @kshow666 Před 8 lety +4

    What is the value of k? I understand how it fits in the equation but I don't understand why it was necessary.

    • @akithered
      @akithered Před 6 lety +1

      It is necessary to make the division return a whole number. K should be chosen to be a the smallest number so that D is integer. Without K, one cannot guarantee that that division returns an integer number. I think.

  • @mariahclery1157
    @mariahclery1157 Před 5 lety +13

    we got the keys here.

  • @xXxBladeStormxXx
    @xXxBladeStormxXx Před 2 lety

    That intense industrial background music just makes this video even better.

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 2 lety

      glad you like it, I get a lot of flack about my music sometimes :)

    • @xXxBladeStormxXx
      @xXxBladeStormxXx Před 2 lety

      @@ArtOfTheProblem No problem and thanks so much for the awesome video! I only had one part that I didn't quite understand. Where does the `k` come from in the `k * Phi + 1`? Is that arbitrary and left up to us to choose? Also, why is it even necessary? Wouldn't `d = (Phi + 1) / e` also work?

  • @Filip_Phreriks
    @Filip_Phreriks Před 7 lety

    Fascinating. I had to pause a few times to think about it but the video is really clear. Thanks!

  • @Urahara12
    @Urahara12 Před 10 lety +6

    Around 12:30, isn't the mod n supposed to be on the left of the equation? The remainder is always 1, right?

    • @donelygunn6002
      @donelygunn6002 Před 4 lety

      This confused me also and its convergence notation not an equation. www.whitman.edu/mathematics/higher_math_online/section03.01.html

    • @Celdorsc2
      @Celdorsc2 Před 3 lety

      This bit also confused me but I was not familiar with Congruents.

  • @apreasher
    @apreasher Před 7 lety +19

    I'm sorry but the equation at 15:02 is incorrect.
    It should be (1394 ^ 2011) mod 3127 = 89

    • @JeaneAdix
      @JeaneAdix Před 6 lety +2

      Thanks for that. Was following then got super confused. I mean how can you know the message (89) prior to running it.

    • @LarryRuane
      @LarryRuane Před 5 lety +7

      What is shown at 15:02 is a congruence, not an equation. If someone writes "a (congruent) b mod n" (where congruent is usually written as the triple-line equals), that means "a mod n = b mod n" (this time actually equals, an equation). The first way is just a slightly simpler way to write it.

    • @strohtaler4698
      @strohtaler4698 Před 5 lety +2

      Larry Ruane - I still do not have `b` by that formula... and he clearly spoke "(c ^ d) mod n" and not the written formula (with congruent)

    • @najgauner
      @najgauner Před 5 lety +1

      you read the symbols wrongly... he didnt say 1394^2011=89 mod 3127
      he stated: 1394^2011 is congruent to 89 modulo 3127( the three lines symbol denotes congruence and not equality) - this means 1394^2011 mod 3127 = 89 mod 3127 or simply 89. In case 1394^2011 mod 3127= 89 than its true... i dont have an algorithm to verify this bet it should be true.

    • @helena8918
      @helena8918 Před 11 měsíci

      Did you try it? if you did, you would be understanding that smth is off, cause that wouldn't give you 89 at all.

  • @JustSkillGG
    @JustSkillGG Před 4 lety +1

    This became one of my favorite youtube videos.
    Great explanation, Great editing!
    Congrats!

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 4 lety +1

      happy people are still finding this channel, stay tuned for more!

  • @Seb0927
    @Seb0927 Před 2 lety

    This has been the best explanation I've found so far, thank you :)

  • @FRANCOBELLONI85
    @FRANCOBELLONI85 Před 7 lety +5

    Thanks for all your videos, beautifully done, I'm using them to study for my exam. In min 15:04 it's written c^d ≡ 89 mod 3127. there should be c^d mod 3127 = 89? Sorry for my English.

    • @supernovaw39
      @supernovaw39 Před 10 měsíci +1

      In modular arithmetic, that's equivalent. If at the end you have mod N, you can think of parts before and after the ≡ as all having that mod N.
      E.g. c^d ≡ 89 mod 3127 is the same as c^d mod 3127 = 89 mod 3127

  • @christosbinos8467
    @christosbinos8467 Před 8 lety +16

    I cannot understand the position of K in the equation.

    • @KRCPrice
      @KRCPrice Před 8 lety

      +Panth Mantheon Nor can I, we learnt that to find d we have to solve the following congurence: e*d congurent 1 mod phi(n)
      However when we decode it, we do use that x^(phi(n)*k)=1, because x^(e*d)=x^(k*phi(n)+1)=x*x^(k*phi(n))=x*1=x.
      Edit:My guess is that he didn't want to explain how to solve a linear
      congurence, so he just came up with k, or I'm just too dumb to
      understand it.

    • @christopherburgess4486
      @christopherburgess4486 Před 8 lety +2

      +KRCPrice since taking the base to the power of phi alone is congruent to 1, the overall value achieved from raising this base to phi can be raised to any value k and still be 1, since 1^k is 1.

    • @francescopham
      @francescopham Před 8 lety

      +CH Black But why you should raise the base to any value k

    • @ericz6515
      @ericz6515 Před 8 lety +21

      +francesco pham It is for the convenience of breaking the whole key into a public key (e) and a private key (d). Take a look at 13:14. We want to find an "e" and a "d" such that e*d=k*phi(n)+1. If we can find any such pair of "e" and "d", then we can publish "e" as part of the public key, and use "d" as a private key to cancel the effect of "e". However, not all values of "k" gives a nice split of k*phi(n)+1. For example if n=8, then phi(n)=4, and if we choose k=1, then k*phi(n)+1=5, which means either "e" or "d" must be 1, which is too trivial to server as a key. To avoid such bad choices, we randomly pick a non-trivial "e" that has no common factors with phi(n), and find a "k" such that phi(n)+1 is divisible by "e", giving d=(phi(n)+1)/e. In his final example at 14:23, he randomly picked e=3, and chose k=2 because 2*3016+1 is divisible by 3. Of course k=5 will work as well, it will just give a larger d (public key). The point is that any "k" will make the formula work, and we just pick one that gives a convenient and non-trivial split of k*phi(n)+1 into "e" and "d".

    • @Ali009Ahmed
      @Ali009Ahmed Před 8 lety

      +Peng Zhao That helped a lot, thanks. Also, why shouldn't our "e" share a prime factorization with phi(n)? I could imagine this is not to give any hints to Eve, but is there any other reason to that restriction?

  • @MsAmedina1
    @MsAmedina1 Před 5 lety

    Thank you for this video. The breakdown is amazing and it is so easy to understand. Way better than any text that I have come across on RSA.

  • @RazorCallahan2424
    @RazorCallahan2424 Před 7 lety +1

    Best video that explains RSA hands down

  • @ones9638
    @ones9638 Před 4 lety +4

    15:03 what calculator are you using? every time i try to calculate c*d i get an overflow error. help?

  • @tropicalpenguin9119
    @tropicalpenguin9119 Před 8 lety +7

    where the 2 came out ??
    how can you get kkkk

  • @Pkroc138
    @Pkroc138 Před 7 lety +1

    Thanks for create this video, I can imagine all the work that take to you do this.

  • @mohamedelaminboukerfa7127

    Best explanation of RSA on the internet !thank u

  • @NoahAndABadger
    @NoahAndABadger Před 9 lety +20

    Take all my money

  • @alicewonderland9151
    @alicewonderland9151 Před 4 lety +5

    13:06: This is the breakthrough.
    Me: What? what breakthrough?

  • @HundredMillionViews
    @HundredMillionViews Před 11 lety +2

    Phi(A*B)=Phi(A)*Phi(B) iff gcd(A,B)=1
    This is an extremely important distinction to make! Hope you can update the video with this.

    • @michaelyang6168
      @michaelyang6168 Před 5 lety

      Thx, I was thinking if simply Phi(A*B)=Phi(A)*Phi(B), there would be a paradox. For example Phi(8)=Phi(2)*Phi(2)*Phi(2)=1, which is actually 4.

    • @aprendiendoC
      @aprendiendoC Před 3 lety

      He actually states in the video that e and d are chosen to be coprimes, so in the context of this video that expression holds

  • @BudgiePanic
    @BudgiePanic Před 6 lety

    Excellent video thanks very much, I was trying to get my head around RSA for a school assessment and this clarified everything for me. Even allowed me to make a worked example using my own prime numbers and explained it to the class

  • @JohnSmith-bx4gf
    @JohnSmith-bx4gf Před 6 lety +4

    Who the fuck is Alice and Bob?

  • @davidedwardsjr4350
    @davidedwardsjr4350 Před 8 lety +1

    truly amazing! I think it is possible to understand this this extraordinarily complex solution

  • @ethanparker876
    @ethanparker876 Před 2 lety

    this made it so much easier to understand, even though now my mind is blown and i have a severe headache from thinking so dang hard. this concept is so dope

  • @ngocvo9058
    @ngocvo9058 Před 3 lety

    I agree with many other comments: the ones who came up with this are geniuses, but you are just as much a genius for being able to explain this so thoroughly!! Thank you so much!

  • @dhruv01dubey
    @dhruv01dubey Před 2 lety

    I don't know if u still post but I subscribed after watching this masterpiece of an explanation.

    • @ArtOfTheProblem
      @ArtOfTheProblem  Před 2 lety

      thanks for the feedback, it was a huge video to make. I will post again but have been distracted with a new project I'm working on www.storyxperiential.com (I hope to make these across many disciplines)

  • @cecilhenry9908
    @cecilhenry9908 Před 5 lety

    This was a great video. Showed the math yet made the application understandable too. Thanks

  • @thefirstfishadvancetheland8980

    Sooo useful. Saving my life so much as a student. Thank you

  • @hritesh.j8895
    @hritesh.j8895 Před 2 lety

    OMG! brilliantly and clearly explained. Best vid I've seen in a while