Sofia Flynn
Sofia Flynn
  • 25
  • 66 826

Відео

Pollard Factorization in R
Переглядів 1852 роки тому
Pollard Factorization in R
Worked Example: Extended Euclidean Algorithm
Переглядів 3803 роки тому
Worked Example: Extended Euclidean Algorithm
The Prime Number Theorem
Переглядів 2,1 тис.3 роки тому
The Prime Number Theorem
Coded Attack Against RSA: Calculating Decryption Key Directly
Переглядів 9733 роки тому
Link to video explaining Boost: ua-cam.com/video/LHnJfVRyJ-c/v-deo.html
Coding RSA Encryption and Decryption in C++ with Boost Library
Переглядів 7 тис.4 роки тому
Boost download site: www.boost.org/users/download/
Multiplicativity of Euler's Phi Function for Semiprimes
Переглядів 1,1 тис.4 роки тому
Multiplicativity of Euler's Phi Function for Semiprimes
Coding RSA Key Generation with C++
Переглядів 14 тис.4 роки тому
Coding RSA Key Generation with C
Intro to Cayley-Purser Encryption Algorithm: Encryption and Decryption Procedures (Part 3/3)
Переглядів 9074 роки тому
Intro to Cayley-Purser Encryption Algorithm: Encryption and Decryption Procedures (Part 3/3)
Intro to Cayley-Purser Encryption Algorithm: Key Generation (Part 2/3)
Переглядів 8924 роки тому
Intro to Cayley-Purser Encryption Algorithm: Key Generation (Part 2/3)
Intro to Cayley-Purser Encryption Algorithm: History, Asymmetry, and a Word on Matrices (Part 1/3)
Переглядів 9064 роки тому
Intro to Cayley-Purser Encryption Algorithm: History, Asymmetry, and a Word on Matrices (Part 1/3)
Math Motes 2: Sieve of Eratosthenes
Переглядів 5924 роки тому
Math Motes 2: Sieve of Eratosthenes
Math Motes 1: A = 2A?
Переглядів 6024 роки тому
Math Motes 1: A = 2A?
Baby-Step, Giant-Step for ECC & RSA
Переглядів 5 тис.5 років тому
Baby-Step, Giant-Step for ECC & RSA
Intro to Elliptic Curve Cryptography
Переглядів 4,3 тис.5 років тому
Intro to Elliptic Curve Cryptography
Congressional App Challenge Video
Переглядів 1,2 тис.6 років тому
Congressional App Challenge Video
Presentation: Overview of RSA Encryption
Переглядів 1,7 тис.6 років тому
Presentation: Overview of RSA Encryption
RSA Encryption Explained - Proof of RSA
Переглядів 9 тис.6 років тому
RSA Encryption Explained - Proof of RSA
RSA Encryption Explained - Decryption Techniques
Переглядів 3,9 тис.6 років тому
RSA Encryption Explained - Decryption Techniques
Learning Encryption RSA
Переглядів 1,5 тис.7 років тому
Learning Encryption RSA
Encryption RSA Explained - Part 2/4
Переглядів 1,6 тис.7 років тому
Encryption RSA Explained - Part 2/4
Encryption RSA Explained - Part 3/4
Переглядів 2 тис.7 років тому
Encryption RSA Explained - Part 3/4
Encryption RSA Explained - Part 4/4
Переглядів 1,4 тис.7 років тому
Encryption RSA Explained - Part 4/4
Encryption RSA Explained Introduction - Part 1/4
Переглядів 1,7 тис.7 років тому
Encryption RSA Explained Introduction - Part 1/4
Encryption RSA
Переглядів 2,4 тис.7 років тому
Encryption RSA

