• Possibly linux@lemmy.zip
    link
    fedilink
    English
    arrow-up
    0
    ·
    2 months ago

    You should never be sending passwords to a server. That is really bad practice. The right answer is to use cryptography to verify the client knows the password.

    • bjorney@lemmy.ca
      link
      fedilink
      arrow-up
      0
      ·
      2 months ago

      Client side verification is just security by obscurity, which gains you very little.

      If someone is capable of MITM attacking a user and fetching a password mid-transit to the server over HTTPS, they are surely capable of popping open devtools and reverse engineering your cryptographic code to either a) uncover the original password, or b) just using the encrypted credentials directly to authenticate with your server without ever having known the password in the first place

      • Possibly linux@lemmy.zip
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 months ago

        That assumes that an adversary has control of the browser. The big reason you don’t want to send passwords over https is that some organizations have custom certs setup. It is better to just not send the password at all.