Thử nghiệm Argon2
Tính hash Argon2id, Argon2i hoặc Argon2d với bộ nhớ, số vòng lặp, mức song song, salt và secret của riêng bạn. Xuất chuỗi PHC và hỗ trợ xác minh.
19 MiB bộ nhớ
Băm có khóa (đầu vào K của Argon2). Nó không được lưu trong chuỗi đã mã hóa, nên bạn cần nhập lại khi xác minh.
Argon2 (RFC 9106) đã thắng cuộc thi Password Hashing Competition. Biến thể khuyên dùng là Argon2id; mức tối thiểu của OWASP: m=19 MiB, t=2, p=1. Được tính bằng hash-wasm (WebAssembly) ngay trong trình duyệt.
Xác minh mật khẩu với chuỗi hash
Chạy hoàn toàn trong trình duyệt. Dữ liệu của bạn không bao giờ bị tải lên.
Thử nghiệm Argon2id là gì?
Băm mật khẩu bằng Argon2 (RFC 9106), thuật toán thắng cuộc thi Password Hashing Competition, và điều chỉnh mọi tham số: biến thể, số vòng lặp, bộ nhớ, mức song song, độ dài hash, kiểu mã hóa salt và khóa bí mật tùy chọn. Kết quả hiển thị dưới dạng hex thô và chuỗi PHC chuẩn.
Cách sử dụng Thử nghiệm Argon2id
- Nhập Mật khẩu và chọn Biến thể (khuyên dùng Argon2id).
- Đặt Số vòng lặp (t), Bộ nhớ (KiB), Mức song song (p) và Độ dài hash (byte).
- Nhập Salt dạng văn bản, hex hoặc Base64, hoặc để trống để dùng salt ngẫu nhiên 16 byte.
- Nhấn Băm; sao chép chuỗi đã mã hóa hoặc hex thô và xác minh ở khung bên dưới.
Ví dụ
Mật khẩu password, salt somesalt (văn bản), Argon2id, t=2, m=65536, p=1, 32 byte
$argon2id$v=19$m=65536,t=2,p=1$c29tZXNhbHQ$CTFhFdXPJO1aFaMaO6Mm5c8y7cJHAph8ArZWb2GRPPc
Cùng kết quả với argon2 CLI tham chiếu và argon2-cffi.
Khi nào nên dùng Thử nghiệm Argon2id
Dùng để tinh chỉnh tham số, tái tạo vector tham chiếu hoặc gỡ lỗi hash Argon2 từ các thư viện như libsodium, argon2-cffi hay password_hash của PHP. Thiết lập bộ nhớ cao có thể chậm hoặc thất bại trên điện thoại.
Thử nghiệm Argon2id hoạt động như thế nào
Argon2 lấp đầy m KiB bộ nhớ bằng các khối suy ra từ BLAKE2b, rồi duyệt t lượt qua vùng nhớ đó: địa chỉ phụ thuộc dữ liệu với Argon2d, không phụ thuộc dữ liệu với Argon2i, và kết hợp cả hai với Argon2id. Đầu ra được mã hóa thành $argon2id$v=19$m=…,t=…,p=…$<salt>$<hash> bằng Base64 không đệm. Việc tính toán dùng hash-wasm (WebAssembly) trong trình duyệt; secret tùy chọn là đầu vào K của băm có khóa và không được đưa vào chuỗi.
Các Trường Hợp Sử Dụng Phổ Biến
- Chọn thiết lập bộ nhớ và số vòng lặp cho máy chủ
- Tái tạo test vector của Argon2
- Xác minh chuỗi PHC do thư viện khác tạo ra
- Giảng dạy ảnh hưởng của tham số Argon2 lên chi phí tính toán
Câu Hỏi Thường Gặp
OWASP khuyến nghị tham số nào?
Argon2id với tối thiểu m=19 MiB, t=2, p=1, hoặc các phương án đánh đổi tương đương như m=46 MiB, t=1, p=1.
Argon2id, Argon2i hay Argon2d?
Argon2id cho việc băm mật khẩu. Argon2d dễ bị tấn công kênh kề, còn Argon2i yếu hơn trước các tấn công đánh đổi bằng GPU.
Mức song song có làm nhanh hơn ở đây không?
Không. Trình duyệt tính các lane tuần tự, nhưng tham số này vẫn làm thay đổi kết quả, nên phải khớp với giá trị máy chủ của bạn dùng.