Cập nhật ngày 25 tháng 10 năm 2026
Quyền riêng tư
OfflineMask được làm để thông tin riêng không phải rời khỏi máy bạn. Trang này nói rõ ứng dụng làm gì với dữ liệu, lưu gì, ở đâu, và khi nào dùng mạng.
Tóm tắt
- Xử lý trên máy. Nhận diện, ẩn và khôi phục chạy trên máy tính của bạn.
- Không thu thập. Không tài khoản, không thống kê sử dụng, không quảng cáo.
- AI chỉ thấy mã. Bạn tự gửi bản đã ẩn; OfflineMask không kết nối với AI nào.
- Lưu khi bạn muốn. Lịch sử chỉ được lưu, có mã hóa, khi bạn đặt mật mã.
1Nguyên tắc
- Trên máy trước tiên. Mọi bước xử lý nội dung đều chạy trên máy bạn, kể cả khi không có mạng.
- Không giữ những gì không cần. Ứng dụng không có máy chủ để gửi dữ liệu về, và không ghi lại những gì bạn làm.
- Bạn quyết định. Gửi gì cho AI, có lưu lịch sử hay không, có tải gói tiếng Việt hay không: đều do bạn chọn.
2Dữ liệu đi qua ứng dụng thế nào
- Bạn đưa nội dung vào: dán văn bản, mở tệp, hoặc bôi đen chữ trong ứng dụng khác.
- OfflineMask nhận diện số điện thoại, số tài khoản, email, CCCD… (và họ tên, địa chỉ nếu có gói tiếng Việt), ngay trên máy.
-
Thông tin riêng được thay bằng mã như
[SDT_1_4e8c]. Bảng đối chiếu giữa mã và thông tin thật ở lại trên máy. - Bạn tự gửi bản đã ẩn sang công cụ AI bạn chọn.
- Khôi phục: khi đưa câu trả lời vào lại, mã được đổi về thông tin thật, cũng ngay trên máy.
3Ứng dụng lưu gì, ở đâu
| Dữ liệu | Nơi lưu | Giữ trong bao lâu |
|---|---|---|
| Văn bản, tệp và bảng đối chiếu (chưa đặt mật mã) | Bộ nhớ của ứng dụng | Đến khi bạn thoát ứng dụng |
| Lịch sử (đã đặt mật mã) | Tệp mã hóa sessions.vault trong thư mục dữ liệu của ứng dụng |
Tự xóa sau 30 ngày (bạn chọn 1, 7, 30 hoặc 90 ngày trong Cài đặt), hoặc sớm hơn khi bạn xóa |
| Gói nhận diện tiếng Việt (tùy chọn) | Thư mục dữ liệu của ứng dụng | Đến khi bạn gỡ |
| Cài đặt (giao diện, thời hạn lịch sử, thao tác nhanh, danh sách nơi hiện nút OfflineMask) | Trên máy | Đến khi bạn thay đổi |
Về mã hóa lịch sử: khóa được tạo từ mật mã 6 chữ số của bạn bằng Argon2id, nội dung được niêm phong bằng XChaCha20-Poly1305. Mật mã không được lưu ở đâu cả, nên quên mật mã thì không ai mở lại được, kể cả chúng tôi; khi đó bạn chỉ có thể xóa lịch sử và bắt đầu lại.
4Khi nào ứng dụng dùng mạng
OfflineMask chỉ dùng mạng trong bốn trường hợp, và đều do bạn bấm:
| Khi nào | Kết nối tới | Gửi đi những gì |
|---|---|---|
| Bạn tải ứng dụng | Microsoft Store (Windows), hoặc máy chủ tệp của GitHub (Mac, Linux) | Yêu cầu tải tệp thông thường |
| Bạn tải gói tiếng Việt trong Cài đặt | Kho tệp của dự án (Cloudflare R2) | Yêu cầu tải tệp; không kèm nội dung hay thông tin của bạn |
| Bạn bấm một liên kết trong ứng dụng | Trang đó, mở trong trình duyệt của bạn | Như khi bạn tự mở trang |
| Bạn bấm Mở trang báo lỗi, rồi bấm Gửi trên trang đó | Trang báo lỗi trên OfflineMask.com, mở trong trình duyệt của bạn | Đúng những gì bạn viết và thấy trên trang, cùng phiên bản ứng dụng, hệ điều hành và màn hình đang mở. Ứng dụng không gửi gì; chỉ khi bạn bấm Gửi trên trang thì trình duyệt mới gửi |
Địa chỉ và mã SHA-256 của từng tệp trong gói được ghi cố định trong tệp mô tả gói, nên ứng dụng chỉ nhận đúng tệp đã công bố. Ngoài bốn trường hợp trên, OfflineMask không có kết nối nào khác: không tự cập nhật, không báo lỗi tự động, không thống kê. Giao diện ứng dụng còn bị chặn kết nối ra ngoài bởi chính sách bảo mật nội dung.
Thành phần của hệ điều hành. Giao diện của OfflineMask chạy trong trình
hiển thị web có sẵn của hệ điều hành: Microsoft Edge WebView2 trên Windows, WebKit trên
macOS và Linux. Thành phần này do Microsoft hoặc Apple quản lý và có thể tự kết nối mạng
dù OfflineMask không yêu cầu. Trên Windows, WebView2 tự kiểm tra bản cập nhật cho thành
phần của nó tại edge.microsoft.com, và tra tên miền qua máy chủ DNS mà máy
bạn đang dùng, có khi theo giao thức DNS qua HTTPS (ví dụ dns.google nếu máy
dùng DNS của Google). Các kết nối này không mang nội dung, tệp hay thông tin bạn đưa vào
OfflineMask, và thuộc
chính sách của Microsoft.
Bản cài từ Microsoft Store được Store cập nhật, theo cài đặt Store trên máy bạn.
5Ẩn nhanh và quyền hệ thống
Ẩn nhanh cho phép bôi đen chữ trong ứng dụng khác rồi bấm nút OfflineMask hoặc ⌘⇧M (Ctrl+Shift+M). Để làm được, ứng dụng cần một số quyền, và dùng chúng hẹp nhất có thể:
- Đọc phần bạn bôi đen, mỗi lần bạn bôi đen, chỉ khi nút nổi đang bật. Trên macOS cần quyền Trợ năng; trên Windows dùng UI Automation của hệ thống.
- Nút chỉ hiện ở nơi có AI: các ứng dụng AI (ChatGPT, Claude…) và các trang AI trong trình duyệt (chatgpt.com, gemini.google.com…), theo một danh sách bạn xem và sửa được trong Cài đặt › Thao tác nhanh. Ở ứng dụng khác, phần bôi đen không được đọc; chỉ khi bạn nhấn ⌘⇧M (Ctrl+Shift+M). Trong trình duyệt, OfflineMask đọc địa chỉ của trang đang bôi đen, chỉ dùng tên miền để so với danh sách, và không lưu lại. Nút không hiện ở thanh địa chỉ hay ô đặt tên tệp.
- Chỉ theo dõi thao tác chuột để biết khi nào bạn vừa bôi đen xong. Ứng dụng không bao giờ ghi lại phím bạn gõ.
- Thay chữ tại chỗ khi bạn bấm nút hoặc ⌘⇧M. Trong ứng dụng gốc của macOS (TextEdit, Ghi chú…), OfflineMask đọc và thay phần bôi đen qua quyền Trợ năng, không đụng tới bộ nhớ tạm. Ở trình duyệt và ứng dụng web, việc đó cần một lần sao chép và một lần dán: trước đó toàn bộ bộ nhớ tạm của bạn (cả ảnh, tệp, chữ có định dạng) được giữ lại, và được trả lại ngay khi việc thay xong (hoặc khi không thay nữa), trừ khi bạn vừa sao chép thứ khác. Những gì OfflineMask tự đặt vào bộ nhớ tạm được đánh dấu để trình quản lý bộ nhớ tạm bỏ qua và không gửi sang thiết bị khác. Kết quả không ở lại bộ nhớ tạm. Trước khi thay, ứng dụng kiểm tra phần bôi đen vẫn là đoạn vừa ẩn; nếu không, kết quả hiện trong một khung để bạn tự sao chép.
- Không đọc ngầm. Bộ nhớ tạm và phần bôi đen chỉ được đọc khi bạn ra lệnh, và không được lưu lại.
OfflineMask không đọc ô mật khẩu và chính cửa sổ của nó. Bạn có thể tắt mọi thao tác nhanh trong Cài đặt › Thao tác nhanh, hoặc thu hồi quyền Trợ năng trong Cài đặt hệ thống bất cứ lúc nào.
6Công cụ AI bạn dùng
OfflineMask không kết nối với ChatGPT, Claude, Gemini hay công cụ AI nào. Bạn tự sao chép bản đã ẩn sang đó, và dịch vụ ấy xử lý nội dung theo chính sách của họ. Vì thế hãy xem lại bản đã ẩn trước khi gửi: OfflineMask tự nhận diện phần lớn thông tin riêng, nhưng bạn luôn là người quyết định cuối cùng.
7Trang web này
Mục này nói về trang web, không phải ứng dụng: những gì ở các mục trên vẫn giữ nguyên. OfflineMask.com là trang tĩnh, phục vụ qua Cloudflare. Trang không dùng cookie, tự lưu trữ phông chữ và không tải tài nguyên từ bên thứ ba. Số phiên bản mới nhất và các nút tải về do một đoạn mã nhỏ của trang trên Cloudflare tra từ GitHub, để trang luôn trỏ tới bản mới nhất. Mỗi lần bạn bấm tải, đoạn mã này đếm thêm một lượt cho loại bản tải (Mac, Windows, Linux) trong ngày đó; không kèm địa chỉ IP, cookie hay bất cứ gì nhận ra bạn. Khi bạn bấm Gửi trên trang báo lỗi, đoạn mã này lưu đúng nội dung trên trang (loại lỗi, lời bạn viết, phiên bản, hệ điều hành và màn hình) cùng thời điểm gửi; cũng không kèm địa chỉ IP hay cookie. Bấm tải bản cho Mac hay Linux thì tệp đến từ máy chủ tệp của GitHub. Cloudflare xử lý địa chỉ IP và thông tin kỹ thuật của yêu cầu để phục vụ trang, và cho chúng tôi xem số liệu tổng hợp như số lượt truy cập, theo chính sách của Cloudflare.
8Tự kiểm chứng
- Tắt Wi‑Fi rồi dùng thử: ẩn và khôi phục vẫn chạy bình thường.
-
Theo dõi kết nối bằng công cụ như Little Snitch hay LuLu. Trên Windows,
kết nối của WebView2 tới
edge.microsoft.comnêu ở mục 4 là của thành phần hệ điều hành, không phải của OfflineMask. - Đọc mã nguồn công khai trên GitHub.
9Thay đổi và liên hệ
Khi cách ứng dụng xử lý dữ liệu thay đổi, trang này được cập nhật cùng ngày, và mọi thay đổi đều xem được trong lịch sử mã nguồn. Gặp lỗi, hãy dùng trang báo lỗi (trong ứng dụng: thanh bên › Báo lỗi). Câu hỏi khác, hãy mở một issue trên GitHub.