sql >> Databáze >  >> RDS >> Mysql

Základní zabezpečení, PHP mySQl

Pár věcí zde:

  1. Ve skutečnosti to nešifrujete, ale hashujete. Pro nováčky je snadné zmást, ale chtěl jsem tomu zabránit.

  2. Nepoužívejte MD5, prostě to není příliš bezpečný hash. Pokud je to možné, použijte raději jednu z variant SHA.

  3. Heslo nezahašujte jen tak, budete ho chtít „osolit“. V zásadě to zahrnuje přidání náhodného řetězce k heslu, než jej zahašujete, a uložení tohoto náhodného řetězce někam, kde jej můžete později načíst (abyste mohli hash ověřit, když uživatel zadá své heslo). To pomáhá předcházet útokům na předem vypočítaný slovník.

Pokud jde o generování hesla, myslím, že jste na správné cestě - prostě bych ho vygeneroval, když si vytvoří svůj účet, poslal bych mu ho e-mailem, pak ho zahašoval a uložil hash (a náhodnou sůl) do záznamu uživatele v DB.



  1. Jak spustit skript Oracle sql prostřednictvím kódu Java

  2. datetime2 vs datetimeoffset v SQL Server:Jaký je rozdíl?

  3. MySqlDb vyvolá Operand by měl obsahovat 1 sloupec(y) na příkazu insert ignore

  4. Vytvořit tabulku mysql přímo ze souboru CSV pomocí modulu úložiště CSV?