ڈکشنری

ZIP CRC کیا ہے؟

CRC، یا ZIP CRC، ایک میٹا ڈیٹا ویلیو ہے جو آپ کو اکثر آرکائیو فائلوں میں ملتی ہے۔ مزید پڑھیں کہ CRC کا کیا مطلب ہے اور یہ ویلیو آپ کو آپ کی اپنی فائل کے بارے میں کیا بتاتی ہے۔

zip-crc

CRC ایک مختصر عددی ویلیو ہے جو کسی فائل کے مواد سے اسی وقت نکالی جاتی ہے جب اسے آرکائیو میں شامل کیا جاتا ہے۔ یہ فنگرپرنٹ کا کام کرتی ہے، تاکہ بعد میں چیک کیا جا سکے کہ فائل آرکائیو سے بالکل ویسی ہی نکلی ہے جیسی اندر گئی تھی۔ CRC کا مطلب ہے cyclic redundancy check۔

یہ کہاں سے آتا ہے اور کون سی فائلوں میں ہوتا ہے

آرکائیوز میں یہ موجود ہوتا ہے۔ اس کا مطلب ہے ZIP فائلیں اور وہ بہت سے فارمیٹس جو ZIP پر مبنی ہیں، جن میں .docx، .xlsx، .epub، .jar اور .apk شامل ہیں، جبکہ RAR، 7z اور دیگر فارمیٹس اپنے الگ checksums رکھتے ہیں۔ کسی رپورٹ میں .epub فائلوں کے لیے یہ دکھائی نہ بھی دے، حالانکہ فائل اسے محفوظ کرتی ہے۔

کمپریشن پروگرام یہ ویلیو فائل کے اصل، غیر کمپریسڈ مواد سے نکال کر اسی انٹری کے ساتھ محفوظ کرتا ہے، اس لیے آرکائیو کے ہر ممبر کا اپنا الگ CRC ہوتا ہے۔ آپ اسے نہ منتخب کر سکتے ہیں نہ ٹائپ، اور یہ آپ یا آپ کے کمپیوٹر کے بارے میں کوئی معلومات نہیں ہوتی۔ یہ صرف فائل کے بائٹس سے اخذ کی جاتی ہے۔

اسے محفوظ رکھنے کا مقصد بعد میں ہونے والا موازنہ ہے۔ جب آرکائیو کو ان پیک کیا جاتا ہے، پروگرام نکالی گئی فائل سے دوبارہ CRC نکالتا ہے اور دونوں ویلیوز کا تقابل کرتا ہے۔ اگر وہ مختلف ہوں تو آپ کو WinZip، 7-Zip یا unzip میں مانوس CRC ایرر میسج ملتا ہے، جس کا مطلب ہے کہ نکالی گئی فائل اصل میں شامل کی گئی فائل سے نہیں ملتی۔ اس سے راستے میں کہیں نہ کہیں نقصان کی طرف اشارہ ہوتا ہے، جیسے ڈاؤن لوڈ کا رک جانا، خراب ہوتی ہوئی ڈسک، یا ادھورا کاپی ہونا۔ صرف ایک خراب ممبر بھی یہ پیغام لانے کے لیے کافی ہے، چاہے آرکائیو میں باقی سب کچھ ٹھیک ہو۔

یہ ویلیو کیسی نظر آتی ہے

ZIP ایک ورژن استعمال کرتا ہے جسے CRC-32 کہتے ہیں، جو 32-bit کی ویلیو بناتا ہے۔ اسے عموماً آٹھ ہیکساڈیسیمل digits کی صورت میں دکھایا جاتا ہے، مثال کے طور پر 0x8f3d2b1c، اور کچھ apps اسی ویلیو کو لمبے decimal نمبر کے طور پر دکھاتی ہیں۔ اس کی کوئی unit نہیں ہوتی، اور نہ ہی کوئی ایسا پیمانہ کہ جس پر کوئی ویلیو بہتر یا بدتر ہو۔ خالی فائل، اور ایسا فولڈر انٹری جس میں کوئی ڈیٹا نہ ہو، 0x00000000 دکھاتا ہے۔

یہ کیوں اہم ہے

یہ ایک integrity فیلڈ ہے، اور یہ آرکائیو کا خود کا اندرونی ثبوت ہے کہ مواد اسٹوریج اور ٹرانسفر کے دوران صحیح سلامت رہا۔ میٹا ڈیٹا رپورٹ میں CRC نظر آنا اس بات کی علامت نہیں کہ آپ کی آرکائیو میں کوئی خرابی ہے۔ یہ صرف وہ ویلیو ہے جو آرکائیو بنتے وقت ریکارڈ ہوئی تھی؛ اصل چیک اس وقت ہوتا ہے جب آپ extract کرتے ہیں، نہ کہ جب آپ صرف دیکھتے ہیں۔

اس کا ایک اضافی فائدہ بھی ہے۔ ایک جیسا مواد ہمیشہ ایک ہی CRC پیدا کرتا ہے، اس لیے دو انٹریز جن کا CRC اور سائز دونوں ایک جیسے ہوں، تقریباً یقینی طور پر ایک ہی فائل ہوتی ہیں۔ اس طرح بڑی آرکائیو کے اندر ڈپلیکیٹس جلدی پہچاننے کا ایک تیز طریقہ مل جاتا ہے۔

جو یہ نہیں ہے، وہ ہے سکیورٹی فیچر۔ CRC اتفاقی نقصان پکڑنے کے لیے بنایا گیا ہے، اور یہ اتنا مختصر ہوتا ہے کہ جان بوجھ کر بھی ملتی جلتی ویلیو بنائی جا سکتی ہے، اس لیے ایسا CRC جو درست نکل آئے، اس بات کا ثبوت نہیں کہ فائل میں کوئی تبدیلی نہیں کی گئی۔ اس مقصد کے لیے SHA-256 جیسے cryptographic hashes موجود ہیں۔ چونکہ یہ ویلیو مواد سے اخذ کی جاتی ہے، اسے اس بات کے لیے بھی استعمال کیا جا سکتا ہے کہ دو مختلف آرکائیوز میں ایک ہی فائل موجود ہے یا نہیں، جو کبھی کبھار کام آتا ہے اور آرکائیو کسی کو دینے سے پہلے یاد رکھنے کے قابل ہوتا ہے۔

میٹا کیز