Tới nội dung chính

Trang này chưa được dịch sang Tiếng Việt nên đang hiển thị bằng tiếng Anh. Bản thân phần mềm thì đã dịch đầy đủ sang Tiếng Việt.

Tính năng

Tính năng

Những gì thực sự đã được xây, đã kiểm thử và đang chạy. Thứ gì còn dở dang thì được nêu tên ngay trên trang này chứ không nói bóng gió.

Nén tự chọn lấy sự đánh đổi của mình

Ba chế độ, một quyết định

Lightning cho tốc độ, Balanced cho ở giữa, Compact cho kích thước. Bảng chọn nói thẳng cái nào nhanh nhất và cái nào nhỏ nhất thay vì giấu sau một con số từ 1 đến 9.

JAB-RIFT, viết từ đầu

Bộ tìm chuỗi trùng, một tầng Huffman chuẩn tắc và bảng giải mã hai cấp — tất cả đều là mã của chính dự án này. Không có thư viện nén của bên thứ ba nào được liên kết vào phần mềm.

Dùng mọi nhân, trong một hạn mức bộ nhớ

Các khối được nén song song trên số bộ xử lý bạn cho phép, bên trong trần bộ nhớ bạn đặt trong Cài đặt. Trần thấp hơn thì vẫn chạy xong; chỉ là ít chồng lấn hơn.

Từ điển dùng chung cho các tệp giống nhau

Nhiều bản sửa của một tài liệu, các bản xuất cùng một lược đồ, nhật ký cùng một định dạng: một từ điển dựng chung cho chúng đã đo được còn 16,7% kích thước so với kho lưu trữ tạo ra từ chính các tệp đó mà không có nó. Mặc định nó tắt, vì trên một thư mục hỗn hợp thì nó chẳng được gì.

Định dạng

Tạo .jab, .zip và .7z

.jab là định dạng gốc: ghi nhanh nhất, có mã kiểm tra từng khối, và là định dạng duy nhất trong ba cái mang được mật khẩu ở đây. .zip và .7z được ghi đúng chuẩn thông thường để mọi công cụ khác mở ra mà không phàn nàn gì.

Đọc .jab, .zip, .7z và .tar

Store và deflate cho ZIP, thư mục LZMA2 cho 7z kể cả bộ lọc nhánh x86 khi đọc, ustar với tên dài kiểu GNU cho tar.

Thành thật về các định dạng phổ thông

Một tệp .zip ghi ở đây không có AES, không có dấu thời gian mở rộng và không có quyền kiểu Unix. Một tệp .7z có một thư mục LZMA2 cho mỗi khối liền và không có bộ lọc riêng cho từng tệp. Muốn nén tốt hơn, muốn SHA-256 từng khối hay muốn mật khẩu thì câu trả lời là .jab.

Bảo vệ

AES-256-GCM qua Windows CNG

Mỗi khối một bản ghi, nonce 96 bit và thẻ xác thực 128 bit, lấy từ chính cài đặt của hệ điều hành. Dự án này không tự nghĩ ra thuật toán mật mã nào.

Tên tệp và mã băm cũng được mã hoá

Bản kê — tên tệp, kích thước, dấu thời gian, thuộc tính — là một bản ghi mã hoá, và bảng khối chứa các giá trị SHA-256 và CRC-32C của từng khối cũng vậy.

Một lần dẫn xuất là biết mật khẩu sai

Một thẻ xác thực trên bản rõ rỗng cho trình đọc biết mật khẩu sai chỉ sau một lần dẫn xuất PBKDF2, thay vì sau khi giải mã cả kho lưu trữ.

Bản ghi phục hồi

Dành 1–30% dữ liệu dự phòng bên trong một tệp .jab và một khối hư hỏng có thể được dựng lại chứ không chỉ được báo cáo. Nó phải được thêm vào trước khi hư hỏng xảy ra, và chỉ .jab mới mang được.

Toàn vẹn

Luôn có CRC-32C, mặc định có SHA-256

Mỗi khối đều mang một CRC-32C; SHA-256 cho từng khối thì bật sẵn trừ khi bạn tắt đi. Cái thứ nhất nói một khối bị sai, cái thứ hai làm cho khả năng bỏ sót âm thầm gần như bằng không.

Hai kiểu kiểm tra

Kiểm tra kỹ đọc phần đầu, phần cuối, bảng khối và bản kê xem có nhất quán không, rồi giải mã mọi khối. Chỉ giải mã thì bỏ qua lượt kiểm tra cấu trúc. Cả hai đều không ghi ra tệp nào.

Nói thẳng

