A Crash Course in Public Key Cryptography (a.k.a. Asymmetric Cryptography)

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 ธ.ค. 2024

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

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

    Hey bro, you really have a great way to deliver info, I have been watching this series and I am really thrilled.

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

    Great tutorial. Short and concise. I cannot thank you enough, Zach.

  • @sam-zy2dn
    @sam-zy2dn 4 ปีที่แล้ว +3

    So transparent and clear! thanks Zach!

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

    Hey Zach, thanks for the great video, I started watching it with a vague idea of how RSA and elliptic curves works and after pausing and researching for 2 hours about the math behind it I finally finished your video and understood everything! You have a great overall way of explaining the logic when it starts to integrate with the code. Thank you so much!

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

      That’s awesome, glad it clicked for you. Definitely took me a while to nail this topic myself!

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

    Thank you so much, Zach! I'm learning so much with this series!

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

    Damn man, going through the playlist today and WOW I learned so much that too so clearly. Thank you for putting in the efforts and giving thorough explanation of everything. :)

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

    This is the best explanation, thank you!

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

    this is the best explanation on public key cryptography. thank you.

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

    I always find find your videos very informative. You are a great teacher, I have learnt a lot from you. Thank you very much, I really appreciate it.

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

    BEST VIDEO EVER THANK YOU SO MUTCH :)))

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

    awesome video...clarified a lot of confusing topics for me

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

    Beautiful video!

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

    Hi Zach , its really an amazing series.
    Had a small doubt at 33:07 , we are signing the message with private key but also sending the originial message(plain message without hashed and encryped) for client to verify? Hacker can any way easily extract information from object packageOfDataToSend , then why are we sending both encrypted message and plain message ?

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

      Thanks! Glad you like it. Remember, when we are doing digital signatures, all we care about are two things:
      1. That the data wasn't modified by a hacker
      2. Ensuring the identity of the person is not fraudulent
      With digital signatures, we DO NOT care about protecting the originalData itself.

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

    very well explained thanks, god bless you, good continuation

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

    Bro, great video! I have a doubt. While verifying the signatures. We have created a hash of data and then encryted it. And at the receiver end, we have decrypted and checked it's value to the hash created at receiver end. My doubt is Why do we need to create a hash in first place? We can just encrypt the data. And recover will decrypt and verify the value to the original data.
    Another doubt is why do we need to convert our hash to 'hex' format in the above process?

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

    amazing videos but i have a question how did the hashed sha.. and the one the reciver created get matched while you have said that there is no chance that you get the same hash with the sha.. function

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

    thank you

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

    I don't quite understand why don't we just encrypt the originalData with the private key, instead we encrypt on its hash value?

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

      Which timestamp in the video are you referring to? Usually, we need to encrypt the hash value of data because sometimes, the size of the data that you are "signing" is going to be very large. If you wanted to sign a 5GB file, without hashing this, your JWT would take forever to authenticate over a network.

  • @NguyenVu-kg2yc
    @NguyenVu-kg2yc 2 หลายเดือนก่อน

    why don't you just send the hashed object instead of both the hash function and the object?

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

    When we encrypt our message with private key ,we have provided public key to all other users so anyone can decrypt our message so why are we using this technique?

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

      When we encrypt with a private key, we are "signing" (aka digital signature), but when we encrypt with a public key, we are masking the actual data. They are two completely separate techniques that you have to distinguish between. Start at 19:28 for data protection (signing with public key) and 25:10 for digital signatures (signing with private key).

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

    My 🧠 hurts.

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

    If only you can encrypt the data, why do you need to hash it? Wouldn't the fact that it can be decrypted with the public key be enough proof?

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

      Yes, it would be enough proof, but without a hash, it would 1) take up way more space in a database if you’re signing a large data payload 2) be much more difficult to verify the integrity of the data on the signature
      Encryption of data is 2-way. You can encrypt and decrypt the data with the correct key.
      Hashing is 1-way, so anyone who has a hash value also needs the original data it was created from, which they will then run through the hash function to verify the data they have produces the same hash value as the one they have.
      Last, hash values are small, and determinant length. This enables storage efficiency in a DB.

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

    hey man!
    one thing about your video making!
    pls don't paste all the code right away,
    I see the video to learn to code, not to learn ctrl+c & ctrl+v
    and nice video by the way

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

      Well you could pause the video and follow along or use his blog post zachgoll.github.io/blog/2019/choosing-authentication-strategy/#Authentication-Choices

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

      . yeah you can it semeed that you can find the code on the link below

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

    Mannn. The level of details you have put in these tutorials are amazing. It's sad most people haven't found your channel yet. I found you from freecodecamp.