Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để sử dụng AES_ENCRYPT đúng cách?

Thông thường, thực tế không cần phải mã hóa ngược mật khẩu. Có khả năng đó làm giảm tính bảo mật của hệ thống. Thay vào đó, hãy sử dụng một hàm băm không thể đảo ngược. Tôi đề xuất SHA-256 (hoặc lớn hơn) tạo ra kết quả chuỗi:

 SHA2 (CONCAT (user.name, user.password, 'some salt', user.id), 256)

Tôi cũng đã thất vọng với hàng loạt bảng cầu vồng khỏi bất kỳ mục đích sử dụng nào bằng cách sử dụng dữ liệu khác luôn được biết đến tại thời điểm xác thực mật khẩu.

SHA2 yêu cầu MySQL 5.5 trở lên. Nếu bạn đang sử dụng phiên bản cũ hơn, SHA1() gần như tốt và nói chung là tốt hơn nhiều so với MD5 , AES , v.v.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chọn N bản ghi tuyệt vời nhất trong X nhóm

  2. Cách sử dụng GROUP_CONCAT trong CONCAT trong MySQL

  3. Chọn bản ghi tăng dần trong MySQL và lưu vào csv bằng Python

  4. Nhận tất cả các bài đăng có một thẻ cụ thể và giữ tất cả các thẻ khác trên kết quả bằng SQL

  5. Ứng dụng trò chuyện trên web sử dụng Công nghệ thăm dò ý kiến ​​dài với PHP, MySQL và jQuery