Không kiểu kiểm tra nào nói được rằng kho lưu trữ chưa bị can thiệp: ai sửa được dữ liệu thì cũng tính lại được cả hai giá trị. Chỉ kho lưu trữ có mật khẩu mới trả lời được câu hỏi đó.

Ghi xong mới đổi tên

Kho lưu trữ được ghi vào một tệp .partial rồi mới đổi tên khi đã hoàn chỉnh, nên một lần chạy bị ngắt giữa chừng không bao giờ để lại thứ trông như đã xong.

Công cụ

Chia và ghép

Ghi .001, .002, … cạnh kho lưu trữ ở mức 10, 25, 100 hay 700 MB, hoặc bất kỳ kích thước nào bạn gõ vào. Từng phần riêng lẻ không đọc được; khi ghép, mọi phần đều được kiểm tra trước khi ghi.

Tìm tệp trùng

So sánh trọn vẹn từng tệp bằng SHA-256 bên trong một kho lưu trữ nên chỉ những bản sao y hệt mới được báo, và cho biết bỏ bớt bản thừa thì thu lại được bao nhiêu dung lượng. Tệp rỗng được bỏ qua.

So với một thư mục

Kiểm tra xem một thư mục còn khớp với thứ đã lưu hay không. Cả hai bên đều được băm, nên một thay đổi giữ nguyên kích thước và dấu thời gian vẫn bị phát hiện.

Quét và sửa

Quét báo những mảnh nào bị hỏng và không ghi gì cả. Sửa chỉ ghi lại đúng những phần bị sai, dựa vào bản ghi phục hồi.

Cửa sổ

Direct2D, vẽ riêng cho phần mềm này

Không web view, không framework: giao diện được vẽ bằng Direct2D và DirectWrite, đó là lý do nó mở ra tức thì và vẫn mượt trong lúc một tác vụ đang chạy.

Trình xem kho lưu trữ có xem trước

Mở một kho lưu trữ, sắp xếp và lọc nội dung của nó, và xem trước văn bản, ảnh, PDF — một trang — cùng âm thanh mà không cần giải nén trước.

Một hàng đợi, không phải một cửa sổ chờ

Các tác vụ chạy lần lượt theo thứ tự được thêm vào. Tác vụ đang chờ có thể đổi thứ tự hoặc bỏ đi, tác vụ đang chạy có thể tạm dừng, và một tác vụ dài có thể đẩy xuống chạy nền thay vì khoá cả cửa sổ.

Tìm trong các kho lưu trữ của bạn

Tìm một kho lưu trữ theo tên, rồi nhấn Enter để tìm bên trong những kho vừa tìm thấy. Nó nói rõ đã đọc được bao nhiêu, bao nhiêu không còn và bao nhiêu không mở được.

Tích hợp Explorer, bật khi bạn muốn

Các mục chuột phải để nén, giải nén và kiểm tra, thêm vào từ màn hình Cài đặt và gỡ ra cũng từ chỗ đó.

28 ngôn ngữ

Mọi chuỗi trong giao diện đều được dịch sang 28 ngôn ngữ, với quy tắc số nhiều riêng cho từng thứ tiếng chứ không áp một quy tắc tiếng Anh cho tất cả.

Còn có cả dòng lệnh

Vẫn là bộ máy đó, nhưng viết được kịch bản. Tạo, giải nén, liệt kê, thử và kiểm chứng, với số luồng, hạn mức bộ nhớ và mức toàn vẹn là các tham số. Mật khẩu không bao giờ được nhận qua tham số dòng lệnh — toàn bộ dòng lệnh của một tiến trình đang chạy có thể bị tiến trình khác cùng tài khoản đọc được — nên nó được đọc từ stdin hoặc hỏi trực tiếp với chế độ ẩn ký tự.

Hướng dẫn
jab.exe
> jab c .\project -o project.jab --mode lightning
  scanning   412 files, 268 MB
  writing    project.jab
  output     96.4 MB (36.0% of input)
  elapsed    1.84 s   —   145.7 MB/s

> jab t project.jab
  412 entries · 268 MB checked · structure and every block
  ok

> jab x project.jab -o .\restored --overwrite fail
  412 files written, 0 skipped
  elapsed    0.94 s

Chưa làm, và nói thẳng ra

  • Chưa có trình cài đặt và chưa có chữ ký số: bản 1.0 là bản chạy ngay, và Windows sẽ cảnh báo về một chương trình chưa ký.

  • Chưa có bố cục phải-sang-trái, đó là lý do tiếng Ả Rập và tiếng Do Thái đã dịch nhưng chưa phát hành.

  • Kho lưu trữ gia tăng chưa ghi lại được thao tác xoá, và chưa có keyfile.

  • Khả năng co giãn theo số luồng vẫn kém RAR, và RAR5 Normal vẫn nén nhỏ hơn.