Gistwarden - Trình quản lý mật khẩu mã hóa cá nhân

Trong thời đại số hiện nay, việc quản lý hàng trăm tài khoản với các mật khẩu khác nhau cùng các mã xác thực hai yếu tố (2FA / TOTP) là một bài toán nhức nhối với bất kỳ ai. Mặc dù có nhiều giải pháp cloud thương mại như Bitwarden, 1Password hay LastPass, nhưng việc giao toàn bộ dữ liệu nhạy cảm cho các server bên thứ ba luôn tiềm ẩn những nỗi lo về quyền riêng tư, rò rỉ dữ liệu hoặc chi phí duy trì hàng tháng.

Chính vì lý do đó, mình đã bắt tay vào xây dựng Gistwarden — một ứng dụng quản lý mật khẩu và mã 2FA cá nhân dựa trên triết lý Zero-Knowledge, mã hóa 100% tại Client và hỗ trợ linh hoạt cả 2 chế độ lưu trữ: Local Vault (hoàn toàn ngoại tuyến trên máy) và đồng bộ an toàn qua GitHub Gist riêng tư của chính bạn.

Giao diện danh sách Két sắt Gistwarden


🛡️ 1. Lý do ra đời: Tự chủ dữ liệu 100%

Một ứng dụng quản lý mật khẩu lý tưởng đối với mình phải thỏa mãn các tiêu chí:


🔒 2. Kiến trúc bảo mật Zero-Knowledge & Argon2id KDF

Kiến trúc bảo mật của Gistwarden được thiết kế theo nguyên tắc: Mọi thao tác mã hóa và giải mã chỉ diễn ra trên thiết bị của người dùng (Client-Side Encryption).

[ Master Password ] + [ Salt ] ──► (Argon2id WASM 64MB) ──► [ Encryption Key ]
                                                                   │
[ Plaintext Vault (Mật khẩu/2FA) ] ──► (AES-GCM-256) ──────────────┼──► [ Ciphertext JSON ]
                                                                             │
                                                                             ▼
                                                     [ Local Storage / GitHub Private Gist ]

Các lớp bảo mật cốt lõi:

  1. Khóa chống tấn công phần cứng Argon2id (WebAssembly): Gistwarden áp dụng thuật toán Argon2id (WebAssembly) với thông số 64 MB RAM, 3 vòng lặp (iterations) cho mỗi lần sinh khóa. Việc yêu cầu 64MB RAM khiến các thiết bị đào coin/GPU bị nghẽn cổ chai RAM và tăng chi phí tấn công brute-force lên hàng triệu lần. Nhân WASM của hash-wasm được mã hóa Base64 nhúng trực tiếp vào bundle JS, tuân thủ nghiêm ngặt tiêu chuẩn Content Security Policy (CSP) của Chrome Extension Manifest V3 và không tải bất kỳ script nào từ internet.
  2. Mã hóa đối xứng AES-GCM 256-bit: Dữ liệu két sắt được bảo vệ bằng chuẩn mã hóa đối xứng xác thực AES-GCM 256-bit với IV (Vector khởi tạo) 12-byte ngẫu nhiên cho mỗi lần lưu (crypto.getRandomValues). Bất kỳ sự can thiệp trái phép nào trên dữ liệu két sẽ khiến quá trình giải mã thất bại ngay lập tức.
  3. Mở khóa nhanh bằng mã PIN (Quick PIN Unlock): Cho phép thiết lập mã PIN ngắn để mở khóa nhanh phiên làm việc cục bộ mà không cần nhập lại Mật khẩu Master dài mỗi lần mở extension.

✨ 3. Các tính năng nổi bật của Gistwarden

🗝️ Két sắt Đa danh mục & Thư mục (Folders)

🎲 Trình tạo Mật khẩu & Cụm từ ghép Diceware (EFF Wordlist)

Giao diện Trình tạo mật khẩu Gistwarden

🛡️ Báo cáo Kiểm tra Bảo mật Vault (Vault Security Audit)

Giao diện Báo cáo bảo mật Vault Audit

🔄 Nhập / Xuất dữ liệu & Giải mã Google Authenticator

Giao diện Quản lý dữ liệu và Chuyển đổi 2FA

⏱️ Mã xác thực 2FA (TOTP) & Quét mã QR

⚡ Hỗ trợ Passkeys (FIDO2 / WebAuthn)

✨ Tự động điền (Autofill) & Gợi ý lưu thông minh


💻 4. Tech Stack & Trải nghiệm phát triển


📥 Tải xuống Browser Extension

Bạn có thể cài đặt trực tiếp Gistwarden Browser Extension cho trình duyệt của mình từ 2 cửa hàng tiện ích chính thức:


🚀 Lời kết

Gistwarden là một dự án cá nhân mang lại cho mình rất nhiều niềm vui khi áp dụng các kỹ thuật mã hóa hiện đại và làm chủ toàn bộ dữ liệu riêng tư của bản thân. Bạn có thể trải nghiệm thử Web Vault trực tiếp tại menu Gistwarden trên trang web này!

Cảm ơn bạn đã đọc bài viết! 💡