Hướng dẫn sử dụng

GravesZIP v1.0.0 — chính là bản hướng dẫn có sẵn trong ứng dụng

1. Về hướng dẫn này

Hướng dẫn này mô tả GravesZIP 1.0: các định dạng nó xử lý, cách mã hóa của nó hoạt động, nó bảo vệ những gì và không bảo vệ những gì, và cách dùng mọi phần của giao diện. Không có nội dung nào ở đây mô tả một tính năng không hoạt động; những gì đã lên kế hoạch nhưng chưa có được liệt kê đúng như vậy ở cuối phần Giao diện.

2. GravesZIP là gì

Một trình quản lý kho lưu trữ: nó đóng gói tệp vào kho lưu trữ, giải nén chúng ra, và có thể mã hóa những gì nó đóng gói.

Việc nén và mã hóa do SharpZipLib thực hiện, một thư viện mã nguồn mở lâu đời, chứ không được viết lại ở đây. Các kho lưu trữ GravesZIP tạo ra là tệp ZIP thông thường: kho không mã hóa mở được bằng bất cứ thứ gì, kể cả tính năng hỗ trợ kho lưu trữ tích hợp sẵn trong Windows và macOS. Kho đã mã hóa mở được trong bất kỳ chương trình nào hiểu mã hóa AES-256 của ZIP — 7-Zip, WinZip và các chương trình khác. Một số công cụ ZIP tích hợp sẵn, kể cả công cụ của chính Windows ở các phiên bản cũ, không hiểu AES và không mở được kho lưu trữ mã hóa do bất kỳ chương trình nào tạo ra; hãy dùng GravesZIP hoặc một trong các chương trình kể trên.

Nó không tạo kết nối mạng nào. Xem Tuyên bố quyền riêng tư.

3. Định dạng

Bản phát hành này xử lý ZIP.

zipĐọc và ghi, kể cả kho lưu trữ mã hóa AES-256.

Đó là toàn bộ danh sách, và nó ngắn có chủ đích. ZIP là dạng mà các thư được bảo vệ bằng mật khẩu của GravesMail được gửi đến, là thứ mọi trình nén khác đều đọc được, và làm một định dạng cho đàng hoàng thì đáng giá hơn làm nhiều định dạng nửa vời. Các định dạng khác sẽ được thêm vào; cho đến lúc đó, hướng dẫn này sẽ không nhận là có chúng.

7z, RAR, tar và các định dạng còn lại chưa được hỗ trợ. GravesZIP không bao gồm 7-Zip và không yêu cầu phải cài 7-Zip.

4. Mở thư được bảo vệ bằng mật khẩu

Một thư được bảo vệ bằng mật khẩu từ GravesMail được gửi đến dưới dạng tệp đính kèm tên là protected-message.zip. Hãy mở nó bằng GravesZIP và nhập mật khẩu mà người gửi đã đưa cho bạn qua kênh riêng — qua điện thoại hoặc tin nhắn, không bao giờ trong chính email đó.

Bên trong bạn sẽ thấy:

message.htmlBức thư. Mở nó để đọc nội dung.
attachment-01, attachment-02, …Các tệp đi kèm thư, dưới những cái tên trung tính.

Các tệp đính kèm được đổi tên có chủ đích. ZIP mã hóa những gì bên trong từng tệp nhưng để danh sách tên đọc được với bất kỳ ai cầm kho lưu trữ, nên một tệp tên là “layoff-list.xlsx” sẽ tự tố cáo mình trước khi có ai gõ mật khẩu. message.html mang các tên thật.

Việc mở một thư như vậy không đưa gì lên mạng, và cả GravesZIP lẫn GravesWare đều không bao giờ thấy mật khẩu.

5. Mã hóa

Mật khẩu đặt cho một tệp ZIP sẽ mã hóa nó bằng AES-256.

ZIP hỗ trợ hai thuật toán mã hóa, và một trong số đó đã bị phá. Thuật toán nguyên thủy, ZipCrypto, gục trước kiểu tấn công biết trước bản rõ trong vài giây trên phần cứng thông thường, và đó lại là thứ mà hầu hết công cụ — kể cả 7-Zip — áp dụng theo mặc định khi bạn đặt mật khẩu ZIP. GravesZIP không bao giờ dùng nó. Không có cài đặt nào cho nó, vì không có hoàn cảnh nào mà nó là lựa chọn đúng.

