What's the Best Hashing Algorithm for Storing Passwords?

Поделиться
HTML-код
  • Опубликовано: 8 сен 2024
  • If you’ve had to store sensitive user information in a database, you’ve probably heeded the advice to “just use bcrypt”. But do you know why? What other choices are there? In this video we take a deep look at bcrypt, pbkdf2, scrypt and argon2!
    Links:
    Big Machine: bit.ly/3AIbn6Q
    Michele's blog post on hashing: / password-hashing-pbkdf...

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

  • @DomskiPlays
    @DomskiPlays Год назад +10

    The fact that a video with this level of comedy (+ education) doesn't have more views is a crime against humanity I ain't gonna lie

  • @phicoding7533
    @phicoding7533 2 года назад +9

    You produce the content of somebody with 1,000,000 subscribers.
    I hope that one day your sub count will match with your content.

    • @big-machine
      @big-machine  2 года назад +1

      Thanks Phil! Yeah I been at this awhile but unfortunately been ignoring my channel. I'll get there!

  • @brdane
    @brdane 2 года назад +11

    One thing I heard some people say when asked about SHA-1 not being generating secure hashes, Someone asked about SHA-256 and said that it was significantly better, but there might still be risk. So, if that is the case, then that made me thing, "If it isn't secure enough, then someone will eventually is going to make an even more secure version of SHA... right?" And then that is when I found SHA-512. I read some people's opinion on it and they said that it was "overkill".
    That really got me thinking... why is it that when something like a hashing method, meant to protect data, has a flaw people point it out and hate that it is breakable... but when they do find something more secure (SHA-512, for example), they turn it away and call it 'overkill'? Isn't there no such thing as overkill when it comes to protecting your data?

    • @big-machine
      @big-machine  2 года назад +12

      This is a very good question, and the answer is based on two different things. The first is that hashes don't always protect your data - sometimes they just identify it. For instance, with a Git commit - that uses SHA-1 as the identifier with the idea that it will always be unique given your repo and code (it's a hash of the previous commit id, the date, and some other things). You want this to be super fast, thus the use of SHA-1. Some have protested because SHA-1 has collisions, but Linus has pushed back saying 256 and 512 are complete overkill and speed outweighs it.
      With passwords you don't want speed - you want a burden of some kind. When talking about security, you want to mitigate rainbow/preimaging attacks, which means you want to make it as hard as possible to create the hash in the first place without making your users angry. This is a whole different set of concerns than using the SHA family. Given their speed, SHA hashes should *never* be used for passwords.

  • @SamiEltamawy
    @SamiEltamawy Год назад +1

    I'm so impressed with your presentation skills that combine competence and humor. Thanks for making this video.

  • @whitewolf9671
    @whitewolf9671 2 года назад +6

    You deserve more subs

    • @rob-conery
      @rob-conery 2 года назад

      LOL thanks - getting there! I just booted my channel back up so... hopefully in time...

  • @EzequielRegaldo
    @EzequielRegaldo Год назад +5

    I hate it when solutions to real problems as covered in this video aren't popular like the "hello world" of most content creators.

  • @noelitonoelito
    @noelitonoelito Год назад +1

    Use a Bcrypt/Argon2 hash canoli. As long as the settings you choose are not too costly, issues resolved.

  • @m6t6ng6
    @m6t6ng6 10 дней назад

    great video ! keep it up

  • @tipithedhedhistar4132
    @tipithedhedhistar4132 2 года назад +2

    Do you believe that Argon 2 will be more resistant against the increases in computing speeds than Bcrypt?
    I am making a research paper for school about Bcrypt and examining the extent data we computing speeds will effect it and I would love your input on what could potentially happen to Bcrypt.

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

    Great content! Thanks for sharing.

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

    Thank you for the "ho ho ho" clarification

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

    amazing video!

  • @sunofabeach9424
    @sunofabeach9424 11 месяцев назад

    yeah bcrypt my beloved

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

    "then you get an e-mail from troy hunt" fuck

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

    "encryption is bad hashing is good." Hashing is a encryption method tf

    • @big-machine
      @big-machine  2 года назад +2

      Yeah you go ahead and tell people you encrypted passwords in your database friendo... good "Well Actually" tho

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

      @@big-machine im not sure what you mean exactly

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

      That highly depends on your definition of encryption, however most people generally tend to understand that encryption = two way cipher, and hashing = one way cipher. Depending on which definition of encryption you look at, 'technically' you _could_ be correct, but also that's not generally how these terms are used and I don't think anybody is being confused or misinformed by this statement. Either way I don't know why it even matters, it's a stupidly insignificant technicality that has nothing to do with the point of the video.

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

      encryption is not one way