КОМЕНТАРІ

  • @Kavithesh07-hx9ie
    @Kavithesh07-hx9ie Місяць тому

    at 12:51 why should the value of alpha be less than 19? if not alpha can takes values of the form 19k+3 k starts from 0 ?

  • @SimKieu
    @SimKieu 2 місяці тому

    Wait you studied at CUA too? I'm in 2013 batch

  • @OneMeanDragon
    @OneMeanDragon 3 місяці тому

    // Generate a random number of a specific bit length uint64_t generateRandomNumber(uint32_t bitLength) { std::random_device rd; std::mt19937_64 gen(rd()); std::uniform_int_distribution<uint64_t> dis(0, (1ULL << (bitLength - 1))); return dis(gen); } uint64_t generatePrime() { uint64_t prime; do { prime = generateRandomNumber(64); } while (!primality_check(prime)); /* you may want to speed that up just a little */ return prime; } edit: also you shouldent expect to get your values right every try so you could do something like the following. void Generate() { while (p == q) { while(!p.IsPrime()) // these should be self explanitory p = Prime(BigInt::random(sizeof(uint64_t))); // Prime is just (2 * random) - 1 while(!q.IsPrime()) q = Prime(BigInt::random(sizeof(uint32_t))); n = p * q; calculate_phi(); calculate_e(); if (e > phi_n || e == phi_n) p = q; // if e is messed up make p and q the same and loop again. } calculate_d(); }

  • @osalotioman
    @osalotioman 7 місяців тому

    Is there a limit to the size of the keys your program can generate?

  • @asmap3096
    @asmap3096 9 місяців тому

    Well said😍

  • @SadamHussainGanie-w7z
    @SadamHussainGanie-w7z 9 місяців тому

    Thanks for clearing the basics ...

  • @andrewsquest628
    @andrewsquest628 10 місяців тому

    This video is a great blessing! It's very hard to find details onto why this method works, but you provided perfect explanation, which fill in all the gaps for me ❤

  • @CryptoFTransaction155
    @CryptoFTransaction155 11 місяців тому

    How can I contact you directly, I have a paid work for you

  • @collenndlovu2576
    @collenndlovu2576 Рік тому

    Thank you so much

  • @ivanalexeevich3735
    @ivanalexeevich3735 Рік тому

    Very interesting and informative, can you recommend me some books about cryptography for beginners?

  • @banylp3632
    @banylp3632 Рік тому

    really great explination ❤❤

  • @drums1588
    @drums1588 Рік тому

    holy moly thank you SOO much ! This is GOLD !

  • @mrmrigank7154
    @mrmrigank7154 Рік тому

    Aarigato Sofia kun.

  • @vitarkamudra4548
    @vitarkamudra4548 Рік тому

    Beautiful voice

  • @milosz7
    @milosz7 Рік тому

    At 7:41 7d = 1 mod 3120 might be calculated using Extended Euclidean Algorithm - might require less computation than guessing the number. Aside from that the material explains the topic very well ;)

    • @benhayter-dalgliesh5794
      @benhayter-dalgliesh5794 11 місяців тому

      another note is the modular exponentiation law at 3:08 works for all values of A. Showing that it works only for A<n is fairly pointless.

  • @tomasrasimavicius1914
    @tomasrasimavicius1914 Рік тому

    Very clear explanation! I'm just a little confused about the very end. Where does the fact that M and N are coprime come from? I thought that the message M could be any integer.

  • @zakaehl
    @zakaehl Рік тому

    Thanks, that was very helpful

  • @dannyshaw4057
    @dannyshaw4057 Рік тому

    An absolutely outstanding series of videos; I really enjoyed having the mechanics of this really important part of the web explained in such detail. I've read about the topic in a few few books, and seen some examples, but your videos really go through step by step and explain things so well.

  • @chang993
    @chang993 Рік тому

    I think at 10:04, this step is wrong, because [M * M^(k*phi(N)) ] mod n should not equivalent to M * [M^(k*phi(N)) mod n]. The correct version should be: **Method1:** Because M^phi(n) mod n = 1, M^phi(n) can be gn+1. So [M^phi(n)]^k = (gn+1)^k = (...)n + 1^k. so M * [M^phi(n)]^k = (M*...)n + M. so M^(1+phi(n)*k) = (M*...)n + M. so M^(1+phi(n)*k) mod n = [(M*...)n + M] mod n = M. **Method2:** M^phi(n) is congruent to 1 mod n, so [M^phi(n)]^k is congruent to 1^k mod n. so M*[M^phi(n)]^k is congruent to M*(1^k) mod n. so M^(1+ phi(n)*k) mod n = M.

  • @qgao457
    @qgao457 2 роки тому

    Your calculations for RSA are not correct.

  • @pogramadorcumcafe6953
    @pogramadorcumcafe6953 2 роки тому

    I like, very good.

  • @sonnyboy9124
    @sonnyboy9124 2 роки тому

    Good Work Watch Baby Step Television Videos Leave A Comment Press Like Button subscribe share Watch Baby Step Radio Videos Leave A Comment Press Like Button subscribe share Watch Baby Step Records Artist Bobirdie Video Freedom Of Speech Leave A Comment Press Like Button subscribe share Watch Baby Step T.V Videos Leave A Comment Press Like Button subscribe share

  • @MaazKhan-lw6kz
    @MaazKhan-lw6kz 2 роки тому

    Thank You. One day, I will surely understand this. I have watched your previous vidoes and tested the codes out in which I failed terribly but the process is on. I myself am studying computers and softwares but the institute doesn't really elaborate much on these kinds of things. Perhaps a little suggestion or something you can check out is competitive programming. Have a good day ahead.

  • @dmitrykostromin
    @dmitrykostromin 2 роки тому

    Can you provide this code?

  • @frozonus9595
    @frozonus9595 2 роки тому

    🥺🚬🗿👍

  • @frozonus9595
    @frozonus9595 2 роки тому

    🧐🚬🗿👍

  • @frozonus9595
    @frozonus9595 2 роки тому

    👍🚬🗿

  • @noureddineel-faiz9308
    @noureddineel-faiz9308 2 роки тому

    if u want to make the proof in future and i hope that try to explain the elementary proof and thank u

  • @noureddineel-faiz9308
    @noureddineel-faiz9308 2 роки тому

    so where is the proof 🤔 this facts the half of the planet knows it .

  • @ucTran-bb1mt
    @ucTran-bb1mt 2 роки тому

    Thank you! It made my day.

  • @comedyclub333
    @comedyclub333 2 роки тому

    Hi there, wonderful video. Is the source available to play around with or even use it?

  • @comedyclub333
    @comedyclub333 2 роки тому

    I just quickly wanted to google how to create a RSA signature verifier as that's the only aspect I need. Well, didn't expect such an awesome channel solely dedicated to RSA. I really love it!

  • @terox3920
    @terox3920 2 роки тому

    But how do we know that M^e < N? If this isn't the case it wouldn't work right?

    • @romanvitek1366
      @romanvitek1366 Рік тому

      there is a restriction how big the e can be compared to N, also the N which is used in the algorithm is a huuuge number compared to e

    • @benhayter-dalgliesh5794
      @benhayter-dalgliesh5794 11 місяців тому

      We don't know this at all. This video is not the best explanation of RSA. We know that M<N due to restrictions placed on M, but M^e can and often is larger than N. Anyway, to answer your question, it still works. The exponentiation law at 3:20 actually applies to all values of A, not just values less than N. This is a huge flaw in the video. The proof for all values of A is actually quite simple. consider A^k, if we rewrite A as xn + r where x represents some constant, and r represents the remainder when divided by n, then A^k = (xn + r)^k Clearly A modn = r. (xn + r)^k produces (....) * n + r^k, so (xn + r)^k modN = r^k

    • @asmap3096
      @asmap3096 8 місяців тому

      @@benhayter-dalgliesh5794 i can't catch this

    • @asmap3096
      @asmap3096 8 місяців тому

      @@benhayter-dalgliesh5794 pls explain is M and n are relativel prime?

  • @AlexStormDrake
    @AlexStormDrake 3 роки тому

    At 14:45 you somehow take the M^1 out of the mod expression, which cannot be done, thus you cannot just simplify the other part to 1

    • @benhayter-dalgliesh5794
      @benhayter-dalgliesh5794 11 місяців тому

      You can do this here because the result, M, is less than N. If you have the mod of a product of 2 numbers, a and b, you can take a or b out so long as the result is less than n. AKA (ab)modN = a * (bmodN) if a * (bmodN) < N.

    • @AlexStormDrake
      @AlexStormDrake 11 місяців тому

      @@benhayter-dalgliesh5794 that makes sense, but why is that the case for M? Sorry its been 2 years I honestly forgot a bit. Thanks for the reply tho, that clears something up

    • @benhayter-dalgliesh5794
      @benhayter-dalgliesh5794 11 місяців тому

      @@AlexStormDrake Because M represents the message that is being encrypted/decrypted. And it is simply a condition that the message must be smaller than N. This is because the decryption process will never yield the original message if M > N because it is mod(N)

    • @benhayter-dalgliesh5794
      @benhayter-dalgliesh5794 11 місяців тому

      @@AlexStormDrake Note the decryption equation at 1:53, for this equation to work, M simply must be less than N

    • @benhayter-dalgliesh5794
      @benhayter-dalgliesh5794 11 місяців тому

      It is also worth noting that this video is not the best to watch to understand why RSA works. It has a few flaws, for example the modular arithmetic exponentiation law at 3:20 works for all values of a, not just when a<n. Showing the exponentiation law for a<n is incredibly pointless.

  • @n-gen7
    @n-gen7 3 роки тому

    Hello , you have instagram?)

  • @KNOWLEDGEREACTOR
    @KNOWLEDGEREACTOR 3 роки тому

    How can I think about cryptography, hearing this beautiful female voice...

  • @fermateducationalacademy
    @fermateducationalacademy 3 роки тому

    excellent sofia

  • @fermateducationalacademy
    @fermateducationalacademy 3 роки тому

    it is very useful for learners. Thank you madam . Please give details of bob and Alice

  • @sofiaflynn317
    @sofiaflynn317 3 роки тому

    Please note that Euler's Theorem is conventionally given as a^[phi(n)] mod n = 1 if gcd(a, n) is 1. Then have: M¹ ⋅ M^[phi(n)x] mod n (timestamp: 14:26) = M ⋅ (M^[phi(n)])ˣ mod n --> exponent rules = M ⋅ (M^[phi(n)] mod n)ˣ --> b/c aᵐ mod n = (a mod n)ᵐ = M ⋅ (1)ᵏ --> by Euler's Theorem = M ⋅ 1 = M Apologies for any confusion

    • @chang993
      @chang993 Рік тому

      the original formula should be {M ⋅ (M^[phi(n)])ˣ} mod n.

    • @asmap3096
      @asmap3096 8 місяців тому

      How we can tell that M and n are relatively prime? Please answer

    • @AdamBrandes
      @AdamBrandes 4 місяці тому

      ​@@asmap3096 their greatest common factor is 1

    • @catorlife
      @catorlife 2 місяці тому

      @@asmap3096 N equal p.q (multiplication of 2 prime numbers), of course it cannot be divisible by any random integer M

  • @Grand_Priest_Goku
    @Grand_Priest_Goku 3 роки тому

    that's not the euler's theorem. Euler's theorem states that if a and n are coprime, then a^(phi(n)) mod n = 1, there is no positive integer x that's in the exponent of a

  • @nguyenthanhlong137
    @nguyenthanhlong137 3 роки тому

    You are proving it using Euler's theorem but, Euler's theorem only work when GCD(M, n) = 1. So in the case that GCD(M, n) > 1 then this didn't prove how RSA still works in that situation

    • @benhayter-dalgliesh5794
      @benhayter-dalgliesh5794 11 місяців тому

      The Euler's theorem proof of correctness can be extended to show correctness for such cases, although in a practical system, GCD(M, n) > 1 is almost never the case. So proofs like this are generally considered good enough. But RSA does still work for GCD(M, n) > 1, it just requires a little extra maths to show it.

  • @cainrondow6505
    @cainrondow6505 3 роки тому

    Great video, thanks!!

  • @aitor.garcia
    @aitor.garcia 3 роки тому

    thanks so much really helpfull and interesting :) keep up the good work

  • @dragonslayer98767
    @dragonslayer98767 3 роки тому

    It's absolutely shocking how difficult it is to find proofs of well known theorems that go through the actual logic for why each steps was taken. Thank you for this.

  • @hayfordteye2268
    @hayfordteye2268 3 роки тому

    what IDE did you used

    • @SkillUpMobileGaming
      @SkillUpMobileGaming 2 роки тому

      At 1:40, she answered that question... did you even watch the video?

  • @saadmansuri4092
    @saadmansuri4092 3 роки тому

    ahh yes... beauty with brains.

  • @pegasushyper1444
    @pegasushyper1444 3 роки тому

    I am just starting to learn to code and I wonder is there a reason why you used vectors for the primality check? I coded a function which returns true if the given number is a prime number.

  • @punditgi
    @punditgi 3 роки тому

    Nicely done!

  • @1UniverseGames
    @1UniverseGames 3 роки тому

    Thanks for this tutorials. Can you please help me with one thing please if you have time. Can you please share your ua-cam.com/video/gtwOfvf1wrc/v-deo.html This video RSA source code or GitHub. engjahidhasan20@gmail.com is my email, if you have some time please kindly share this code and related materials to study. I will be grateful for your help.

  • @1UniverseGames
    @1UniverseGames 3 роки тому

    Nice tutorial. Can you please share this code or GitHub link. I'm writing my email address if you feel to share it. That would be very much helpful. engjahidhasan20@gmail.com