|
|
|
WinZip dosya mimarisi iki ana bölümden oluşur. 1. Ana dosya paket kayıt bölümü, 2. Sıkıştırılan dosya kayıtları.
ANA PAKET KAYDI: 22 bayttan oluşan bu kayıt, pakette bulunan dosya sayısı, paket içinde kullanılan karakter seti ve ayrıca ilk okunacak bayt indexinden (dosya okuma ofset) oluşur. Kayıt başlangıcı P-K-chr(5)-chr(6) dır. Zip dosyaların büyüklüğü bulunup son 22 bayt okunduğunda bu kayda erişilmiş olur. Byte Index-Açıklamalar 1-4 ........P-K-chr(5)-chr(6) sabit kayıt. 9-10.......Paketteki dosya miktarı 11-12......Paketteki dosya miktarı 16-13......Sıkıştırma indexi 20-17......Hex Double, Dosya kayıt başlangıç yeri
SIKIŞTIRILMIŞ DOSYA KAYITLARI: Bu kayıt üç bölümden oluşur: 1. Dosya Kayıt Başlangıcı, 2. Sıkıştırılmış Veri, 3. Dosya Bitiş Kaydı.
1. DOSYA KAYIT BİTİŞİ : Bu kayıt 30 + dosya adı kadar bayt uzunluğundadır. Bu kayıt bölümünde sıkıştırılan dosya ile ilgili özellikler bulunur. Bunlar; sıkıştırma tipi, CRC (Check Reduncy Control), Dosya Değiştirme Tarih-Saati, Sıkıştırılmamış Dosyanın Büyüklüğü, Sıkıştırılmış Dosyanın Büyüklüğü (Pack), Dosya ve Yol Adı.
Byte Index------Açıklamalar 1-4..........P-K-chr(3)-chr(4) sabit kayıt. 5............Eğer değer 20 ise normal, 10 ise sıkıştırma yok (None). 7............Değer 0=Normal/Fast/None, .............1= Şifreli .............2=Max Sıkıştırma .............4=süper Fast sıkıştırma .............Eğer Max ve Şifreli ise=5, Normal şifreli ise=1, süper ve şifreli=3 9............Değer =8 Versiyon yada 0=Sıkıştırma Yok 14-11........Tersten okuma, tarih-saat grubu, winzip dosyayı açtığında bu TSG ile dosyayı oluşturur. 18-15........Tersten Hex ile okuma, Hex birleşimi CRC yi verir. 22-19........Tersten Hex okuma, Double uzunlukta. Sıkıştırılmış dosya büyüklüğü (Pack) bayt olarak 26-23........Tersten Hex okuma, Double uzunlukta. Sıkıştırılmamış (orijinal) dosya büyüklüğü bayt olarak 27...........Dosya yol ve adı uzunluğu (kaç karakter) 30 Dahil Verilmeyen bayt indexleri sabit 0 31-(27.nci bayt değeri + 30).....dosya yolu ve dosya adı .................................Standart Ascii değerleri kullanır Türkçe karakterler; .................................ğ=167, Ğ=166, ü=129, Ü=154, ş=159, Ş=158, İ=152, ı=141, ö=148, Ö=153, ç=135, Ç=128
Sonraki 12 BAYT....Eğer şifre varsa (7.bayt=1,3,5 ise) bu kayıt vardır, yoksa bu bulunmaz direkt sıkıştırılmış veriye geçer.
2. SIKIŞTIRILMIŞ VERİ : Seçilen özelliğe göre sıkıştırılan veri (Pack uzunlukta)
3. DOSYA KAYIT BAŞLANGICI : Bu kayıt 46 + dosya adı kadar bayt uzunluğundadır. Bu kayıt bölümünde sıkıştırılan dosya ile ilgili özellikler bulunur. Bunlar; sıkıştırma tipi, CRC (Check Reduncy Control), Dosya Değiştirme Tarih-Saati, Sıkıştırılmamış Dosyanın Büyüklüğü, Sıkıştırılmış Dosyanın Büyüklüğü (Pack), Dosya ve Yol Adı. Dosya Kayıt bitişiyle hemen hemen aynı. Kontrol amaçlı çifte kayıt oluşturulmuştur.
Byte Index------Açıklamalar 1-4...........P-K-chr(1)-chr(2) sabit kayıt. 7.............Eğer değer 20 ise normal, 10 ise sıkıştırma yok (None). 9.............Değer 0=Normal/Fast/None, ..............1= Şifreli ..............2=Max Sıkıştırma ..............4=süper Fast sıkıştırma ..............Eğer Max ve Şifreli ise=5, Normal şifreli ise=1, süper ve şifreli=3 11............Değer =8 Versiyon yada 0=Sıkıştırma Yok 16-13.........Tersten okuma, tarih-saat grubu, winzip dosyayı açtığında bu TSG ile dosyayı oluşturur. 20-17.........Tersten Hex ile okuma, Hex birleşimi CRC yi verir. 24-21.........Tersten Hex okuma, Double uzunlukta. Sıkıştırılmış dosya büyüklüğü (Pack) bayt olarak 28-25.........Tersten Hex okuma, Double uzunlukta. Sıkıştırılmamış (orijinal) dosya büyüklüğü bayt olarak 29............Dosya yol ve adı uzunluğu (kaç karakter) 47-(+29.nci bayt değeri)......dosya yolu ve dosya adı ..............................Standart Ascii değerleri kullanır Türkçe karakterler; ..............................ğ=167, Ğ=166, ü=129, Ü=154, ş=159, Ş=158, İ=152, ı=141, ö=148, Ö=153, ç=135, Ç=128
KOMPLE ZIP DOSYASI YAPISI 1. Dosya Kayıt Bitişi 2. Sıkıştırılmış Veri (Zip te kaç dosya varsa o kadar 1 ve 2 tekrarlanır.) 3. Dosya Kayıt Başlangıcı (Zip te kaç dosya varsa o kadar 3 tekrarlanır.) 4. Ana Paket Kaydı ------------ alıntıdır.
|