How to Encrypt with RSA (but easy)

แชร์
ฝัง
  • เผยแพร่เมื่อ 8 ม.ค. 2025

ความคิดเห็น • 115

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

    The constraints for e is just {2 < e < r; gcd(e, r) = 1}, and it has to follow those constraints so that the encryption is one-to-one rather than many-to-one, where in the latter case it would not be reversible. More recent versions of RSA use the Carmichael's function, in this case λ(n), (which simplifies to lcm(p - 1, q - 1)) in those constraints rather than r (which is just the Eurler's totient function of n). It achieves the same results but has the benefit of faster decryption.

  • @pedropago
    @pedropago 2 วันที่ผ่านมา

    this dude just saved my finals, awesome video thank lord i found it

  • @Moocow2003
    @Moocow2003 10 หลายเดือนก่อน +3

    Thank you so much for this tutorial! I could not wrap my head around turning the concepts behind encryption into code before this.

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

    Why doesn't this have more views??? Thank you so much !!

  • @lucinali6617
    @lucinali6617 5 วันที่ผ่านมา

    I love it! I'm looking forward to learn programming with python with your video.

  • @thegreatpugtato
    @thegreatpugtato 5 หลายเดือนก่อน +1

    Holy shit this was actually huge for an assignment, made it so much easier and less stressful

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

    flawlessly explained bro! thank you

  • @zachahmad4097
    @zachahmad4097 8 หลายเดือนก่อน +2

    Really nice video....definitely simple and yet makes a lot of sense!

  • @MuhammadRaza-yd6sg
    @MuhammadRaza-yd6sg 2 หลายเดือนก่อน

    congrats on 200 subs!

  • @michaiahf
    @michaiahf 11 หลายเดือนก่อน +12

    How does D = 7? I don't understand that part. Is 7 just a random number that you are using as the message to send?

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

      D is the result of the multiplicative inverse after the extended Euclidean algorithm

    • @Moocow2003
      @Moocow2003 10 หลายเดือนก่อน +2

      i don't get it either

    • @KidsCastable
      @KidsCastable 10 หลายเดือนก่อน +3

      this video is terrible, just find a new one lol

    • @Killernochance
      @Killernochance 9 หลายเดือนก่อน +10

      Extended euclidean algorithm to find an inverse.
      I'll walk you through it. This is in text but I'll do my best to explain it in English, simply.
      e^(-1) mod (r) implies that e multiplied by something results in a number, when taken mod r, is 1.
      Writing that out, e(x) = 1 mod r
      Extended euclidean algorithm can get us x.
      r = 20, e = 3.
      Putting this fancy algorithm into plain english, here's how it goes:
      A bigger number = the smaller number (times something) + remainder
      the smaller number = remainder (times something) + a new remainder
      our first remainder = the second remainder ( times something) + a new remainder
      and it just loops until the final remainder is 1
      20 = 3(s) + r; s = 6, r = 2; 20 = 3(6) + 2
      3 = 2(1) + 1
      Now above, where there was a '=', rewrite with a '-', and where there was a '+', rewrite with an 11.
      20 = 3(6) + 2 turns into 20 - 3(6) = 2
      3 = 2(1) + 1 turns into 3 - 2(1) = 1
      Let me just isolate those two lines for clear reference:
      20-3(6) = 2
      3 - 2(1) = 1
      So from here, we walk it back upwards. Trying to figure out what number that our original (x) was. Start with the =1 line.
      3 - 2(1) = 1
      We also know that 20-3(6)=2, so we can sub in 20-3(6) for 2
      We get 3 - 1(20 - 3(6)), but for simplicity in text, I'm going to rewrite this as: 3- (20-6(3)) = 1
      Now combining like terms
      3 - 20 + 6(3) = 1
      7(3) - 20 = 1
      Take modulos of 20 and it just becomes 7(3) = 1
      Well guess what?
      We wanted to find 3 (times something) = 1
      Our (times something) is 7!

    • @justanormallamp
      @justanormallamp 9 หลายเดือนก่อน +4

      You can find d by using the equation d*e=1mod(r). You want to find the smallest value of d which, when multiplied by e, results in 1 mod(r). For example d*3=1mod(20). The value d in this case is 7 since 7*3=21 and 21mod(20) is equal to 1.

  • @Its_Me_Butters
    @Its_Me_Butters 11 หลายเดือนก่อน +3

    Simple AF, come back with more stuff dude!

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

    So helpful and informational !!!

  • @Листочек-ч3к
    @Листочек-ч3к 3 หลายเดือนก่อน +1

    Thank you so much! The best explanation!!!

  • @SirArghPirate
    @SirArghPirate 5 หลายเดือนก่อน +14

    I don't get it; how does 3^(-1) % 20 equal 7 and not 0.33..

    • @hammozeen
      @hammozeen 4 หลายเดือนก่อน +2

      because its 1/3 mod(20) = 7

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

      @@hammozeen but how? I type it into google and the answer is 0.33

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

      @@SirArghPirate 1/3 mod 20 means: 3 * x = 1 mod 20. you can use the advanced euclidean algorithm to find x or if its easy to see like in this case: x = 7. try it: 3*7 = 21 mod 20 = 1

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

      This is a different type of division called modular division. X^(-1) % Y means , find a number Z so that X * Z = 1 mod Y.

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

      it’s not equal it’s congruence, google and ur calculator won’t do it right because it’s not exactly the literal inverted of 3

  • @Kwatch
    @Kwatch 7 หลายเดือนก่อน +2

    your d formula is different to what i have in my course material. what i have is d = e^-1 mod( λ(n) )
    now λ(n) = lcm(p-1, q-1)
    the way you do the d also gets the right answer but answer must be divided by 1 but in your example i get 3 not 7.
    i think the right d formula is d = 1 / e^-1 mod(r)
    -------------new addition---------
    ok so i found out a shortcut. to find d just try this formula first because if numbers are small enough you can just get the d directly. e * d ≡ 1 mod(r)
    so here e = 3 and r = 20
    so 3 * d ≡ 1 mod(20)
    if you know how to mod words we can see by putting d=7 we get 21 ≡ 1 mod(20)
    if you dont know how mod words then it just means 21 remove as many 20 as you can until you have remaining 1. ya when i first learned mod the notation was going above my head but trick is not to look at is a equality. its triple bar not equal sign. so 21 ≡ 1 mod(20) this expression would be same even if i wrote it as 41 ≡ 1 mod(20) because that just means if i did 41 - 20 - 20 i would have 1 remaining.
    r = (p-1)(q-1)

  • @ReikiMaulana
    @ReikiMaulana 23 วันที่ผ่านมา

    *patiently waits for the python program implementation*

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

    Awesome!! well-explained thank you so much

    • @JulianGonzalez-ej2fi
      @JulianGonzalez-ej2fi 8 หลายเดือนก่อน

      how did he get d = 7? A normal mod calculation wont get you that

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

      @@JulianGonzalez-ej2fi e = 3
      r = 20
      d * e 1(mod r)
      d * 3 1(mod 20)
      if d = 7, d * 3 = 21
      21/20 rest 1

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

      @@guilhermejose4126 please write it down less understandable. O wait, not possible. That's why notation is important. The video also completely fails on that note

  • @UnrealFocus-le7ox
    @UnrealFocus-le7ox 10 หลายเดือนก่อน

    I thought this was a lifesaver... until you said "everyone will let you use a calculator". I have to do this on an exam tomorrow and my professors not letting us use a calculator 💀

  • @bumpsy
    @bumpsy 5 หลายเดือนก่อน +1

    the whole modulo stuff is not possible, because when calculating d, the first mod value is always smaller than the second, which gives a syntax error

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

    5:02 oh yes we have cipher text 13 so lets do
    13^3 mod 33 =19
    19^3 mod 33 = 28
    28^3 mod 33 = 7 thats your private key

  • @JarppaGuru
    @JarppaGuru 10 หลายเดือนก่อน +3

    0:38 its not fix
    e must be prime less than r and NOT factor of the r.
    e mod r != 0
    should be no problem if p and q is 100bit LOL

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

    Dude how come you only made 1 video

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

    value of d is such that if we multiply d with e with mod r , the answer or remainder is 1 that's eculidian idk why he couldn't go for 10 seconds on this but regardless pretty helpful video.
    He multiplied e with 7 i.e 3*7 which is 21. 21mod20 is 1(where r=20).
    de mod(r)
    since 1 came because of 7 we take it for d

    • @MrSt0nkss
      @MrSt0nkss 5 หลายเดือนก่อน +1

      where did he get the 7 from the first place!

  • @daddyhollow4185
    @daddyhollow4185 11 หลายเดือนก่อน +1

    Hey I dont think there's a gaurentee that e can always be 3. If totient n is 72 then 3 is not relatively prime and does not fit the. requirements

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

    Understood in minutes! Thanks

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

    e = 19, to be more secure while keeping it less than r

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

    At the end of both encryption and decryption we're doing mod n making it within the range of n
    Meaning our initial messsage CANT be higher than n?

  • @cagnozkut5851
    @cagnozkut5851 9 หลายเดือนก่อน +3

    I don't understand how we find d=7 ??

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

      same, i tried doing it but it is either wrong or I am not doing it right

    • @brunilda
      @brunilda 7 หลายเดือนก่อน +2

      ​​@@bashaier44 That is because the explanation is actually not very good for people who are trying to understand this perhaps for the first time. It is because:
      e=3 and r= 20 in the example so
      since 3*7=21 and 21= 20 + 1
      that means 7 is the inverse of 3 in arithmetic modulo 20 (3*7 is a number that gives a remainder of 1 when divided by 20 that is what it means that 7 and 3 are multiplicative inverses modulo 20).
      d=7 is just the multiplicative inverse of e=3 modulo r=20 (the numbers used in the example)
      You can find the multiplicative inverse of any e modulo any r by using the Euclidean Algorithm, which always succeeds; but in simple examples like this with a little practice you can just "eyeball" it (which is what the author of the video did here)

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

      @@brunilda yo bro you mind me asking how do you revise for computer science A level

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

    can we also have the xgcd video? thx

  • @thebullets1220
    @thebullets1220 13 วันที่ผ่านมา

    I am here at the comment section for the rsa python video, are you still there😂

    • @thebullets1220
      @thebullets1220 13 วันที่ผ่านมา

      Great video I love it hope you are doing well by the way

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

    I don't understand r. r = (p-1)(q-1) right? but why? Would the encryption and decryption work the same if you set r := (p+3)(q+3)? Would you change d = e^3 mod r in this scenario? Is this -1 just an arbitrary practice used in RSA?
    practically speaking, this doesn't really matter, but I need to understand it for it to click

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

      r is the result of Euler's phi/totient function applied to n:
      r = phi(n)
      Sorry I can't answer why this function is used, but it's essentially the amount of numbers 1 to n that's coprime with n.

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

    2:53 yes that easy. who send you message can also try crack your private key, but no need. he know what message is. he send it! LOL

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

    2:28 yes public e and n. thats fun when bit size is sasmall. we can brute force p and q get n calculate d.
    i have complete11 rsa challenges too bad they not offer money. and p q value was under 1000000 on couple python can do it 150minute.
    if they would be bout half what they could be could take year LOL
    and anyway we not need these after welearned how do it. we then just use tools what they made

  • @rolandkovacs8263
    @rolandkovacs8263 6 หลายเดือนก่อน +2

    Very Good Thank You!!

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

    Return Connor.

  • @thebrutee
    @thebrutee 5 หลายเดือนก่อน +1

    Pls make a tutorial for aes

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

      "Spanning tree" has a pretty good video on it

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

    It would have been nice if you explained how you got d, since it is the hardest number to find in the exercise.

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

    Where is the rsa with python😢

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

    Where's that python tut

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

    that was legitness

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

    nice stuff

  • @MichelleWolf-n5k
    @MichelleWolf-n5k 3 หลายเดือนก่อน

    Hermiston Wall

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

    i would love the teacher be like you, he make things harder, talking in mathematical way and so on, boring...

  • @CarolinaDominges-l1q
    @CarolinaDominges-l1q 2 หลายเดือนก่อน

    Schaefer Valleys

  • @WarrenDelmastro-f6h
    @WarrenDelmastro-f6h 3 หลายเดือนก่อน

    Noah Rue

  • @DeQuinceyZenobia-j5c
    @DeQuinceyZenobia-j5c 3 หลายเดือนก่อน

    Jaclyn Plaza

  • @SHIMALKHAN-k2w
    @SHIMALKHAN-k2w 3 หลายเดือนก่อน

    Herzog Islands

  • @PearlMcCormack-o3s
    @PearlMcCormack-o3s 3 หลายเดือนก่อน

    Carli Forges

  • @EricBailey-l8w
    @EricBailey-l8w 3 หลายเดือนก่อน

    Morissette Ramp

  • @YaleArlen-x3i
    @YaleArlen-x3i 2 หลายเดือนก่อน

    Benny Rue

  • @ElliottMccant-f6j
    @ElliottMccant-f6j 3 หลายเดือนก่อน

    Daugherty Point

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

    thanks good work

  • @ReedBarton-y7q
    @ReedBarton-y7q 3 หลายเดือนก่อน

    Leonor Walk

  • @אחיהפופלינגר-ת4ס
    @אחיהפופלינגר-ת4ס 3 หลายเดือนก่อน

    thanks bro😚

  • @RobertThomas-l1p
    @RobertThomas-l1p 3 หลายเดือนก่อน

    Rosenbaum Walk

  • @NellHugo-m3c
    @NellHugo-m3c 3 หลายเดือนก่อน

    Fritsch Springs

  • @GailBufkin-w5n
    @GailBufkin-w5n 3 หลายเดือนก่อน

    Dagmar Estates

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

    Marks Union

  • @PollittHedy-v9n
    @PollittHedy-v9n 3 หลายเดือนก่อน

    Green Ports

  • @Peter.H___
    @Peter.H___ 5 หลายเดือนก่อน

    my calculator is literally useless lol

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

    bro i love you

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

    Thank you!

  • @JuliaBrame-e2l
    @JuliaBrame-e2l 4 หลายเดือนก่อน

    Lopez Gary Hall Cynthia Williams Melissa

  • @HubbardBessie-f7d
    @HubbardBessie-f7d 2 หลายเดือนก่อน

    Weimann Falls

  • @GeorgeBrien-q5t
    @GeorgeBrien-q5t 3 หลายเดือนก่อน

    Isai Highway

  • @SilasTernence-g4z
    @SilasTernence-g4z 3 หลายเดือนก่อน

    Donnelly Flat

  • @RaymondPope-v9e
    @RaymondPope-v9e 2 หลายเดือนก่อน

    Bailee Fork

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

    legend

  • @BettyTyler-n5m
    @BettyTyler-n5m 2 หลายเดือนก่อน

    Jannie Pike

  • @SteinbeckBertha-u9c
    @SteinbeckBertha-u9c 3 หลายเดือนก่อน

    Elna Isle

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

    Legend

  • @PriestleyBeck-j6z
    @PriestleyBeck-j6z 3 หลายเดือนก่อน

    Neoma Park

  • @McDonaldJames-w9c
    @McDonaldJames-w9c 3 หลายเดือนก่อน

    Chase Via

  • @arisyazaki4385
    @arisyazaki4385 24 วันที่ผ่านมา

    thanks!

  • @CharlesaSmith-r2n
    @CharlesaSmith-r2n 3 หลายเดือนก่อน

    Kelsie Neck

  • @марияагафоник
    @марияагафоник 3 หลายเดือนก่อน

    Brown Paul Martin Kimberly Rodriguez Laura

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

    lemme give u a kiss

  • @DonDean-e7r
    @DonDean-e7r 2 หลายเดือนก่อน

    Irma Shore

  • @HumbertoSchreimann-p4g
    @HumbertoSchreimann-p4g 3 หลายเดือนก่อน

    Anahi Via

  • @yoyo-gv8zs
    @yoyo-gv8zs ปีที่แล้ว

    wag1 bruv.

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

    lol video

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

    worst vid ever wont recommend

  • @malikabdoul3932
    @malikabdoul3932 9 หลายเดือนก่อน +3

    Terrible video just because of not explaining well d

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

    your video is as bad at explaining how to get to d like my professor's slides... waste of time

  • @__-yu2mz
    @__-yu2mz ปีที่แล้ว

    Dual_EC_DRBG

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

    Legend