Những gì mã hóa không bảo vệ

ZIP không thể mã hóa danh sách tệp của chính nó. Tên, kích thước và dấu thời gian của mọi thứ bên trong vẫn đọc được với bất kỳ ai cầm kho lưu trữ, dù nội dung thì không. Đây là giới hạn của định dạng, không phải của GravesZIP, và không công cụ ZIP nào làm tốt hơn được.

Nếu bản thân tên tệp đã nhạy cảm, hãy đổi tên tệp trước khi đưa vào kho lưu trữ — đó chính là điều GravesMail làm khi nó ghi attachment-01 thay cho tên thật.

Tệp kho lưu trữ cũng có tên, kích thước và ngày sửa đổi của riêng nó, không thứ nào trong đó được mã hóa. Một kho lưu trữ tên là “resignation-letter.zip” đã nói quá nhiều rồi.

GravesZIP sẽ không giả vờ rằng mọi chuyện khác đi. Nếu bạn yêu cầu nó tạo một tệp ZIP mã hóa có danh sách tệp được ẩn, nó từ chối thay vì lặng lẽ ghi ra một tệp đọc được.

6. Mật khẩu

Mật khẩu đã quên thì không khôi phục được

Bạn không thể, GravesWare không thể, không ai có thể. Không có cửa hậu, không có khóa khôi phục và không có chức năng đặt lại. Nếu bạn làm mất nó, kho lưu trữ coi như mất. Mã hóa sinh ra là để như vậy.

Trước khi bạn xóa bản duy nhất của một thứ gì đó chỉ vì nó đã nằm trong một kho lưu trữ mã hóa: đừng.

Chọn mật khẩu

Mật khẩu là toàn bộ sự bảo mật. AES-256 không phải là điểm yếu và sẽ không bao giờ là điểm yếu; một mật khẩu dễ đoán mới là điểm yếu.

Độ dài thắng độ phức tạp. Vài từ không liên quan với nhau thì mạnh hơn và dễ nhớ hơn một chuỗi ngắn các ký tự thay thế. “correct horse battery staple” chống đoán mò tốt hơn nhiều so với “P@ssw0rd!”.

Đừng dùng lại mật khẩu bạn đang dùng ở bất kỳ nơi nào khác. Một kho lưu trữ có thể tồn tại lâu hơn tài khoản mà bạn mượn mật khẩu, và có thể rơi vào nơi bạn không định trước.

GravesZIP giữ nó ở đâu

Trong bộ nhớ, trong suốt thời gian thực hiện thao tác, và không ở đâu khác. Nó không bao giờ được ghi ra ổ đĩa. Không có tùy chọn “ghi nhớ mật khẩu này”, theo đúng chủ đích thiết kế.

Xem Tuyên bố quyền riêng tư để biết giới hạn của sự bảo vệ đó.

7. Mã hóa không phải là chữ ký

Mật khẩu chứng minh rằng người tạo kho lưu trữ biết mật khẩu đó. Nó không chứng minh họ là ai, và không chứng minh kho lưu trữ bạn nhận được chính là kho họ đã gửi — người biết mật khẩu có thể tạo một kho lưu trữ khác cũng mở được bằng mật khẩu ấy.

Mã hóa giữ cho nội dung không bị đọc. Xác định ai đã tạo ra một thứ là một bài toán khác, và chương trình này không giải bài toán đó.

8. Giải nén an toàn

Kho lưu trữ từ người khác là dữ liệu đầu vào không đáng tin cậy.

GravesZIP sẽ không ghi bất kỳ tệp nào ra ngoài thư mục bạn chọn. Có những kho lưu trữ chứa các đường dẫn như “../../.ssh/authorized_keys”, để một trình giải nén bất cẩn ghi vào bất cứ nơi nào đường dẫn trỏ tới. GravesZIP từ chối thẳng những kho này và dừng việc giải nén thay vì bỏ qua mục đó, nên một kho lưu trữ độc hại không thể lọt vào một phần.

GravesZIP không quét phần mềm độc hại trong những gì nó giải nén. Đó là việc của phần mềm diệt virus của bạn.

9. Kiểm tra kho lưu trữ

