स्रोत प्रकाशित झाला आहे, परवाना स्वच्छ आहे, आणि तरीही कनेक्शन सुरुवातीपासून शेवटपर्यंत पडताळता येत नाही। ही तफावत सामान्य आहे, आणि ती घोटाळा नाही। कोड प्रकाशित केल्याने एक घटक ज्यांना आमंत्रण दिले नव्हते अशा लोकांना तपासता येतो, आणि हा खरा व असामान्य गुणधर्म आहे। यावरून असे निष्पन्न होत नाही की तुम्ही इन्स्टॉल केलेली बायनरी त्या कोडमधून आली आहे, किंवा प्रदाता दुसऱ्या बाजूला जे काही चालवतो त्यातील काहीही तपासले गेले आहे।

घटक उत्पादनापासून वेगळा करा

चार गोष्टी ओपन सोर्स असे लेबल घेऊ शकतात, आणि त्या सर्व खुल्या असणे दुर्मिळ आहे। क्लायंट अनुप्रयोग हा लोकांचा अर्थ असतो। त्याखालील प्रोटोकॉल अंमलबजावणी ही दुसरी कलाकृती आहे, कधी लायब्ररी आणि कधी ट्रीमधील कोड। सर्व्हर सॉफ्टवेअर तिसरे आहे, आणि प्रदात्याची स्वतःची पायाभूत सुविधा, खाते पोर्टल व सहाय्य साधने चौथे आहेत। प्रत्येक स्वतंत्रपणे खुले किंवा बंद असू शकते।

म्हणून "आमचे अॅप ओपन सोर्स आहे" अशी विधाने पहिल्या बाबीचे वर्णन करतात आणि उर्वरित अनुत्तरित ठेवतात, जे अप्रामाणिकपणा नाही तर वर्गाची घसरण आहे। उपयुक्त प्रश्न असा आहे की कोणती रिपॉझिटरी, कोणत्या टॅगवर, तुम्ही अवलंबून असलेल्या घटकाशी जुळते।

हा फरक हे देखील स्पष्ट करतो की एकसारखे खुले क्लायंट असलेली दोन उत्पादने खूप वेगळी आश्वासने का देऊ शकतात। क्लायंट हा तुम्ही तपासू शकणारा भाग आहे; ऑपरेटरचे वर्तन हा इतर माध्यमांनी मूल्यमापन करावा लागणारा भाग आहे।

इन्स्टॉल केलेले बिल्ड प्रकाशित टॅगशी जुळवा

रिपॉझिटरी ही हेतूची नोंद आहे; तुमच्या डिस्कवरील बायनरी ही प्रत्यक्ष चालणारी गोष्ट आहे। ती तफावत भरून काढणे हा यांत्रिक सराव आहे, आणि तो डाउनलोड पृष्ठाने जाहिरात केलेले नाही तर नक्की काय इन्स्टॉल आहे हे ओळखण्यापासून सुरू होतो।

ComponentWhat inspection can showWhat it leaves untouched
Client sourceHow profiles, packets and optional telemetry are handledWhether the shipped binary matches that source
Build outputWhether a declared build reproduces a matching artefactWhether the source is correct or the toolchain is clean
Server softwareWhat the implementation is capable of loggingWhat the operator actually configures and retains
Account and support systemsAlmost nothing, unless they are separately publishedEverything about how those systems treat your data

पॅकेज मेटाडेटा तुम्हाला आवृत्ती व उगम सांगतो, ज्यामुळे जुने किंवा बदललेले पॅकेज हे साधे प्रकरण बाद होते। पण ते पॅकेज कसे संकलित झाले हे सांगत नाही, आणि त्याच प्रश्नाचे उत्तर देण्यासाठी पुनरुत्पादनीय बिल्ड अस्तित्वात आहेत। पुनरुत्पादनीय बिल्ड स्वतंत्र पक्षाला त्याच स्रोतापासून पुन्हा तयार करण्यास आणि निकाल बाइटनुबाइट तुलना करण्यास परवानगी देतात, त्यामुळे विसंगती संशयाऐवजी पुरावा बनते।

