Sözlük

Dosyanın Ham Başlığı Nedir?

Ham başlık bir dosyanın ilk baytlarını onaltılık sayılar olarak gösterir. Bu baytlar gerçek dosya türünü ortaya çıkarır ve çoğunu metin olarak okuyabilirsiniz.

raw-header

Ham başlık, bir dosyanın ilk kısmıdır ve adlandırılmış meta veri alanları yerine bayt bayt gösterilir. Birçok dosya formatı, imza veya sihirli sayı olarak adlandırılan sabit bir bayt düzeniyle başlar. Programlar, bunun ne tür bir dosya olduğunu anlamak için bu düzeni okur.

Bir meta veri raporunda, Ham Başlık alanı bu baytları onaltılık sayılar olarak gösterir. 89 veya FF gibi her karakter çifti 1 bayt ifade eder.

Bir e-postanın da üst kısmında, Kimden, Kime ve Konu gibi alanlara sahip bir başlık bölümü vardır. Bu makale bir dosyanın başlığını ele alır.

Değerin nasıl göründüğü

Onaltılık, yani 16 tabanlı gösterim, her baytı 0'dan 9'a kadar rakamlar ve A'dan F'ye kadar harflerden oluşan 2 karakterle yazar. Böylece bir bayt, 00 ile FF arasında herhangi bir değere sahip olabilir.

ASCII karakter kodunda 21 ile 7E arasındaki değerler harfleri, rakamları ve noktalama işaretlerini temsil eder ve 20 bir boşluktur. 20 altındaki değerler kontrol kodlarıdır ve 00 NUL adı verilen, tüm bitleri sıfır olan karakterdir.

Ham üstbilgiyi metin olarak nasıl okuyabilirsiniz

Bir ham başlığı metne dönüştürmek için her baytı bir ASCII tablosunda arayın. Yalnızca 20 ile 7E arasındaki baytlar, görünür bir ASCII karakteri veya boşluğu temsil eder. Diğer baytlar etmez, bu nedenle genellikle bir başlığın yalnızca bir kısmını okuyabilirsiniz.

  • 25 50 44 46 2D, yüzde işareti, PDF harfleri ve bir kısa çizgi olarak okunur.
  • 89 50 4E 47, 2 ila 4. baytlarda PNG harflerini içerir.

Tipik değerler

Yaygın formatlar şu imzalarla başlar:

  • PNG görüntü: 89 50 4E 47 0D 0A 1A 0A
  • JPEG görüntü: FF D8 FF, burada FF D8 görüntünün başlangıcını işaretler
  • GIF görüntü: 47 49 46 38, ardından 39 61 veya 37 61 (GIF89a veya GIF87a)
  • PDF belgesi: 25 50 44 46 2D, ardından 1.7 gibi sürüm numarası
  • TIFF görüntü, little-endian: 49 49 2A 00 (II, ardından 42 sayısı)
  • TIFF görüntü, big-endian: 4D 4D 00 2A (MM, ardından 42 sayısı)
  • ZIP arşivi ve DOCX gibi ZIP tabanlı Office dosyaları: 50 4B 03 04 (PK)
  • ID3v2 etiketi taşıyan MP3 ses: 49 44 33 (ID3)
  • WAV ses: 52 49 46 46 (RIFF), değişen 4 bayt ve ardından 57 41 56 45 (WAVE)
  • MP4 video: 4 baytlık bir boyut değeri ve ardından 66 74 79 70 (ftyp)

Bir TIFF dosyasında, ilk 2 bayt ayrıca dosyadaki sayılar için bayt sırasını belirler. Bir PDF dosyasında, imzadan sonraki karakterler PDF sürümünü verir, ancak dosyanın ilerleyen kısımlarındaki bir kayıt bunu geçersiz kılabilir.

Bunu hangi dosyalar içeriyor

Her dosyanın bir ham başlığı vardır, ancak her formatın bir imzası yoktur. Düz metin dosyaları doğrudan metinle başlar. Programlar bunları, ilk baytlarının yalnızca metin karakterleri içermesinden tanır.

Neden önemli olduğu

Dosya adı uzantısı yalnızca adın bir parçasıdır ve herkes bunu değiştirebilir. Uzantı yanlış olsa bile, başlık gerçek dosya türünü ve MIME türünü ortaya çıkarabilir.

Bir web sunucusu hiç MIME türü göndermeyebilir veya bir tarayıcı aldığı türün yanlış olduğuna inanabilir. Tarayıcı bu durumda ilk baytları bilinen desenlerden oluşan bir tabloyla karşılaştırabilir. Unix file komutu, dosyanın başlangıcına yakın bir yerde sihirli bir sayı arar.

Bir başlık, sorunları fark etmenize de yardımcı olur. photo.png adlı bir dosya 89 50 4E 47 ile başlamıyorsa, PNG formatına uymuyor demektir. Dosyanın başlangıcı hasar görmüş olabilir veya dosya uzantısı yanlış olan başka bir tür olabilir.

Yalnızca 00 baytlarından oluşan bir başlık, hiçbir yaygın imzayla eşleşmez. Ancak bir MP4 dosyası 00 ile başlayabilir, çünkü ilk 4 baytındaki küçük bir boyut değeri sıfır ile başlar. Hiçbir şey eşleşmediğinde ve baytlar metin olmadığında, tarayıcılar dosyayı application/octet-stream olarak değerlendirir.