Posts

Băm mật khẩu đúng cách

1/ Sử dụng scrypt, bcrypt, PBKDF2 hoặc argon2. Thuật toán nào trong số này cũng được, cứ chọn một cái mà dùng, thay thế cho MD5, SHA2, v.v.
2/ Băm _mỗi_ mật khẩu với một "muối" (salt) ngẫu nhiên dài 64 bit. Muối này không cần phải giữ bí mật, lưu chung với chỗ lưu mật khẩu cũng được.
3/ (Nâng cao) Băm _tất cả_ mật khẩu với một "tiêu" (pepper) ngẫu nhiên dài 128 bit. Tiêu này cần được giữ bí mật, lưu ở một máy chủ khác với chỗ lưu mật khẩu.
Tại sao phải làm những bước này? Tại sao thêm muối thôi không đủ? Tại sao cần phải có cả tiêu?
Các câu hỏi này tôi để dành cho các bạn sinh viên như là bài tập về nhà. Các bạn có thể trả lời vào phần comment bên dưới hoặc là email cho tôi ở thaidn@gmail.com.

Khoe cho các bạn sinh viên có cảm hứng trả lời câu hỏi: tôi thiết kế thuật toán băm mật khẩu đang được Google sử dụng để bảo vệ mật khẩu của tất cả người dùng.

Người Việt Nam chọn mật khẩu như thế nào?

(vào đây để kiểm tra xem thông tin cá nhân của bạn có bị lộ hay không - công cụ này do anh Quân Nguyễn Đức xây dựng)

Trong số 160 triệu tài khoản VNG bị lộ có gần 75 triệu tài khoản là của những người có thể xác định được chính xác ngoài đời. Gắn với 75 triệu tài khoản này là hơn 22 triệu mật khẩu (vì ý tưởng lớn gặp nhau, người ta hay chọn mật khẩu giống nhau -- các bạn có biết là có website hẹn hò chuyên ghép đôi những người chọn cùng mật khẩu?)

Các mật khẩu này được mã hóa với một thuật toán rất dễ bị bẻ gãy (dành cho dân trong nghề: thuật toán MD5, một round duy nhất, không salt gì cả). Tôi tin đây là vụ lộ mật khẩu của người Việt Nam lớn nhất từ xưa đến nay và việc bẻ khóa các mật khẩu này sẽ cung cấp một nguồn thông tin hiếm hoi về cách mà người Việt Nam chọn những bí mật riêng tư nhất của mình. Việc phân tích các mật khẩu sẽ giúp chúng ta biết được mật khẩu nào yếu và từ đó chọn cho mình mật khẩu tốt nhất. Và đương nhiên ai mà không muốn biết thằng Tèo nhà hàng xóm chọn mật khẩu…

Vụ lộ 160 triệu tài khoản của VNG

Cập nhật 2/5/2018: con số tài khoản có thông tin cá nhân tăng từ 34 triệu lên 75 triệu vì tôi tính luôn những tài khoản có tên và ngày sinh. Tôi thấy tính như vầy chính xác hơn.

Cập nhật 5/5/2018: vào đây để xem có lộ thông tin hay không. Công cụ do bạn Quân Nguyễn Đức làm.

Cập nhật 9/5/2018: Google đã gửi thông báo cho khoảng 500.000 người có tài khoản Gmail bị lộ mật khẩu.

Cuối tuần rồi, ngay trước kỳ nghỉ lễ dài ngày ở Việt Nam, một người nào đó tung lên mạng bộ cơ sở dữ liệu người dùng của VNG, công ty game và Internet lớn nhất Việt Nam. Tôi tìm được một bản copy và tôi đánh giá đây là dữ liệu thật, trải dài từ 2005 đến giữa năm 2015, chứa khoảng 160 triệu tài khoản, bao gồm thông tin cá nhân, mật khẩu và câu trả lời cho câu hỏi bí mật. Đây là vụ lộ dữ liệu lớn nhất trong lịch sử ở Việt Nam, có thể xem là một vụ Equifax của Việt Nam. Nếu bạn từng chơi game hay sử dụng các sản phẩm của VNG, bạn nên đổi mật khẩu và câu trả lời cho câu hỏi bí mật càng sớm càng tốt.

Nếu có thời gian t…