अगदी अचूक जुळणीही लोक अपेक्षित असलेल्यापेक्षा कमी सिद्ध करते। ती दाखवते की कलाकृती स्रोत व बिल्ड पाककृतीशी जुळते, स्रोत दोषमुक्त आहे किंवा वापरलेली साधनसाखळी विश्वासार्ह होती असे नाही। दोन्ही जाणून घेण्यासारखे आहे, पण ते वेगवेगळे दावे आहेत।

dpkg -S /usr/bin/wg
apt-cache policy wireguard-tools
sha256sum /usr/bin/wg

लक्षण सामान्यतः कुठून सुरू होते

हे वाचन घडवणारी तक्रार क्वचितच "कोड बंद आहे" अशी असते। सामान्यतः ती ठोस निरीक्षण असते: अनपेक्षित ठिकाणी संपर्क साधणारा क्लायंट, रिलीज नोट्सपेक्षा वेगळी आवृत्ती, किंवा टनेलला आवश्यक असण्यापेक्षा जास्त मागणारी सहाय्य प्रक्रिया। यातील प्रत्येक बिंदू वेगळ्या घटकाकडे निर्देश करतो।

क्लायंटकडून अनपेक्षित नेटवर्क रहदारी हा क्लायंट स्रोत कोडचा प्रश्न आहे, आणि कनेक्शन उघडणारा कोड मार्ग वाचून त्याचे उत्तर देता येते। आवृत्तीतील विसंगती हा पॅकेजिंगचा प्रश्न आहे। ओळखपत्रे मागणारी सहाय्य प्रक्रिया हा खाते प्रणालीचा प्रश्न आहे, आणि कोणताही क्लायंट ऑडिट तो सोडवणार नाही।

घटकाला नाव देणे अस्पष्ट अविश्वासाला ठोस तपासणीत बदलते। ठोस तपासणीला उत्तर देता येते, तिच्याशी वाद घालता येतो किंवा ती बंद करता येते। पर्याय म्हणजे पुढील पावलाशिवाय कायमचा संशय।

पुनरावलोकन कुठपर्यंत पोहोचू शकत नाही, आणि त्याऐवजी काय करावे

प्रदात्याच्या सर्व्हरवरील धारणा क्लायंटच्या पोहोचबाहेर आहे। बिलिंग पोर्टल, फसवणूक तपासणारा पुरवठादार किंवा जोडपत्रे ठेवणारे सहाय्य डेस्क यांचे वर्तनही तसेच आहे। "आम्ही सेवेचे ऑडिट केले" इथपर्यंत ताणलेले क्लायंट पुनरावलोकन असा दावा करते ज्याला पुरावा आधार देत नाही।

ऑपरेटर धारणा व विनंत्यांबद्दल काय प्रकाशित करतो ते वाचा, तारीख नोंदवा, आणि ते मापन नाही तर स्वारस्य असलेल्या पक्षाचे विधान माना। तो पुराव्याचा दुर्बल प्रकार आहे, आणि पुन्हा सांगताना तो उंचावण्यापेक्षा फरक स्पष्ट सांगणे अधिक उपयुक्त आहे।

मग तुमच्याकडे जे आहे ते अनेक इनपुटपैकी एक म्हणून वापरा: इन्स्टॉल केलेल्या रिलीजची ओळख, सॉफ्टवेअरची देखभाल होत आहे का, क्लायंट कसा संरचित आहे, आणि ऑपरेटर स्वतःच्या प्रणालींबद्दल काय सांगतो। ओपन कोड त्या मूल्यांकनाला एका बिंदूवर बळकट करतो। तो उर्वरितची जागा घेत नाही।

ऑडिटच्या दाव्यात नेहमी त्याचे घटक व आवृत्त्या नमूद केल्या पाहिजेत। एखादा अहवाल कोणती रिपॉझिटरी व कोणते बिल्ड तपासले हे सांगू शकत नसेल, तर तो उत्पादन नाही तर हेतूचे वर्णन करत आहे।

संबंधित लेख