Hướng dẫn php encrypt and decrypt password - mã hóa php và giải mã mật khẩu

Cách tốt nhất để mã hóa và giải mã mật khẩu là sử dụng thư viện tiêu chuẩn trong PHP vì phương pháp mã hóa và giải mã mật khẩu đúng cách từ đầu rất phức tạp và liên quan đến nhiều khả năng của các lỗ hổng bảo mật. Sử dụng thư viện tiêu chuẩn đảm bảo rằng việc triển khai băm được xác minh và tin cậy.

Lưu ý: Điều này sử dụng API mật khẩu PHP có sẵn trong phiên bản 5.5.0 trở lên. This uses the PHP Password API available in version 5.5.0 and above.

Mã hóa mật khẩu: Để tạo hàm băm từ chuỗi, chúng tôi sử dụng & nbsp; hàm password_hash []. To generate a hash from the string, we use the password_hash[] function.

Syntax:

string password_hash[string $password, 
          mixed $algo, [array $options]]

Hàm password_hash [] tạo ra một hàm băm mật khẩu mới của chuỗi bằng một trong các thuật toán băm có sẵn. Tuy nhiên, nó trả về băm dài 60 ký tự, tuy nhiên, vì các thuật toán mới và mạnh hơn sẽ được thêm vào PHP, độ dài của băm có thể tăng. Do đó, nên phân bổ 255 ký tự cho cột có thể được sử dụng để lưu trữ băm trong cơ sở dữ liệu.password_hash[] function creates a new password hash of the string using one of the available hashing algorithm. It returns the hash that is currently 60 character long, however, as new and stronger algorithms will be added to PHP, the length of the hash may increase. It is therefore recommended to allocate 255 characters for the column that may be used to store the hash in database.

Các thuật toán sau đây hiện đang được hỗ trợ khi sử dụng chức năng này:

  • PASSWORD_DEFAULT
  • PASSWORD_BCRYPT
  • PASSWORD_ARGON2I
  • PASSWORD_ARGON2ID

Các tùy chọn bổ sung có thể được chuyển cho chức năng này có thể được sử dụng để đặt chi phí mã hóa, muối sẽ được sử dụng trong quá trình băm, vv trong mảng Tùy chọn $.$options array.

Ví dụ dưới đây hiển thị phương thức sử dụng phương thức password_hash []:password_hash[] method:

Example:

PHP

Chủ Đề