Tệp > Kiểm tra kho lưu trữ giải nén từng mục và kiểm tra nó so với giá trị tổng kiểm được lưu kèm, không ghi gì ra ổ đĩa. Lệnh này xác nhận kho lưu trữ còn nguyên vẹn và, với kho lưu trữ mã hóa, xác nhận mật khẩu là đúng. Nó hỏi mật khẩu nếu cần, và hỏi lại nếu mật khẩu đã nhập bị sai.

Câu trả lời được đưa ra bằng lời lẽ rõ ràng: hoặc mọi mục đã được kiểm tra và kho lưu trữ còn nguyên vẹn, hoặc có ít nhất một mục không khớp với giá trị tổng kiểm của nó và kho lưu trữ đã bị hỏng. Một kho lưu trữ bị hỏng vẫn có thể cho lấy ra một số tệp bằng Giải nén mục đã chọn; nếu có thể, hãy lấy một bản mới của nó.

Lệnh này không xác nhận kho lưu trữ đến từ đâu hay ai đã tạo ra nó.

Kết quả Kiểm tra kho lưu trữ trong GravesZIP, báo rằng mọi mục đã được kiểm tra và kho lưu trữ còn nguyên vẹn.
Kết luận của Kiểm tra kho lưu trữ, bằng lời lẽ rõ ràng.

10. Giao diện

Cửa sổ

Khi chưa mở kho lưu trữ nào, cửa sổ có hai nút Mở và Kho lưu trữ mới. Khi đã mở một kho, cửa sổ liệt kê những gì bên trong: tên và thư mục của từng mục, kích thước của nó, và lần sửa đổi gần nhất, theo thứ tự bảng chữ cái. Ổ khóa bên cạnh một hàng nghĩa là nội dung của mục đó được mã hóa.

Mọi thao tác với kho lưu trữ đều nằm trong menu Tệp, và cũng những thao tác đó có trên menu chuột phải: bấm chuột phải vào bất kỳ đâu trong cửa sổ, hoặc nhấn Shift+F10 hay phím Menu. Những thao tác cần có kho lưu trữ đang mở, hoặc cần có lựa chọn, bị làm mờ cho đến khi có.

Mở kho lưu trữ

Tệp > Mở, hoặc truyền đường dẫn của kho lưu trữ trên dòng lệnh — đó là điều xảy ra khi GravesZIP được đặt làm chương trình cho tệp .zip, hoặc khi một kho lưu trữ được thả lên biểu tượng của nó. Phiên bản Microsoft Store tự đưa mình vào danh sách “Mở bằng” của Windows cho tệp .zip.

Danh sách hiện ra ngay lập tức, kể cả với kho lưu trữ mã hóa. Đây không phải là lỗ hổng bảo mật: chỉ mục của ZIP không được mã hóa, nên tên, kích thước và ngày đọc được với bất kỳ ai cầm tệp.

Giải nén

Tệp > Giải nén tất cả giải nén mọi thứ. Tệp > Giải nén mục đã chọn chỉ giải nén những hàng bạn đã chọn — bấm vào một hàng, Ctrl+bấm hoặc Shift+bấm để chọn thêm. Chọn hàng của một thư mục là lấy theo mọi thứ bên trong thư mục đó.

Dù theo cách nào, hãy chọn nơi đặt các tệp. Đây là lúc kho lưu trữ mã hóa hỏi mật khẩu của nó, vì đây là thời điểm đầu tiên thực sự cần đến mật khẩu. Nếu mật khẩu sai, GravesZIP báo cho bạn và hỏi lại thay vì làm hỏng cả thao tác.

Không có gì được ghi cho đến khi đích đến của mọi mục đã được kiểm tra. Kho lưu trữ chứa một đường dẫn trỏ ra ngoài thư mục bạn đã chọn sẽ bị từ chối toàn bộ, nên nó không thể để lại một nửa nội dung của mình.

Kiểm tra

Tệp > Kiểm tra kho lưu trữ. Xem phần Kiểm tra kho lưu trữ ở trên.

Tạo kho lưu trữ

Tệp > Kho lưu trữ mới. Thêm các tệp và thư mục bạn muốn; mỗi thứ được liệt kê theo tên, bên dưới là thư mục chứa nó. Chọn mức nén, và đặt mật khẩu nếu muốn. Thư mục được thêm trọn vẹn, kể cả mọi thứ bên dưới nó, và giữ nguyên tên của nó bên trong kho lưu trữ.

