قابلِ تولیدیت سپلائی چین کی ایک خصوصیت ہے: وہی اعلان شدہ ان پٹ وہی آرٹیفیکٹ پیدا کریں۔ VPN کلائنٹ کے لیے یہ بیان آپ کے ڈاؤن لوڈ کردہ انسٹالر کو ایسے سورس اور ٹول چین سے جوڑتا ہے جسے کوئی بھی دوبارہ بنا سکتا ہے۔ یہ اُس سروس کے بارے میں کچھ نہیں کہتا جس سے کلائنٹ جڑتا ہے۔

اس لیے مفید سوال تنگ اور جواب پذیر ہے۔ کیا پروجیکٹ کوئی طریقہ کار شائع کرتا ہے، اور کیا آپ کا مخصوص آرٹیفیکٹ اُس سے مطابقت رکھتا ہے؟

کہاں بلڈ غیر فیصلہ کن ہو جاتا ہے

کمپائلر وقت کے نشان، مطلق راستے اور بلڈ ہوسٹ کے نام اندر ڈالتے ہیں، الا یہ کہ اُنہیں منع کیا جائے۔ آرکائیوز فائلوں کی ترتیب اور تبدیلی کے اوقات درج کرتے ہیں، لنکر ٹول چین کے ورژن کے ساتھ اپنا آؤٹ پٹ بدلتے ہیں، اور متوازی کمپریشن بلاکس کو دوبارہ ترتیب دے سکتی ہے۔ ان میں سے کوئی ایک بھی ایک ہی سورس کی دو بلڈز کو بائٹس میں مختلف کر دیتا ہے، بغیر کچھ خوفناک ہوئے۔ فیصلہ کنیت بلڈ میں انجینئرنگ سے شامل کی جاتی ہے، بطور ڈیفالٹ کبھی وراثت میں نہیں ملتی۔

جو پروجیکٹ قابلِ تولیدیت کا دعویٰ کرے اُسے اپنے لاگو کردہ معمول کا نام دینا ہوگا: مقررہ وقت کے نشان، نقش شدہ راستے، ترتیب شدہ آرکائیو اندراجات، مقررہ کمپائلر اور انحصار کے ورژن۔ اُس فہرست کے بغیر عدم مطابقت کی تشریح نہیں ہو سکتی، کیونکہ جائز فرق کا دائرہ غیر متعین ہے۔

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

InputHow it driftsWhat pins it
SourceBranch moves after releaseCommit hash in the build metadata
ToolchainCompiler patch level differsContainer image digest
PackagingArchive order and mtimes varyNormalised archive settings

موازنہ اصل میں کیا جانچتا ہے

ایک آزاد فریق اعلان شدہ ماحول میں دوبارہ تعمیر کرتا ہے اور آؤٹ پٹ کا موازنہ شائع شدہ آرٹیفیکٹ سے کرتا ہے۔ بٹ بہ بٹ یکسانیت مضبوط شکل ہے؛ دستاویزی معمول کا مرحلہ، جس میں درج فرق اُلٹ دیا جاتا ہے اور نتائج پھر مطابقت کرتے ہیں، کمزور مگر پھر بھی مفید شکل ہے۔

موازنہ بائنری کے بارے میں ہے۔ دستخط ایک اور سوال کا جواب دیتے ہیں: یہ ریلیز کو کلید سے اور کلید کو شناخت سے جوڑتا ہے، اور پروجیکٹ کے پاس ایسے آرٹیفیکٹس پر درست دستخط ہو سکتے ہیں جنہیں کسی نے دوبارہ تعمیر نہیں کیا۔ دونوں جانچیں ایک دوسرے کی جگہ لینے کے بجائے اوپر تلے جمع ہوتی ہیں۔

sha256sum wireguard-installer.msi
gpg --verify wireguard-installer.msi.sig wireguard-installer.msi

انسٹال کرنے سے پہلے دونوں چلائیں، اور ہیش کا موازنہ اُسی ریلیز اور پلیٹ فارم کے لیے شائع شدہ ہیش سے کریں۔ وینڈر کے صفحے سے مطابقت رکھنے والا ہیش ثابت کرتا ہے کہ ڈاؤن لوڈ مکمل آیا؛ دوبارہ تعمیر شدہ بائنری جو وینڈر کے شائع شدہ ہیش سے مطابقت رکھتی ہے، اِس بارے میں زیادہ مضبوط بات ثابت کرتی ہے کہ یہ کیسے بنی۔

عدم مطابقت چھیڑ چھاڑ کا ثبوت کیوں نہیں

زیادہ تر عدم مطابقت ایسے ان پٹ سے آتی ہے جسے کسی نے کنٹرول نہیں کیا۔ کمپائلر کا مختلف پیچ ریلیز، ڈیبگ علامات میں رسا ہوا بلڈ راستہ، ترتیب بدلنے والا لوکیل، یا موازنے کے بعد لاگو کردہ پیکیجنگ مرحلہ — سب ایماندار کام سے مختلف ہیش پیدا کرتے ہیں۔

اسی لیے عدم مطابقت کو کہانی بننے سے پہلے دستاویزی طریقہ کار کے سامنے پڑھنا ہوتا ہے۔ اگر طریقہ کار سب کچھ مقرر کرتا ہے اور فرق غیر واضح رہتا ہے، تو یہ ایک حقیقی دریافت ہے جسے پروجیکٹ کے سامنے رکھنا چاہیے۔ اگر طریقہ کار پیکیجنگ کے بارے میں خاموش ہے، تو فرق مکمل طور پر متوقع ہو سکتا ہے۔

یہاں ہم آہنگی بھی اہم ہے: مطابقت ثابت نہیں کرتی کہ سورس نقائص سے پاک ہے، صرف یہ کہ بائنری اُس سے مطابقت رکھتی ہے۔ اچھی طرح آڈٹ شدہ کوڈ اور قابلِ تولید کوڈ الگ خصوصیات ہیں، اور پروجیکٹ ایک کے بغیر دوسری رکھ سکتا ہے۔

دعویٰ ایپ کے پیچھے موجود سروس کے بارے میں کیا کہتا ہے

کلائنٹ آپ کے ڈیوائس پر ایک پروگرام ہے؛ سروس کہیں اور موجود سرورز، اکاؤنٹ سسٹمز اور تحفظ کی پالیسیاں ہیں۔ قابلِ تولیدیت پہلی چیز کو محدود کرتی ہے اور دوسری کے بارے میں کچھ نہیں کہتی، چاہے انسٹالر کتنی احتیاط سے جانچا جائے۔

اینڈ پوائنٹ کی ترتیب انسٹال کے بعد بھی بدل سکتی ہے، دور دراز کی ترتیبات یا فراہم کنندہ کے کنٹرول کردہ پروفائل کے ذریعے۔ وہ تبدیلیاں نیٹ ورک سے آتی ہیں اور جوڑنے سے پہلے آپ کے حساب کردہ کسی ہیش میں شامل نہیں ہوتیں۔

دعوے کو اُس کے حقیقی دائرے میں پڑھیں، پھر ساتھ والے سوال کو الگ سے جانچیں: فراہم کنندہ کیا درج کرتا ہے، اور کس دائرہ اختیار کے تحت درخواستوں کا جواب دیتا ہے۔ تصدیق شدہ بائنری اور غیر تصدیق شدہ سروس ساتھ رہ سکتے ہیں، اور سپلائی چین جانچ درست کرنے کے لیے نہیں بلکہ نظر آنے کے لیے بنائی گئی ہے — بالکل یہی صورت۔

متعلقہ مضامین