Üç kip, tek karar
Hız için Lightning, orta yol için Balanced, boyut için Compact. Panel, hangisinin en hızlı hangisinin en küçük olduğunu 1-9 arası bir sayının arkasına saklamak yerine doğrudan söyler.
Bu sayfa henüz Türkçe diline çevrilmedi, bu yüzden İngilizce görünüyor. Programın kendisi Türkçe diline tamamen çevrilmiş durumda.
Özellikler
Gerçekten yapılmış, sınanmış ve çalışan şeyler. Yarım kalanlar ima edilmek yerine bu sayfada adıyla anılıyor.
Hız için Lightning, orta yol için Balanced, boyut için Compact. Panel, hangisinin en hızlı hangisinin en küçük olduğunu 1-9 arası bir sayının arkasına saklamak yerine doğrudan söyler.
Bir eşleşme bulucu, kanonik bir Huffman aşaması ve iki katmanlı bir çözme tablosu — hepsi bu projenin kendi kodu. Programa bağlanmış üçüncü taraf bir sıkıştırma kitaplığı yok.
Bloklar, izin verdiğiniz işlemci sayısı kadar paralel sıkıştırılır; sınır, Ayarlar'da koyduğunuz bellek tavanıdır. Tavan düşükse iş yine biter; yalnızca daha az örtüşme olur.
Bir belgenin farklı sürümleri, aynı şemayı paylaşan dışa aktarımlar, aynı biçimdeki günlükler: hepsinin üzerinden kurulan bir sözlük, aynı dosyaların sözlüksüz ürettiği arşivin %16,7'si olarak ölçüldü. Varsayılan olarak kapalı, çünkü karışık bir klasörde hiçbir kazanç sağlamıyor.
.jab yerel kaptır: yazması en hızlı olan, blok başına sağlama taşıyan ve üçü arasında burada parola taşıyabilen tek biçim. .zip ile .7z sade biçimde yazılır, böylece başka her araç onları sorunsuz açar.
ZIP için store ve deflate; 7z için LZMA2 klasörleri, okurken x86 dal süzgeci dâhil; tar için GNU uzun adlarıyla ustar.
Burada yazılan bir .zip'te AES, genişletilmiş zaman damgaları ve Unix izinleri yoktur. Bir .7z'de katı blok başına tek LZMA2 klasörü vardır, dosya başına süzgeç yoktur. Daha iyi sıkıştırma, blok başına SHA-256 ya da parola isteniyorsa yanıt .jab'dır.
Blok başına bir kayıt, 96 bitlik tek kullanımlık değer ve 128 bitlik etiket; hepsi işletim sisteminin kendi gerçeklemesinden. Bu projede şifreleme icat edilmez.
Bildirim — dosya adları, boyutlar, zaman damgaları, öznitelikler — tek bir şifreli kayıttır; blok başına SHA-256 ve CRC-32C değerlerini tutan yığın tablosu da öyledir.
Boş düz metin üzerinde hesaplanan bir etiket, okuyucuya parolanın yanlış olduğunu tüm arşivi çözmeden, tek bir PBKDF2 türetmesinden sonra söyler.
Bir .jab içinde %1 ile %30 arası yedek veri ayırın; bozulmuş bir blok yalnızca bildirilmekle kalmaz, yeniden kurulabilir. Hasar oluşmadan önce eklenmesi gerekir ve yalnızca .jab bunu taşıyabilir.
Her blok bir CRC-32C taşır; blok başına SHA-256 siz kapatmadıkça açıktır. Birincisi bir bloğun bozuk olduğunu söyler, ikincisi sessizce gözden kaçmayı yok denecek kadar olanaksız kılar.
Ayrıntılı denetim; başlığı, sonlandırmayı, yığın tablosunu ve bildirimi tutarlılık için okur, sonra her bloğu çözer. Yalnızca çöz, yapısal geçişi atlar. İkisi de dosya yazmaz.
Hiçbir denetim size bir arşivin kurcalanmadığını söyleyemez: veriyi değiştirebilen, her iki değeri de yeniden hesaplayabilir. Bu soruya yalnızca parolayla korunan bir arşiv yanıt verir.
Arşiv önce bir .partial dosyasına yazılır, tamamlandığında adı değişir; böylece yarıda kesilen bir çalışma asla bitmiş görünen bir şey bırakmaz.
Arşivin yanına 10, 25, 100 ya da 700 MB'lık, veya yazdığınız boyutta .001, .002, … parçaları yazar. Parçalar tek başına okunamaz; birleştirirken yazmadan önce her parça denetlenir.
Arşiv içindeki dosyaları SHA-256 ile baştan sona karşılaştırır, böylece yalnızca birebir kopyalar bildirilir ve fazlalıkları silmenin ne kadar yer kazandıracağını söyler. Boş dosyalar atlanır.
Bir klasörün arşivlenen içerikle hâlâ örtüşüp örtüşmediğini denetler. İki taraf da özetlenir, bu yüzden boyutu ve zaman damgasını aynı bırakan bir değişiklik de yakalanır.
Tarama hangi parçacıkların bozuk olduğunu bildirir ve hiçbir şey yazmaz. Onarım, kurtarma kaydını kullanarak tam olarak bozuk olan bölümleri yeniden yazar.
Web görünümü yok, çatı yok: arayüz Direct2D ve DirectWrite ile çizilir; bu yüzden anında açılır ve bir iş sürerken bile akıcı kalır.
Bir arşivi açın, içeriğini sıralayıp süzün; metin, görsel, PDF — tek sayfa — ve sesi önce çıkarmadan önizleyin.
İşler eklendikleri sırayla, teker teker çalışır. Bekleyen bir iş sıradan alınabilir ya da çıkarılabilir, çalışan duraklatılabilir, uzun süren bir iş pencereyi kilitlemek yerine arka plana gönderilebilir.
Bir arşivi adıyla bulun, sonra Enter'a basarak bulunanların içine bakın. Kaçını okuduğunu, kaçının bulunamadığını ve kaçını açamadığını açıkça söyler.
Sıkıştırma, çıkarma ve sınama için sağ tık girdileri; Ayarlar ekranından eklenir, aynı yerden kaldırılır.
Arayüzdeki her metin 28 dile çevrildi; çoğul kuralları, her yere uygulanan tek bir İngilizce kural yerine her dilin kendi kurallarıyla işleniyor.
Aynı motor, betiklenebilir hâlde. Oluşturma, çıkarma, listeleme, sınama ve doğrulama; iş parçacığı sayısı, bellek bütçesi ve bütünlük düzeyi birer seçenek. Parola hiçbir zaman bağımsız değişken olarak alınmaz — çalışan bir sürecin komut satırının tamamı, aynı hesaptaki başka süreçlerce okunabilir — bu yüzden standart girişten okunur ya da ekrana yansıtılmadan sorulur.
Kılavuz> 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
Kurulum dosyası ve kod imzası yok: 1.0 taşınabilir bir sürüm ve Windows imzasız bir program için uyarı verecek.
Sağdan sola düzen yok; Arapça ve İbranice'nin çevrilmiş olmasına karşın yayımlanmamasının nedeni bu.
Artımlı bir arşiv silme işlemini kaydedemiyor ve anahtar dosyaları gerçeklenmedi.
İş parçacıklarıyla ölçeklenme hâlâ RAR'ın altında ve RAR5 Normal hâlâ daha küçük sıkıştırıyor.