Phần nén có ba mức chứ không phải một thang chín bậc:

Không nénCác tệp được lưu nguyên trạng. Nhanh nhất, và đáng chọn cho dữ liệu vốn đã được nén — ảnh chụp, video, hoặc kho lưu trữ nằm trong kho lưu trữ — khi việc ép thêm chẳng được gì mà lại tốn thời gian.
Bình thườngMặc định hợp lý.
Tối đaNhỏ hơn, chậm hơn. Phần được thêm so với Bình thường thường khiêm tốn; thời gian thì không.

Để trống mật khẩu nếu muốn một kho lưu trữ thông thường. Nhập một mật khẩu thì một ô thứ hai hiện ra để xác nhận, vì mật khẩu không khôi phục được: gõ nhầm sẽ khiến kho lưu trữ không đọc được ngay từ lúc nó được ghi, và sau đó không gì báo cho bạn biết được. Kèm theo đó là lời nhắc rằng tên tệp vẫn đọc được.

Kho lưu trữ mở ra ngay khi được ghi xong, để bạn thấy những gì đã vào trong đó thay vì phải tin suông.

Hộp thoại Kho lưu trữ mới trong GravesZIP với các tệp đã thêm, mức nén Bình thường được chọn, và mật khẩu đã nhập và xác nhận.
Kho lưu trữ mới, với các tệp đã thêm và mật khẩu đã đặt.

Đóng

Tệp > Đóng kho lưu trữ. Mật khẩu bị xóa khỏi bộ nhớ ngay lúc đó chứ không nấn ná đến khi chương trình thoát.

Phím tắt

Trên Windows và Linux, các phím tắt này dùng Ctrl; trên máy Mac là Command.

Ctrl+NKho lưu trữ mới
Ctrl+OMở
Ctrl+WĐóng kho lưu trữ
Ctrl+EGiải nén mục đã chọn
Ctrl+Shift+EGiải nén tất cả
Ctrl+TKiểm tra kho lưu trữ
Shift+F10Menu chuột phải (cũng là phím Menu)

Bản thân các menu mở bằng Alt và chữ cái được gạch chân: Alt+T cho Tệp, Alt+G cho Trợ giúp.

Những gì chưa có

Mở một tệp từ bên trong kho lưu trữ mà không giải nén, thêm tệp vào một kho lưu trữ đã có sẵn, và các định dạng khác ngoài ZIP.

11. Ngôn ngữ

GravesZIP có 55 ngôn ngữ. Chọn một ngôn ngữ từ Trợ giúp > Ngôn ngữ; danh sách ghi tên từng ngôn ngữ bằng chữ viết của chính nó, và ngôn ngữ hiện tại được đánh dấu.

Tiếng Anh (kể cả chính tả Anh và Úc), tiếng Tây Ban Nha (Tây Ban Nha và Mỹ Latinh), tiếng Pháp, tiếng Đức (kể cả tiếng Đức Thụy Sĩ), tiếng Bồ Đào Nha (châu Âu và Brazil), tiếng Ý, tiếng Ba Lan, tiếng Thổ Nhĩ Kỳ, tiếng Việt, tiếng Indonesia, tiếng Philippines, tiếng Hà Lan, tiếng Thụy Điển, tiếng Phần Lan, tiếng Romania, tiếng Croatia, tiếng Bosnia, tiếng Serbia (chữ Latinh và chữ Kirin), tiếng Mã Lai, tiếng Swahili, tiếng Yoruba, tiếng Igbo, tiếng Uzbek, tiếng Hy Lạp, tiếng Nga, tiếng Ukraina, tiếng Trung giản thể, tiếng Trung phồn thể (Hồng Kông), tiếng Nhật, tiếng Hàn, tiếng Thái, tiếng Hindi, tiếng Bengal, tiếng Tamil, tiếng Punjab, tiếng Marathi, tiếng Nepal, tiếng Gujarati, tiếng Odia, tiếng Telugu, tiếng Kannada, tiếng Malayalam, tiếng Amharic, tiếng Ả Rập (kể cả Ai Cập), tiếng Ba Tư, tiếng Urdu, tiếng Sindhi và tiếng Duy Ngô Nhĩ.

