Saya memiliki sistem cadangan cloud yang mengandalkan tanda tangan hash MD5 untuk de-duplikasi.
Apakah menambahkan tag OSX ke file mengubah hash MD5-nya?
EDIT: Saya melakukan beberapa pengujian dan mendapatkan hasil yang beragam tergantung pada jenis file / aplikasi yang digunakan. Jadi tidak yakin apakah tag itu sendiri membuat perbedaan atau sesuatu yang lain diubah oleh aplikasi.
finder-tag
Alex Cuervo
sumber
sumber
Jawaban:
Saya menjalankan file md5 di Terminal.app, menerapkan tag ke file , dan menjalankan kembali md5 . Hash yang dikembalikan sama. Tanpa mengetahui pengaturan pasti Anda, mustahil untuk mengetahui dengan pasti, tetapi sepertinya Anda baik-baik saja.
sumber
Satu hal yang saya pikirkan yang mungkin mempengaruhi hasilnya adalah tag mana yang Anda tambahkan, dan bagaimana. Warna label tradisional (Merah, Oranye, ...) disimpan dalam subbidang 3-bit bidang FinderInfo pada catatan katalog HFS + untuk file tersebut. Label baru disimpan sebagai gantinya dalam atribut yang diperluas dari file.
Di bawah skema baru, jika Finder menetapkan tag, selalu menempatkannya (atau mereka) dalam
com.apple.metadata:_kMDItemUserTags
atribut extended. Jika beberapa aplikasi lain menetapkan indeks label, misalnya dengan perintah AppleScriptindeks label diatur dalam FinderInfo. Nilai bukan-nol untuk FinderInfo menyebabkan
xattr
perintah untuk membuat daftar seolah-olah itu adalah atribut yang diperluascom.apple.FinderInfo
, di mana Anda dapat melihat indeks label sebagai tiga bit dalam byte kesepuluh. Interaksi antara kedua bidang ini rumit. Kadang-kadang memodifikasi satu akan menghapus yang lain, kadang tidak.md5
mungkin terpengaruh secara berbeda tergantung pada metadata apa, jika ada, termasuk dalam checksum versus metadata mana yang dipengaruhi oleh metode yang Anda gunakan untuk mengatur label.Berita baiknya adalah bahwa
md5
tampaknya mengabaikan semua metadata. Itu menghitung checksum dari hanya garpu data. Bahkan tidak memasukkan garpu sumber daya. (Untuk checksum sumber daya garpu, Anda harus secara eksplisit memintanya, seperti padamd5 "Icon^M"/..namedfork/rsrc
, tetapi kemudian garpu sumber daya adalah satu - satunya hal yang terlihat.)sumber