Lựa chọn có hiệu lực khi GravesZIP khởi động lại. Đây không phải là cách né một hạn chế: cửa sổ đọc ngôn ngữ vào lúc nó được dựng lên, và hướng trái sang phải hay phải sang trái của nó được cố định ngay lúc đó, nên đổi ngôn ngữ bên dưới một cửa sổ đang hiển thị sẽ khiến nó chỉ được dịch một nửa và quay sai hướng.

Khi bạn chưa chọn, GravesZIP dùng theo ngôn ngữ của hệ điều hành.

Tiếng Ả Rập, tiếng Ba Tư, tiếng Urdu, tiếng Sindhi và tiếng Duy Ngô Nhĩ bố trí giao diện từ phải sang trái. Nội dung của kho lưu trữ thì không bị lật: một đường dẫn như “docs/report.txt” giữ nguyên hướng trong mọi ngôn ngữ, vì dấu phân cách có nghĩa là phần bên trái chứa phần bên phải. Tên tệp và thư mục viết bằng bất kỳ hệ chữ nào vẫn hiển thị đúng trong danh sách.

12. Trợ năng

GravesZIP được làm ra để dùng được mà không cần nhìn.

Trình đọc màn hình

Mọi điều khiển có thể thao tác đều mang một cái tên mà trình đọc màn hình đọc lên được, kể cả các bảng tài liệu trong hộp Giới thiệu. Điều này được kiểm tra tự động ở mỗi bản dựng chứ không phải bằng mắt — một điều khiển không đọc lên được sẽ làm bản dựng thất bại.

Bàn phím

Có thể mở các menu bằng Alt và chữ cái được gạch chân, rồi di chuyển trong đó bằng các phím mũi tên. Hộp thoại đóng bằng Escape, và nút mặc định của hộp thoại đáp lại phím Enter.

Menu ngôn ngữ dùng các mục kiểu nút chọn một thay vì danh sách thả xuống, vì trình đọc màn hình sẽ đọc lên mục nào đang được chọn. Nhờ vậy người dùng khiếm thị nghe được ngôn ngữ nào đang có hiệu lực, thay vì phải tự suy ra.

Màu sắc và độ tương phản

GravesZIP mang màu của GravesWare, có một bản sáng và một bản tối đi theo thiết lập sáng hoặc tối của hệ thống. Mọi dòng chữ trong đó đều đạt chuẩn tương phản WCAG AA là 4,5 trên 1, và một bài kiểm thử tự động sẽ làm bản dựng thất bại nếu có thay đổi nào kéo một dòng xuống dưới mức đó. Không có gì được truyền đạt chỉ bằng màu sắc: một dòng đã mã hóa có biểu tượng ổ khóa, và trình đọc màn hình đọc là “Đã mã hóa”.

Khi hệ thống của bạn được đặt ở chế độ tương phản cao, GravesZIP gác màu riêng của mình lại và dùng giao diện mặc định của hệ thống. Bạn chọn những màu đó vì bạn cần chúng, và một ứng dụng tự tô lại đè lên lựa chọn ấy chỉ khiến chính nó khó đọc hơn.

Kích thước

Nút và ô nhập văn bản cao ít nhất 44 điểm ảnh, mức tối thiểu dễ dùng cho con trỏ, ngón tay hay một bàn tay không vững. GravesZIP khai báo với Windows rằng nó nhận biết tỷ lệ hiển thị, nên vẫn sắc nét ở 150% hoặc 200% thay vì bị kéo giãn và nhòe.

13. Hỗ trợ

GravesWare, LLC
support@gravesware.com

Địa chỉ này cũng có trên trang Giới thiệu (Trợ giúp > Giới thiệu GravesZIP), cùng nút Gửi email cho bộ phận hỗ trợ; nút này mở chương trình thư của chính bạn với địa chỉ và phiên bản đã điền sẵn. Không có gì được gửi đi cho đến khi bạn gửi.

Vui lòng cho biết bạn đang dùng phiên bản nào — hộp Giới thiệu có ghi — và hệ điều hành nào. Với bất cứ việc gì liên quan đến kho lưu trữ đã mã hóa, đừng gửi kho lưu trữ hay mật khẩu.