रिवर्स इंजीनियरिंग

From Vigyanwiki

रिवर्स अभियांत्रिकी (जिसे बैकवर्ड अभियांत्रिकी या बैक अभियांत्रिकी के रूप में भी जाना जाता है) ऐसी प्रक्रिया या विधि है जिसके माध्यम से कोई यह समझने का प्रयास करता है कि कैसे पहले से बने उपकरण, प्रक्रिया, प्रणाली या सॉफ़्टवेयर का टुकड़ा बहुत कम (यदि कोई हो) के साथ कार्य को पूरा करता है। अंतर्दृष्टि वास्तव में यह कैसे करता है। यह अनिवार्य रूप से एक प्रणाली को खोलने या विच्छेदित करने की प्रक्रिया है, यह देखने के लिए कि यह कैसे काम करती है, जिससे कि इसे डुप्लिकेट या बढ़ाया जा सके। विचाराधीन प्रणाली और नियोजित विधियों के आधार पर, रिवर्स अभियांत्रिकी के समय प्राप्त ज्ञान अप्रचलित वस्तुओं को पुनः तैयार करने, सुरक्षा विश्लेषण करने, या कुछ कैसे काम करता है यह सीखने में मदद कर सकता है।[1][2]

यद्यपि यह प्रक्रिया उस वस्तु के लिए विशिष्ट है जिस पर यह प्रदर्शन किया जा रहा है, सभी रिवर्स अभियांत्रिकी प्रक्रियाओं में तीन बुनियादी चरण होते हैं: सूचना निष्कर्षण, मॉडलिंग और समीक्षा करने के लिए उपयोग किया जाता है। सूचना निष्कर्षण का तात्पर्य ऑपरेशन करने के लिए सभी प्रासंगिक जानकारी एकत्र करने के अभ्यास से है। मॉडलिंग अमूर्त मॉडल में एकत्रित जानकारी के संयोजन के अभ्यास को संदर्भित करता है, जिसे नई वस्तु या प्रणाली को डिजाइन करने के लिए किसी गाइड के रूप में उपयोग किया जा सकता है। समीक्षा चुने हुए सार की वैधता सुनिश्चित करने के लिए मॉडल के परीक्षण को संदर्भित करती है।[1] रिवर्स अभियांत्रिकी कंप्यूटर अभियांत्रिकी, मैकेनिकल अभियांत्रिकी, डिजाईन, इलेक्ट्रॉनिक अभियांत्रिकी, सॉफ्टवेयर अभियांत्रिकी, केमिकल अभियांत्रिकी और प्रणाली जीव विज्ञान के क्षेत्र में लागू है।[3] [4]

अवलोकन

विभिन्न क्षेत्रों में रिवर्स अभियांत्रिकी करने के कई कारण हैं। वाणिज्यिक या सैन्य लाभ के लिए हार्डवेयर के विश्लेषण में रिवर्स अभियांत्रिकी का मूल है।[5]: 13  चूंकि, रिवर्स अभियांत्रिकी प्रक्रिया, जैसे, प्रतिलिपि बनाने या आर्टिफैक्ट को किसी प्रकार से परिवर्तित करने से संबंधित नहीं है। यह केवल उत्पादों से डिडक्टिव रीज़निंग डिज़ाइन सुविधाओं का विश्लेषण है, जिनके मूल उत्पादन में सम्मलित प्रक्रियाओं के बारे में बहुत कम या कोई अतिरिक्त ज्ञान नहीं है।[5]: 15 

कुछ स्थितियों में, रिवर्स अभियांत्रिकी प्रक्रिया का लक्ष्य पुराने प्रणाली का दस्तावेज़ीकरण हो सकता है।[5]: 15 [6] यहां तक ​​​​कि जब रिवर्स-इंजीनियर उत्पाद प्रतियोगी का होता है, तो लक्ष्य उसकी नकल करना नहीं हो सकता है इसके अतिरिक्त प्रतियोगी विश्लेषण करना होता है।[7] इंटरोऑपरेबिलिटी बनाने के लिए रिवर्स अभियांत्रिकी का भी उपयोग किया जा सकता है और संयुक्त राज्य अमेरिका और यूरोपीय संघ के कुछ संकीर्ण-अनुरूप नियमों के अतिरिक्त, उस उद्देश्य के लिए विशिष्ट रिवर्स अभियांत्रिकी विधियों का उपयोग करने की वैधता दो दशकों से अधिक समय से दुनिया भर की अदालतों में गर्मागर्म लड़ी गई है।[8]

सॉफ्टवेयर रिवर्स अभियांत्रिकी सॉफ्टवेयर के रखरखाव और सुधार के लिए अंतर्निहित स्रोत कोड की समझ को बेहतर बनाने में मदद कर सकता है, सॉफ्टवेयर विकास के लिए निर्णय लेने के लिए प्रासंगिक जानकारी निकाली जा सकती है और कोड के चित्रमय प्रतिनिधित्व स्रोत कोड के बारे में वैकल्पिक विचार प्रदान कर सकते हैं। जो सॉफ़्टवेयर बग या भेद्यता का पता लगाने और उसे ठीक करने में मदद कर सकता है। अधिकांशतः, जैसा कि कुछ सॉफ़्टवेयर विकसित होता है, इसकी डिज़ाइन जानकारी और सुधार अधिकांशतः समय के साथ खो जाते हैं, लेकिन उस खोई हुई जानकारी को सामान्यतः रिवर्स अभियांत्रिकी से पुनर्प्राप्त किया जा सकता है। प्रक्रिया स्रोत कोड को समझने के लिए आवश्यक समय को कम करने में भी मदद कर सकती है, इस प्रकार सॉफ्टवेयर विकास की समग्र लागत को कम कर सकती है।[9] रिवर्स अभियांत्रिकी बेहतर कोड डिटेक्टरों के साथ सॉफ्टवेयर में लिखे गए दुर्भावनापूर्ण कोड का पता लगाने और उसे खत्म करने में भी मदद कर सकता है। स्रोत कोड को उलटने का उपयोग स्रोत कोड के वैकल्पिक उपयोगों को खोजने के लिए किया जा सकता है, जैसे स्रोत कोड की अनधिकृत प्रतिकृति का पता लगाना जहां इसका उपयोग करने का मूल नहीं था, या यह खुलासा करना कि प्रतिस्पर्धी का उत्पाद कैसे बनाया गया था।[10] सॉफ्टवेयर क्रैकिंग के लिए सामान्यतः उस प्रक्रिया का उपयोग किया जाता है उनकी कॉपी सुरक्षा को हटाने के लिए सॉफ्टवेयर और मीडिया को क्रैक करना,[10]: 7  या संभावित रूप से बेहतर नकल या यहां तक ​​कि समाप्त करना बनाने के लिए, जो सामान्यतः एक प्रतियोगी या हैकर का लक्ष्य होता है।[10]: 8 

मैलवेयर डेवलपर अधिकांशतः कंप्यूटर वायरस बनाने के लिए एक ऑपरेटिंग प्रणाली में कमजोरियों को खोजने के लिए रिवर्स अभियांत्रिकी विधियों का उपयोग करते हैं जो प्रणाली की कमजोरियों का फायदा उठा सकते हैं।[10]: 5  प्रतिस्थापन सिफर, सममित-कुंजी एल्गोरिथ्म या सार्वजनिक कुंजी क्रिप्टोग्राफी में कमजोरियों का पता लगाने के लिए क्रिप्ट विश्लेषण में रिवर्स अभियांत्रिकी का भी उपयोग किया जा रहा है।[10]: 6 

रिवर्स अभियांत्रिकी के अन्य उपयोग हैं:

  • इंटरफेसिंग या रिवर्स अभियांत्रिकी का उपयोग तब किया जा सकता है जब किसी प्रणाली को किसी अन्य प्रणाली से इंटरफेस करने की आवश्यकता होती है और दोनों प्रणाली कैसे बातचीत करेंगे, यह स्थापित किया जाना है। ऐसी आवश्यकताएं सामान्यतः इंटरऑपरेबिलिटी के लिए सम्मलित होती हैं।
  • सैन्य या [[औद्योगिक जासूसी]] जासूसी। एक प्रोटोटाइप को चोरी या कैप्चर करके और इसे नष्ट करके दुश्मन या प्रतिस्पर्धी के नवीनतम शोध के बारे में जानने के परिणामस्वरूप समान उत्पाद का विकास हो सकता है या इसके खिलाफ बेहतर प्रतिकार हो सकता है।
  • अप्रचलन या एकीकृत परिपथों को अधिकांशतः स्वामित्व वाली प्रणालियों पर डिजाइन किया जाता है और उत्पादन लाइनों पर बनाया जाता है, जो कुछ ही वर्षों में अप्रचलित हो जाते हैं। जब उन भागों का उपयोग करने वाले प्रणाली को अब बनाए नहीं रखा जा सकता है, क्योंकि नई तकनीक में कार्यक्षमता को सम्मलित करने का एकमात्र विधि सम्मलित चिप को रिवर्स-इंजीनियर करना है और फिर नए उपकरणों का उपयोग करके मार्गदर्शक के रूप में प्राप्त समझ के फलस्वरूप इसे रीमेक (कंप्यूटिंग) करना है। इसका एक अन्य अप्रचलन उत्पन्न समस्या जिसे रिवर्स अभियांत्रिकी द्वारा हल किया जा सकता है, सम्मलित विरासत उपकरणों का समर्थन (रखरखाव और निरंतर संचालन के लिए आपूर्ति) की आवश्यकता है जो अब उनके मूल उपकरण निर्माता द्वारा समर्थित नहीं हैं। समस्या सैन्य अभियानों में विशेष रूप से महत्वपूर्ण है।
  • उत्पाद सुरक्षा विश्लेषण यह जांच करता है कि कोई उत्पाद अपने घटकों और अनुमानित लागतों के विनिर्देशों को निर्धारित करके कैसे काम करता है और संभावित पेटेंट उल्लंघन की पहचान करता है। इसके अतिरिक्त उत्पाद सुरक्षा विश्लेषण का एक भाग प्रणाली घटक के डिजाइन को अलग करके और उसका विश्लेषण करके संवेदनशील डेटा प्राप्त कर रहा है।[11] इसका एक और मूल प्रतिलिपि सुरक्षा को हटाना या पहुंच प्रतिबंधों को पृथक करना हो सकता है।
  • प्रतियोगी तकनीकी बुद्धि जिसका प्राय यह समझना है कि कोई व्यक्ति वास्तव में क्या कर रहा है, इसके अतिरिक्त कि वह क्या कह रहा है कि वह कर रहा है।
  • पैसे की बचत यह पता लगाना कि इलेक्ट्रॉनिक्स का एक टुकड़ा क्या कर सकता है, एक उपयोगकर्ता को अलग उत्पाद खरीदने से बचा सकता है।
  • पुन: प्रयोजन में अप्रचलित वस्तुओं का फिर अलग-लेकिन-उपयोगी विधियाँ से पुन: उपयोग किया जाता है।
  • डिज़ाइन। उत्पादन और डिजाइन कंपनियों ने रिवर्स अभियांत्रिकी को व्यावहारिक शिल्प-आधारित निर्माण प्रक्रिया पर लागू किया। कंपनियां 3डी स्कैनिंग, 3डी री-मॉडलिंग और री-डिजाइन के जरिए "ऐतिहासिक" विनिर्माण संग्रह पर काम कर सकती हैं। 2013 में इटैलियन मैन्युफैक्चरर्स बाल्डी और सैवियो फर्मीनो ने फ्लोरेंस यूनिवर्सिटी के साथ मिलकर उनके आविष्कार, डिजाइन और उत्पादन प्रक्रिया को ऑप्टिमाइज किया।[12]

सामान्य परिस्थितियाँ

मशीनें

जैसा कि कंप्यूटर एडेड डिजाइन (कैड) अधिक लोकप्रिय हो गया है, रिवर्स अभियांत्रिकी 3डी कैड, कंप्यूटर सहायतायुक्त विनिर्माण, कम्प्यूटर एडेड अभियांत्रिकी, या अन्य सॉफ़्टवेयर में उपयोग के लिए सम्मलित भौतिक भाग का 3डी वर्चुअल मॉडल बनाने के लिए व्यवहार्य विधि बन गया है। .[13] रिवर्स-अभियांत्रिकी प्रक्रिया में किसी वस्तु को मापना और फिर उसे 3डी मॉडल के रूप में पुनर्निर्माण करना सम्मलित है। भौतिक वस्तु को 3डी स्कैनर विधियों जैसे समन्वय-मापने वाली मशीन, 3डी स्कैनर त्रिकोण, 3डी स्कैनर संरचित प्रकाश, या औद्योगिक सीटी स्कैनिंग (कंप्यूटेड टोमोग्राफी) का उपयोग करके मापा जा सकता है। अकेले मापा गया डेटा, जिसे सामान्यतः किसी बिंदु के बादल के रूप में दर्शाया जाता है, में सामयिक जानकारी और डिज़ाइन के इरादे का अभाव होता है। पॉइंट क्लाउड को त्रिकोणीय-सामना वाले जाल में परिवर्तित करके पूर्व को पुनर्प्राप्त किया जा सकता है। रिवर्स अभियांत्रिकी का उद्देश्य इस तरह के जाल के उत्पादन से परे जाना है और सरल विश्लेषणात्मक सतहों के स्थितियों में डिजाइन के मूल को पुनर्प्राप्त करना है जहां उचित (विमान, सिलेंडर इत्यादि) साथ ही संभावित रूप से गैर-समान तर्कसंगत बी-स्पलाइन सतहें सीमा-प्रतिनिधित्व सीएडी मॉडल का उत्पादन करने के लिए इस तरह के मॉडल की पुनर्प्राप्ति की डिज़ाइन को नई आवश्यकताओं को पूरा करने के लिए संशोधित करने की अनुमति देती है, तथा निर्माण के लिए योजना तैयार की जाती है।

हाइब्रिड मॉडलिंग सामान्यतः उपयोग किया जाने वाला शब्द है जब नर्ब्स और ठोस मॉडलिंग को साथ में लागू किया जाता है। ज्यामितीय और फ्रीफॉर्म सतहों के संयोजन का उपयोग करके 3डी मॉडलिंग की शक्तिशाली विधि प्रदान किया जा सकता है। हाइब्रिड मॉडल बनाने के लिए फ़्रीफ़ॉर्म डेटा के क्षेत्रों को सटीक ज्यामितीय सतहों के साथ जोड़ा जा सकता है। इसका एक विशिष्ट उदाहरण सिलेंडर हेड की रिवर्स अभियांत्रिकी होगी, जिसमें फ्रीफॉर्म कास्ट फीचर सम्मलित हैं, जैसे कि वॉटर जैकेट और उच्च-सहिष्णुता वाले मशीनी क्षेत्र इत्यादि।[14]

रिवर्स अभियांत्रिकी का उपयोग व्यवसायों द्वारा सम्मलित भौतिक ज्यामिति को डिजिटल उत्पाद विकास वातावरण में लाने, अपने स्वयं के उत्पादों का डिजिटल 3डी रिकॉर्ड बनाने या प्रतियोगियों के उत्पादों का आकलन करने के लिए भी किया जाता है। इसका उपयोग यह विश्लेषण करने के लिए किया जाता है कि कोई उत्पाद कैसे काम करता है, यह क्या करता है, इसमें कौन से घटक हैं; अनुमानित लागत; संभावित पेटेंट उल्लंघन की पहचान करें; आदि।

मूल्य अभियांत्रिकी संबंधित गतिविधि जिसका उपयोग व्यवसायों द्वारा भी किया जाता है, में उत्पादों का विखंडन और विश्लेषण सम्मलित है। चूंकि, उद्देश्य लागत में कटौती के अवसर तलाशना है।

पीसीबी रिवर्स अभियांत्रिकी

मुद्रित सर्किट बोर्डों की रिवर्स अभियांत्रिकी में एक विशेष सर्किट बोर्ड के लिए फैब्रिकेशन डेटा को पुनः बनाना सम्मलित है। यह बेंचमार्किंग की अनुमति देने और विरासत प्रणालियों के समर्थन के लिए किया जाता है।

सॉफ्टवेयर

1990 में, इंस्टीट्यूट ऑफ़ इलेक्ट्रिकल एंड इलेक्ट्रॉनिक्स इंजीनियर्स (IEEE) ने (सॉफ्टवेयर) रिवर्स अभियांत्रिकी (SRE) को विश्लेषण की प्रक्रिया के रूप में परिभाषित किया प्रणाली के घटकों और उनके अंतर्संबंधों की पहचान करने के लिए विषय प्रणाली और किसी अन्य रूप में या उच्च स्तर पर प्रणाली का प्रतिनिधित्व बनाने के लिए अमूर्तता का स्तर जिसमें विषय प्रणाली सॉफ्टवेयर विकास का अंतिम उत्पाद है। रिवर्स अभियांत्रिकी केवल परीक्षा की प्रक्रिया है, और विचाराधीन सॉफ़्टवेयर प्रणाली को संशोधित नहीं किया गया है, जो अन्यथा रीअभियांत्रिकी (सॉफ़्टवेयर) | री-अभियांत्रिकी या पुनर्गठन होगा। रिवर्स अभियांत्रिकी उत्पाद चक्र के किसी भी चरण से किया जा सकता है, जरूरी नहीं कि कार्यात्मक अंत उत्पाद से।[9]

रिवर्स अभियांत्रिकी में दो घटक होते हैं: रिडॉक्यूमेंटेशन और डिज़ाइन रिकवरी। री डाक्यूमेंटेशन कंप्यूटर कोड के नए प्रतिनिधित्व का निर्माण है जिससे कि इसे समझना सरल हो। इस बीच, डिज़ाइन पुनर्प्राप्ति उत्पाद की कार्यक्षमता को पूरी तरह से समझने के लिए सामान्य ज्ञान या उत्पाद के व्यक्तिगत अनुभव से कटौती या तर्क का उपयोग है।[9] इसे विकास चक्र से पीछे की ओर जाते हुए भी देखा जा सकता है।[15] इस मॉडल में, कार्यान्वयन चरण (स्रोत कोड फॉर्म में) के आउटपुट को पारंपरिक जलप्रपात मॉडल के व्युत्क्रम में, विश्लेषण चरण में वापस रिवर्स-इंजीनियर किया जाता है। इस तकनीक के लिए एक और शब्द कार्यक्रम की समझ है।[6] रिवर्स अभियांत्रिकी की विधियों का पता लगाने और विस्तार करने के लिए रिवर्स अभियांत्रिकी (WCRE) पर कार्य सम्मेलन वार्षिक रूप से आयोजित किया गया है।[10][16] कंप्यूटर एडेड सॉफ्टवेयर अभियांत्रिकी (CASE) और ऑटोमेटेड कोड जनरेशन ने रिवर्स अभियांत्रिकी के क्षेत्र में काफी योगदान दिया है।[10]

सॉफ्टवेयर विरोधी छेड़छाड़ तकनीक जैसे अस्पष्टता (सॉफ़्टवेयर) का उपयोग मालिकाना सॉफ़्टवेयर और सॉफ़्टवेयर-संचालित प्रणाली की रिवर्स अभियांत्रिकी और री-अभियांत्रिकी दोनों को रोकने के लिए किया जाता है। व्यवहार में, दो मुख्य प्रकार की रिवर्स अभियांत्रिकी सामने आती है। पहले स्थितियों में, सॉफ़्टवेयर के लिए स्रोत कोड पहले से ही उपलब्ध है, लेकिन कार्यक्रम के उच्च-स्तरीय पहलू, जो शायद खराब प्रलेखित या प्रलेखित हैं, लेकिन अब मान्य नहीं हैं, की खोज की जाती है। दूसरे स्थितियों में, सॉफ़्टवेयर के लिए कोई स्रोत कोड उपलब्ध नहीं है, और सॉफ़्टवेयर के लिए एक संभावित स्रोत कोड खोजने के किसी भी प्रयास को रिवर्स अभियांत्रिकी माना जाता है। शब्द का दूसरा उपयोग अधिकांश लोगों के लिए अधिक परिचित है। कॉपीराइट उल्लंघन से बचने के लिए सॉफ्टवेयर की रिवर्स अभियांत्रिकी साफ कमरे का डिजाइन तकनीक का उपयोग कर सकती है।

संबंधित नोट पर, सॉफ्टवेयर अभियांत्रिकी में ब्लैक बॉक्स परीक्षण रिवर्स अभियांत्रिकी के साथ बहुत सरल है। परीक्षक के पास सामान्यतः अप्लिकेशन प्रोग्रामिंग अंतरफलक होता है, लेकिन उत्पाद को बाहर से कोस कर बग और अनिर्दिष्ट सुविधाओं को खोजने का लक्ष्य होता है।[17]

रिवर्स अभियांत्रिकी के अन्य उद्देश्यों में सुरक्षा ऑडिटिंग, कॉपी प्रोटेक्शन (सॉफ्टवेयर क्रैकिंग) को हटाना, उपभोक्ता इलेक्ट्रॉनिक्स में अधिकांशतः सम्मलित एक्सेस प्रतिबंधों को तोड़ना, अंतः स्थापित प्रणालियाँ (जैसे इंजन मैनेजमेंट प्रणाली्स) का अनुकूलन, इन-हाउस रिपेयर या रेट्रोफिट्स, अतिरिक्त को सक्षम करना सम्मलित है। कम लागत वाले अपंग हार्डवेयर (जैसे कि कुछ ग्राफिक्स कार्ड चिप-सेट), या यहां तक ​​​​कि जिज्ञासा की संतुष्टि पर सुविधाएँ भी उपयोग की जाती हैं।

बाइनरी सॉफ्टवेयर

यदि सॉफ़्टवेयर के लिए स्रोत कोड अनुपलब्ध है तो बाइनरी रिवर्स अभियांत्रिकी की जाती है।[10] इस प्रक्रिया को कभी-कभी रिवर्स कोड अभियांत्रिकी या आरसीई कहा जाता है।[18] उदाहरण के लिए, जावा मंच के लिए बायनेरिज़ का अपघटन जाडी का उपयोग करके पूरा किया जा सकता है। रिवर्स अभियांत्रिकी का एक प्रसिद्ध स्थिति [[IBM PC]]

बायोस (BIOS) का पहला गैर-IBM कार्यान्वयन था, जिसने ऐतिहासिक IBM PC संगत उद्योग को लॉन्च किया जो कई वर्षों से अत्यधिक प्रभावी कम्पुटर के वो भाग जिसे छूकर मेहसूस किया जा सके प्लेटफ़ॉर्म रहा है। प्रतिलिप्यधिकार नियम में उचित उपयोग अपवाद द्वारा सॉफ्टवेयर की रिवर्स अभियांत्रिकी अमेरिका में सुरक्षित है।[19] सांबा सॉफ्टवेयर, जो उन प्रणालीों को अनुमति देता है जो माइक्रोसॉफ़्ट विंडोज़ प्रणाली को चलाने वाले प्रणाली के साथ फाइलों को साझा करने के लिए नहीं चलाते हैं, सॉफ्टवेयर रिवर्स अभियांत्रिकी का एक उत्कृष्ट उदाहरण है।[20] चूंकि सांबा प्रोजेक्ट को अप्रकाशित जानकारी को रिवर्स-इंजीनियर करना था कि विंडोज फाइल शेयरिंग कैसे काम करती है जिससे कि गैर-विंडोज कंप्यूटर इसका अनुकरण कर सकें। शराब (सॉफ्टवेयर) प्रोजेक्ट विंडोज एपीआई के लिए एक ही काम करता है, और OpenOffice.org एक पार्टी है जो माइक्रोसॉफ्ट ऑफिस फ़ाइल स्वरूपों के लिए कर रही है। एनटी शाखा के वर्तमान विंडोज ऑपरेटिंग प्रणाली के साथ बाइनरी (एबीआई और एपीआई) संगतता प्रदान करने का प्रयास करके रिएक्टोस प्रोजेक्ट अपने लक्ष्यों में और भी महत्वाकांक्षी है, जो सॉफ्टवेयर और ड्राइवरों को विंडोज के लिए लिखे गए सॉफ्टवेयर और ड्राइवरों को क्लीन-रूम रिवर्स-इंजीनियर पर चलाने की अनुमति देता है। मुफ्त सॉफ्टवेयर (जीपीएल) समकक्ष। विंडोस स्कोप पर चल रही सभी प्रक्रियाओं के बाइनरी-स्तर, ग्राफिकल रिवर्स अभियांत्रिकी सहित विंडोज प्रणाली की लाइव मेमोरी की पूरी सामग्री को रिवर्स-अभियांत्रिकी के लिए अनुमति देता है।

एक और क्लासिक, यदि प्रसिद्ध नहीं है, तो उदाहरण यह है कि 1987 में बेल प्रयोगशालाओं ने मैक ओ एस प्रणाली 4.1 को रिवर्स-इंजीनियर किया, जो मूल रूप से ऐप्पल मैकिनटोश से पर चल रहा था, जिससे कि वह इसे अपने स्वयं के अल्प निर्देश सेट कंप्यूटर पर चला सके।[21]

बाइनरी सॉफ्टवेयर तकनीकें

सॉफ्टवेयर की रिवर्स अभियांत्रिकी को विभिन्न विधियों से पूरा किया जा सकता है। सॉफ्टवेयर रिवर्स अभियांत्रिकी के तीन मुख्य समूह हैं सूचना विनिमय के अवलोकन के माध्यम से विश्लेषण, प्रोटोकॉल रिवर्स अभियांत्रिकी में सबसे अधिक प्रचलित है, जिसमें बस विश्लेषक और पैकेट सूंघने वाले का उपयोग करना सम्मलित है, जैसे कंप्यूटर बस या कंप्यूटर नेटवर्क कनेक्शन तक पहुंचने और उस पर यातायात डेटा प्रकट करने के लिए किया जाता है। बस या नेटवर्क के व्यवहार का विश्लेषण स्टैंडअलोन कार्यान्वयन के लिए किया जा सकता है जो उस व्यवहार की नकल करता है। यह रिवर्स अभियांत्रिकी डिवाइस ड्राइवर के लिए विशेष रूप से उपयोगी है। कभी-कभी, अंतःस्थापित प्रणाली पर रिवर्स अभियांत्रिकी को निर्माता द्वारा जानबूझकर पेश किए गए टूल जैसे JTAG पोर्ट या अन्य डिबगिंग माध्यमों द्वारा बहुत मदद मिलती है। माइक्रोसाफ्ट विंडोज में, निम्न-स्तरीय डिबगर जैसे सॉफ्टिस लोकप्रिय हैं। डीसेम्बली का उपयोग करके डिसअसेंबल करना, जिसका अर्थ है कि प्रोग्राम की कच्ची मशीन भाषा को केवल मशीन-भाषा निमोनिक्स (mnemonics) की सहायता से पढ़ा और समझा जाता है। यह किसी भी कंप्यूटर प्रोग्राम पर काम करता है, लेकिन इसमें अधिक समय लग सकता है, मुख्यतः उनके लिए जो मशीन कोड के आदी नहीं हैं। इंटरएक्टिव डीअसेम्बलर विशेष रूप से लोकप्रिय उपकरण है। डीकम्पाइलर का उपयोग करके डिकंपिलेशन प्रक्रिया जो अलग-अलग परिणामों के साथ प्रयास करती है, केवल मशीन कोड या बाईटकोड में उपलब्ध प्रोग्राम के लिए कुछ उच्च-स्तरीय भाषा में स्रोत कोड को पुनः बनाने के लिए उपयोगी होता है।

सॉफ्टवेयर वर्गीकरण

सॉफ़्टवेयर वर्गीकरण सॉफ़्टवेयर नमूनों के बीच कोड संबंधों का पता लगाने के लिए उपयोग की जाने वाली विभिन्न सॉफ़्टवेयर बायनेरिज़ (जैसे एक ही बाइनरी के दो अलग-अलग संस्करण) के बीच समानता की पहचान करने की प्रक्रिया है। कार्य पारंपरिक रूप से कई कारणों से मैन्युअल रूप से किया गया था (जैसे कि भेद्यता का पता लगाने और कॉपीराइट उल्लंघन के लिए पैच विश्लेषण), लेकिन अब यह बड़ी संख्या में नमूनों के लिए कुछ हद तक स्वचालित रूप से किया जा सकता है।

इस पद्धति का उपयोग लंबे और संपूर्ण रिवर्स अभियांत्रिकी कार्यों (एक जटिल एल्गोरिथ्म या सॉफ्टवेयर के बड़े टुकड़े का पूर्ण विश्लेषण) के लिए किया जा रहा है। सामान्यतः, सांख्यिकीय वर्गीकरण को एक कठिन समस्या माना जाता है, जो सॉफ्टवेयर वर्गीकरण के लिए भी सही है, और बहुत कम समाधान/उपकरण जो इस कार्य को अच्छी तरह से संभालते हैं।

स्रोत कोड

यूएमएल आरेखों को रिवर्स अभियांत्रिकी के रूप में उत्पन्न करने के लिए कई एकीकृत मॉडलिंग भाषा उपकरण स्रोत कोड के आयात और विश्लेषण की प्रक्रिया को संदर्भित करते हैं। यूएमएल उपकरणों की सूची देखें।

यद्यपि यूएमएल रिवर्स अभियांत्रिकी प्रदान करने का एक दृष्टिकोण है, लेकिन अंतरराष्ट्रीय मानकों की गतिविधियों में हालिया प्रगति के परिणामस्वरूप नॉलेज डिस्कवरी मेटामॉडल (केडीएम) का विकास हुआ है। मानक प्रोग्रामिंग भाषा के निर्माण और उनके अंतर्संबंधों के मध्यवर्ती (या अमूर्त) प्रतिनिधित्व के लिए एक सत्तामीमांसा प्रदान करता है। एक वस्तु प्रबंधन समूह मानक (एक आईएसओ मानक बनने की राह पर), केडीएम ने उपकरण और विश्लेषण वातावरण के विकास के साथ उद्योग में पकड़ बनाना शुरू कर दिया है जो स्रोत, बाइनरी और बाइट कोड के निष्कर्षण और विश्लेषण को वितरित कर सकता है। स्रोत कोड विश्लेषण के लिए, केडीएम के दानेदार मानकों का आर्किटेक्चर सॉफ्टवेयर प्रणाली प्रवाह (डेटा, नियंत्रण और कॉल मैप्स), आर्किटेक्चर, और बिजनेस लेयर नॉलेज (नियम, नियम और प्रक्रिया) के निष्कर्षण को सक्षम बनाता है। मानक विस्तृत विश्लेषण (जैसे मूल कारण, प्रभाव) या व्युत्पन्न विश्लेषण (जैसे व्यवसाय प्रक्रिया निष्कर्षण) के लिए प्रणाली ज्ञान की विभिन्न परतों के सहसंबंध को सक्षम करने वाले एक सामान्य डेटा प्रारूप (XMI) के उपयोग को सक्षम बनाता है। चूंकि भाषाओं की संख्या, सॉफ्टवेयर भाषाओं के निरंतर विकास और नई भाषाओं के विकास के कारण भाषा निर्माणों का प्रतिनिधित्व करने के प्रयास कभी खत्म नहीं हो सकते हैं, लेकिन मानक व्यापक भाषा सेट के साथ-साथ समर्थन के लिए एक्सटेंशन के उपयोग की अनुमति देता है। क्रमागत उन्नति या केडीएम यूएमएल, बीपीएमएन, आरडीएफ, और अन्य मानकों के साथ संगत है जो अन्य वातावरण में प्रवासन को सक्षम बनाता है और इस प्रकार सॉफ्टवेयर प्रणाली परिवर्तन और एंटरप्राइज़ बिजनेस लेयर विश्लेषण जैसे प्रयासों के लिए प्रणाली ज्ञान का लाभ उठाता है।

प्रोटोकॉल

संचार प्रोटोकॉल नियमों के सेट हैं जो संदेश स्वरूपों का वर्णन करते हैं और संदेशों का आदान-प्रदान कैसे किया जाता है: प्रोटोकॉल परिमित-राज्य मशीन। तदनुसार, प्रोटोकॉल रिवर्स-अभियांत्रिकी की समस्या को दो उप-समस्याओं में विभाजित किया जा सकता है: संदेश प्रारूप और राज्य-मशीन रिवर्स-अभियांत्रिकी।

संदेश प्रारूप परंपरागत रूप से एक कठिन मैनुअल प्रक्रिया द्वारा रिवर्स-इंजीनियर किया गया है, जिसमें प्रोटोकॉल कार्यान्वयन कैसे संदेशों को संसाधित करता है, इसका विश्लेषण सम्मलित है, लेकिन हाल के शोध ने कई स्वचालित समाधानों का प्रस्ताव दिया है।[22][23][24] सामान्यतः, स्वचालित दृष्टिकोण समूह विभिन्न क्लस्टर विश्लेषण का उपयोग करके संदेशों को समूहों में देखते हैं, या वे संदेश प्रसंस्करण का पता लगाने वाले प्रोटोकॉल कार्यान्वयन का अनुकरण करते हैं।

प्रोटोकॉल की राज्य-मशीनों की रिवर्स-अभियांत्रिकी पर कम काम हुआ है। सामान्यतः, प्रोटोकॉल स्थिति के लिए मशीनों को या तो ऑफ़लाइन सीखने की प्रक्रिया के माध्यम से सीखा जा सकता है, जो संचार को निष्क्रिय रूप से देखता है और संदेशों के सभी देखे गए अनुक्रमों को स्वीकार करने वाली सबसे सामान्य राज्य-मशीन बनाने का प्रयास करता है, और ऑनलाइन मशीन लर्निंग, जो इंटरैक्टिव पीढ़ी की अनुमति देता है संदेशों के अनुक्रमों की जांच करना और उन जांच अनुक्रमों की प्रतिक्रियाओं को सुनना इत्यादि। सामान्यतः छोटी स्थिति की मशीनों की ऑफ़लाइन शिक्षा को एनपी-पूर्ण के रूप में जाना जाता है,[25] लेकिन ऑनलाइन शिक्षण बहुपद समय में किया जा सकता है।[26] तुलना एट अल द्वारा एक स्वचालित ऑफ़लाइन दृष्टिकोण का प्रदर्शन किया गया है।[24]और चो एट अल द्वारा एक ऑनलाइन दृष्टिकोण।[27]

विशिष्ट प्रोटोकॉल के अन्य घटक, जैसे एन्क्रिप्शन और हैश फ़ंक्शंस, स्वचालित रूप से रिवर्स-इंजीनियर भी हो सकते हैं। सामान्यतः, स्वचालित दृष्टिकोण प्रोटोकॉल कार्यान्वयन के निष्पादन का पता लगाते हैं और अनएन्क्रिप्टेड पैकेट रखने वाली मेमोरी में बफ़र्स का पता लगाने का प्रयास करते हैं।[28]

एकीकृत सर्किट/स्मार्ट कार्ड

रिवर्स अभियांत्रिकी एक स्मार्ट कार्ड का विश्लेषण करने का एक आक्रामक और विनाशकारी रूप है। हमलावर स्मार्ट कार्ड की परत दर परत खोदने के लिए रसायनों का उपयोग करता है और स्कैनिंग इलेक्ट्रॉन माइक्रोस्कोप (एसईएम) के साथ तस्वीरें लेता है। वह तकनीक स्मार्ट कार्ड के संपूर्ण हार्डवेयर और सॉफ्टवेयर भाग को प्रकट कर सकती है। हमलावर के लिए प्रमुख समस्या यह है कि सब कुछ कैसे काम करता है यह पता लगाने के लिए सब कुछ सही क्रम में लाना है। कार्ड के निर्माता मेमोरी स्थान को मिलाकर कुंजियों और संचालन को छिपाने की प्रयास करते हैं, जैसे कि बस पांव मारना इत्यादि।[29][30]

कुछ स्थितियों में, स्मार्ट कार्ड चालू रहने के समय वोल्टेज को मापने के लिए जांच संलग्न करना भी संभव है। कार्ड के निर्माता उस आक्रमण का पता लगाने और उसे रोकने के लिए सेंसर लगाते हैं।[31] यह हमला बहुत सरल नहीं है क्योंकि इसके लिए प्रयास और विशेष उपकरण दोनों में बड़े निवेश की आवश्यकता होती है जो सामान्यतः केवल बड़े चिप निर्माताओं के लिए उपलब्ध होता है। इसके अतिरिक्त, इस आक्रमण से भुगतान कम है क्योंकि अन्य सुरक्षा विधियों का अधिकांशतः उपयोग किया जाता है जैसे छाया खाते। यह अभी भी अनिश्चित है कि एन्क्रिप्शन डेटा को दोहराने के लिए चिप-एंड-पिन कार्ड के खिलाफ आक्रमण और फिर पिन को क्रैक करने के लिए बहु-कारक प्रमाणीकरण पर लागत प्रभावी हमला होगा।

फुल रिवर्स अभियांत्रिकी कई प्रमुख चरणों में आगे बढ़ती है।

छवियों को SEM के साथ लेने के बाद पहला कदम छवियों को एक साथ सिलाई करना है, जो आवश्यक है क्योंकि प्रत्येक परत को एक शॉट द्वारा कैप्चर नहीं किया जा सकता है। एक एसईएम को सर्किट के क्षेत्र में स्वीप करने और पूरी परत को कवर करने के लिए कई सौ छवियां लेने की जरूरत होती है। छवि सिलाई इनपुट के रूप में कई सौ तस्वीरें लेती है और पूरी परत की एक ठीक से ओवरलैप की गई तस्वीर को आउटपुट करती है।

अगला, सिले हुए परतों को संरेखित करने की आवश्यकता है क्योंकि नमूना, नक़्क़ाशी के बाद, हर बार SEM के सापेक्ष ठीक उसी स्थिति में नहीं रखा जा सकता है। इसलिए, सिले हुए संस्करण सही विधियाँ से ओवरलैप नहीं होंगे, जैसा कि वास्तविक सर्किट पर होता है। सामान्यतः, तीन संबंधित बिंदुओं का चयन किया जाता है और उसके आधार पर एक परिवर्तन लागू किया जाता है।

सर्किट संरचना को निकालने के लिए, संरेखित, सिले हुए चित्रों को खंडित करने की आवश्यकता होती है, जो महत्वपूर्ण सर्किटरी को हाइलाइट करता है और इसे निर्बाध पृष्ठभूमि और इन्सुलेट सामग्री से अलग करता है।

अंत में, एक परत से दूसरी परत तक तारों का पता लगाया जा सकता है, और सर्किट की नेटलिस्ट, जिसमें सर्किट की सभी जानकारी होती है, का पुनर्निर्माण किया जा सकता है।

सैन्य अनुप्रयोग

रिवर्स अभियांत्रिकी का उपयोग अधिकांशतः लोगों द्वारा अन्य देशों की विधियों, उपकरणों, या सूचनाओं की नकल करने के लिए किया जाता है जो नियमित सैनिकों द्वारा खेतों में या सैन्य खुफिया अभियानों द्वारा प्राप्त की जाती हैं। यह अधिकांशतः द्वितीय विश्व युद्ध और शीत युद्ध के समय उपयोग किया गया था। यहाँ द्वितीय विश्व युद्ध और बाद के प्रसिद्ध उदाहरण हैं:

  • पेट्रोल रखने का मर्तबान: WW2 में ब्रिटिश और अमेरिकी सेना ने देखा कि जर्मनों के पास उत्कृष्ट डिजाइन वाले गैसोलीन के डिब्बे थे। वे उन कैनों की रिवर्स-अभियांत्रिकी प्रतियाँ बनाते थे, जिन्हें जैरी कैन्स के नाम से जाना जाता था।
  • टैंक रोधी झटका: जर्मनों ने द्वितीय विश्व युद्ध के समय एक अमेरिकी बाजूका (bazooka) पर स्थापत्य कर लिया और बड़े पैंजरश्रेक को बनाने के लिए इसे रिवर्स इंजीनियर किया।
  • टुपोलेव टीयू-4: 1944 में, तीन अमेरिकी बी -29 सुपरफोर्ट्रेस|B-29 बमवर्षकों को जापान के मिशन पर सोवियत संघ में उतरने के लिए मजबूर किया गया था। सोवियत संघ, जिनके पास समान सामरिक बमवर्षक नहीं था, ने बी-29 की नकल करने का फैसला किया। तीन वर्षों के भीतर, उन्होंने Tu-4 को लगभग पूर्ण प्रति के रूप में विकसित कर लिया था।[32]
  • एससीआर-584 रडार: द्वितीय विश्व युद्ध के बाद सोवियत संघ द्वारा कॉपी किया गया, यह कुछ संशोधनों के लिए जाना जाता है - СЦР-584, Бинокль-डी.
  • वी-2 रॉकेट: युद्ध के अंत में पश्चिमी सहयोगियों द्वारा वी-2 और संबंधित प्रौद्योगिकियों के तकनीकी दस्तावेजों पर कब्जा कर लिया गया था। अमेरिकियों ने ऑपरेशन पेपरक्लिप के माध्यम से अपने रिवर्स अभियांत्रिकी प्रयासों पर ध्यान केंद्रित किया, जिससे PGM-11 रेडस्टोन रॉकेट का विकास हुआ।[33] सोवियत संघ ने तकनीकी दस्तावेजों और योजनाओं को पुन: पेश करने के लिए पकड़े गए जर्मन इंजीनियरों का उपयोग किया और पकड़े गए हार्डवेयर से रॉकेट का अपना क्लोन बनाने के लिए काम किया, R-1 (मिसाइल)|R-1। इस प्रकार युद्ध के बाद का सोवियत रॉकेट कार्यक्रम शुरू हुआ, जिसके कारण R-7 Semyorka|R-7 और अंतरिक्ष दौड़ की शुरुआत हुई।
  • विम्पेल K-13|K-13/R-3S मिसाइल (नाटो रिपोर्टिंग नाम AA-2 एटोल), AIM-9 सिडविंदर की एक सोवियत रिवर्स-इंजीनियर्ड कॉपी, एक ताइवानी (ROCAF) AIM-9B हिट के बाद संभव हुई सितंबर 1958 में बिना विस्फोट के एक चीनी पीएलए मिग 17[34] मिसाइल एयरफ्रेम के भीतर दर्ज हो गई, और पायलट आधार पर लौट आया, जिसे सोवियत वैज्ञानिक मिसाइल विकास में एक विश्वविद्यालय के पाठ्यक्रम के रूप में वर्णित करेंगे।
  • BGM-71 टो मिसाइल: मई 1975 में, टो और मैवरिक मिसाइलों के सह-उत्पादन पर ईरान और ह्यूजेस मिसाइल प्रणाली्स के बीच मूल्य निर्धारण संरचना में असहमति के कारण बातचीत ठप हो गई, बाद की 1979 की क्रांति ने ऐसे सह-उत्पादन की सभी योजनाओं को समाप्त कर दिया। ईरान बाद में मिसाइल की रिवर्स-अभियांत्रिकी में सफल रहा और अब अपनी खुद की प्रति, तूफान का उत्पादन करता है।
  • चीन के पास पश्चिमी और रूसी हार्डवेयर की पीपुल्स रिपब्लिक ऑफ चाइना में बौद्धिक संपदा है, लड़ाकू विमानों से लेकर मिसाइलों और एचएमएमडब्ल्यूवी कारों तक, जैसे कि मिग-15,17,19,21 (जो जे-2,5,6 बन गया, 7) और Su-33 (जो J-15 बन गया)।[35] चीन के सैन्य विकास के हालिया विश्लेषणों ने उन्नत हथियार प्रणालियों के लिए अभ्यस्त रिवर्स अभियांत्रिकी की अंतर्निहित सीमाओं की ओर इशारा किया है।[36]
  • द्वितीय विश्व युद्ध के समय, पोलिश और ब्रिटिश क्रिप्टोग्राफरों ने कमजोरियों के लिए एनिग्मा संदेश एन्क्रिप्शन मशीनों के कैप्चर किए गए जर्मन क्रिप्ट विश्लेषण का अध्ययन किया। उनके ऑपरेशन को तब इलेक्ट्रोमैकेनिकल उपकरणों, बमों पर सिम्युलेटेड किया गया था, जिसने एनिग्मा मशीनों की सभी संभावित स्क्रैम्बलर सेटिंग्स की प्रयास की थी, जो जर्मनों द्वारा भेजे गए कोडित संदेशों को तोड़ने में मदद करती थी।
  • द्वितीय विश्व युद्ध के समय भी, ब्रिटिश वैज्ञानिकों ने बीम्स की लड़ाई का विश्लेषण किया और रात में निर्देशित बमबारी मिशनों को करने के लिए वायु सेना द्वारा उपयोग की जाने वाली तेजी से परिष्कृत रेडियो नेविगेशन प्रणालियों की श्रृंखला को हराया। प्रणाली के लिए ब्रिटिश प्रतिवाद इतने प्रभावी थे कि कुछ स्थितियों में, जर्मन विमानों का नेतृत्व आरएएफ ठिकानों पर उतरने के संकेतों के कारण किया गया क्योंकि उनका मानना ​​​​था कि वे जर्मन क्षेत्र में वापस आ गए थे।

जीन नेटवर्क

रिवर्स अभियांत्रिकी अवधारणाओं को जीव विज्ञान पर भी लागू किया गया है, विशेष रूप से जीन नियामक नेटवर्क की संरचना और कार्य को समझने के कार्य के लिए। वे जैविक व्यवहार के लगभग हर पहलू को विनियमित करते हैं और कोशिकाओं को शारीरिक प्रक्रियाओं और गड़बड़ी के प्रति प्रतिक्रिया करने की अनुमति देते हैं। जीन नेटवर्क की संरचना और गतिशील व्यवहार को समझना इसलिए प्रणाली जीवविज्ञान की सर्वोपरि चुनौतियों में से एक है, कई अनुप्रयोगों में तत्काल व्यावहारिक नतीजों के साथ जो बुनियादी अनुसंधान से परे हैं।[37] आणविक जीव विज्ञान और डेटा विज्ञान विधियों का उपयोग करके रिवर्स अभियांत्रिकी जीन नियामक नेटवर्क के लिए कई विधियाँ हैं। उन्हें सामान्यतः छह वर्गों में विभाजित किया गया है:Cite error: Closing </ref> missing for <ref> tag जीन नेटवर्क की रिवर्स अभियांत्रिकी के अनुप्रयोग प्लांट फिजियोलॉजी के तंत्र को समझने से लेकर हैं[38] एंटीकैंसर थेरेपी के लिए नए लक्ष्यों को उजागर करना।[39]

पेटेंट कानून के साथ ओवरलैप

रिवर्स अभियांत्रिकी मुख्य रूप से प्रक्रिया या आर्टिफैक्ट की समझ प्राप्त करने के लिए लागू होती है जिसमें इसके निर्माता द्वारा इसके निर्माण, उपयोग या आंतरिक प्रक्रियाओं के विधियाँ को स्पष्ट नहीं किया गया है।

पेटेंट की गई वस्तुओं का अध्ययन करने के लिए खुद को रिवर्स-इंजीनियर नहीं करना पड़ता है, क्योंकि पेटेंट का सार यह है कि आविष्कारक स्वयं एक विस्तृत सार्वजनिक प्रकटीकरण प्रदान करते हैं, और बदले में सम्मलित आविष्कार के बौद्धिक संपदा अधिकार प्राप्त करते हैं। चूंकि, एक या अधिक पेटेंट के अनुसार उत्पादित एक वस्तु में अन्य तकनीक भी सम्मलित हो सकती है जो पेटेंट नहीं है और जिसका खुलासा नहीं किया गया है। दरअसल, रिवर्स अभियांत्रिकी की एक सामान्य प्रेरणा यह निर्धारित करना है कि प्रतिस्पर्धी के उत्पाद में पेटेंट उल्लंघन या कॉपीराइट उल्लंघन सम्मलित है या नहीं।

वैधता

संयुक्त राज्य

संयुक्त राज्य में, भले ही विरूपण साक्ष्य या प्रक्रिया व्यापार रहस्यों द्वारा संरक्षित है, विरूपण साक्ष्य या प्रक्रिया को रिवर्स-अभियांत्रिकी करना अधिकांशतः वैध होता है यदि इसे वैध रूप से प्राप्त किया गया हो।[40]

कंप्यूटर सॉफ्टवेयर की रिवर्स अभियांत्रिकी अधिकांशतः अनुबंध के उल्लंघन के साथ-साथ किसी भी अन्य प्रासंगिक कानून के रूप में दोनों अनुबंध कानून के अंतर्गत आती है। ऐसा इसलिए है क्योंकि अधिकांश EULA या एंड-यूज़र लाइसेंस समझौते विशेष रूप से इसे प्रतिबंधित करते हैं, और अमेरिकी अदालतों ने फैसला सुनाया है कि यदि ऐसी शर्तें सम्मलित हैं, तो वे कॉपीराइट कानून को ओवरराइड करते हैं जो स्पष्ट रूप से इसकी अनुमति देता है (बोवर्स वी बायस्टेट टेक्नोलॉजीज देखें)[41][42]). डिजिटल मिलेनियम कॉपीराइट एक्ट (U.S.C. § 1201 (f)) की धारा 103(f) के अनुसार, कानूनी कब्जे में एक व्यक्ति एक प्रोग्राम रिवर्स-इंजीनियर हो सकता है और इसके संरक्षण को पृथक कर सकता है यदि यह इंटरऑपरेबिलिटी प्राप्त करने के लिए आवश्यक है, एक शब्द जो अन्य उपकरणों और कार्यक्रमों को कवर करता है जो इसके साथ बातचीत कर सकते हैं, इसका उपयोग कर सकते हैं, और इसमें और से डेटा का उपयोग और हस्तांतरण कर सकते हैं। इसमें सीमित छूट सम्मलित है जो इस प्रकार प्राप्त ज्ञान को साझा करने और इंटरऑपरेबिलिटी उद्देश्यों के लिए उपयोग करने की अनुमति देती है।[43]

यूरोपीय संघ

कंप्यूटर प्रोग्राम डायरेक्टिव | ईयू डायरेक्टिव 2009/24 कंप्यूटर प्रोग्राम के कानूनी संरक्षण पर, जिसने पहले (1991) के निर्देश का स्थान लिया था,[44] यूरोपीय संघ में रिवर्स अभियांत्रिकी को नियंत्रित करता है।[45][46]

यह भी देखें

संदर्भ

  1. 1.0 1.1 "रिवर्स-इंजीनियरिंग क्या है? यह कैसे काम करता है". SearchSoftwareQuality (in English). Retrieved 2022-07-27.
  2. "रिवर्स इंजीनियरिंग". ethics.csc.ncsu.edu. Retrieved 2022-07-27.
  3. Thayer, Ken. "रिवर्स इंजीनियरिंग कैसे काम करती है?". globalspec. IEEE Global Spec. Retrieved 26 February 2018.
  4. Villaverde, Alejandro F.; Banga, Julio R. (6 February 2014). "सिस्टम बायोलॉजी में रिवर्स इंजीनियरिंग और पहचान: रणनीतियाँ, दृष्टिकोण और चुनौतियाँ". Journal of the Royal Society Interface. 11 (91): 20130505. doi:10.1098/rsif.2013.0505. PMC 3869153. PMID 24307566.
  5. 5.0 5.1 5.2 Chikofsky, E.J. & Cross, J.H., II (1990). "रिवर्स इंजीनियरिंग और डिजाइन रिकवरी: एक वर्गीकरण". IEEE Software. 7 (1): 13–17. doi:10.1109/52.43044. S2CID 16266661.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  6. 6.0 6.1 A Survey of Reverse Engineering and Program Comprehension. Michael L. Nelson, April 19, 1996, ODU CS 551 – Software Engineering Survey.arXiv:cs/0503068v1
  7. Vinesh Raja; Kiran J. Fernandes (2007). रिवर्स इंजीनियरिंग: एक औद्योगिक परिप्रेक्ष्य. Springer Science & Business Media. p. 3. ISBN 978-1-84628-856-2.
  8. Jonathan Band; Masanobu Katoh (2011). परीक्षण 2.0 पर इंटरफेस. MIT Press. p. 136. ISBN 978-0-262-29446-1.
  9. 9.0 9.1 9.2 Chikofsky, E. J.; Cross, J. H. (January 1990). "रिवर्स इंजीनियरिंग और डिजाइन रिकवरी: एक वर्गीकरण" (PDF). IEEE Software. 7: 13–17. doi:10.1109/52.43044. S2CID 16266661. Archived from the original (PDF) on 2018-04-17. Retrieved 2012-07-02.
  10. 10.0 10.1 10.2 10.3 10.4 10.5 10.6 10.7 Eilam, Eldad (2005). रिवर्सिंग: रिवर्स इंजीनियरिंग के रहस्य. John Wiley & Sons. ISBN 978-0-7645-7481-8.
  11. Internet Engineering Task Force RFC 2828 Internet Security Glossary
  12. Karwowski, Waldemar; Trzcielinski, Stefan; Mrugalsk, Beata; DiNicolantonio, Massimo; Rossi, Emilio (2018). विनिर्माण, उत्पादन प्रबंधन और प्रक्रिया नियंत्रण में उन्नति. pp. 287–288.
  13. Varady, T; Martin, R; Cox, J (1997). "ज्यामितीय मॉडलों की रिवर्स इंजीनियरिंग-एक परिचय". Computer-Aided Design. 29 (4): 255–268. doi:10.1016/S0010-4485(96)00054-1.
  14. "रिवर्स इंजीनियरिंग".
  15. Warden, R. (1992). सॉफ्टवेयर पुन: उपयोग और अभ्यास में रिवर्स इंजीनियरिंग. London, England: Chapman & Hall. pp. 283–305.
  16. "रिवर्स इंजीनियरिंग (WCRE) पर कार्य सम्मेलन". uni-trier.de. Computer Science bibliography. Archived from the original on 14 March 2017. Retrieved 22 February 2018.
  17. Shahbaz, Muzammil (2012). रिवर्स इंजीनियरिंग और ब्लैक-बॉक्स सॉफ़्टवेयर घटकों का परीक्षण: व्याकरण संबंधी अनुमान तकनीकों द्वारा. LAP LAMBERT Academic Publishing. ISBN 978-3659140730.
  18. Chuvakin, Anton; Cyrus Peikari (January 2004). सुरक्षा योद्धा (1st ed.). O'Reilly. Archived from the original on 2006-05-22. Retrieved 2006-05-25.
  19. Samuelson, Pamela & Scotchmer, Suzanne (2002). "रिवर्स इंजीनियरिंग का कानून और अर्थशास्त्र". Yale Law Journal. 111 (7): 1575–1663. doi:10.2307/797533. JSTOR 797533. Archived from the original on 2010-07-15. Retrieved 2011-10-31.
  20. "सांबा: एक परिचय". 2001-11-27. Retrieved 2009-05-07.
  21. Lee, Newton (2013). प्रतिवाद और साइबर सुरक्षा: कुल सूचना जागरूकता (2nd ed.). Springer Science+Business Media. p. 110. ISBN 978-1461472049.
  22. W. Cui, J. Kannan, and H. J. Wang. Discoverer: Automatic protocol reverse engineering from network traces. In Proceedings of 16th USENIX Security Symposium on USENIX Security Symposium, pp. 1–14.
  23. W. Cui, M. Peinado, K. Chen, H. J. Wang, and L. Irún-Briz. Tupni: Automatic reverse engineering of input formats. In Proceedings of the 15th ACM Conference on Computer and Communications Security, pp. 391–402. ACM, Oct 2008.
  24. 24.0 24.1 P. M. Comparetti, G. Wondracek, C. Kruegel, and E. Kirda. Prospex: Protocol specification extraction. In Proceedings of the 2009 30th IEEE Symposium on Security and Privacy, pp. 110–125, Washington, 2009. IEEE Computer Society.
  25. Gold, E (1978). "दिए गए डेटा से automaton पहचान की जटिलता". Information and Control. 37 (3): 302–320. doi:10.1016/S0019-9958(78)90562-4.
  26. D. Angluin (1987). "प्रश्नों और प्रतिउदाहरणों से नियमित सेट सीखना". Information and Computation. 75 (2): 87–106. doi:10.1016/0890-5401(87)90052-6.
  27. C.Y. Cho, D. Babic, R. Shin, and D. Song. Inference and Analysis of Formal Models of Botnet Command and Control Protocols, 2010 ACM Conference on Computer and Communications Security.
  28. Polyglot: automatic extraction of protocol message format using dynamic binary analysis. J. Caballero, H. Yin, Z. Liang, and D. Song. Proceedings of the 14th ACM conference on Computer and communications security, pp. 317–329.
  29. Wolfgang Rankl, Wolfgang Effing, Smart Card Handbook (2004)
  30. T. Welz: Smart cards as methods for payment (2008), Seminar ITS-Security Ruhr-Universität Bochum
  31. David C. Musker: Protecting & Exploiting Intellectual Property in Electronics Archived 2011-07-09 at the Wayback Machine, IBC Conferences, 10 June 1998
  32. Yeam Gordon and Vladimir Rigmant, Tupolev Tu-4: Soviet Superfortress (Hinckley, U.K.: Midland, 2002).
  33. "रेडस्टोन रॉकेट". centennialofflight.net. Retrieved 2010-04-27.
  34. "The Chinese Air Force: Evolving Concepts, Roles, and Capabilities", Center for the Study of Chinese Military Affairs (U.S), by National Defense University Press, p. 277
  35. Chandrashekar, S., R. Nagappa, L. Sundaresan, and N. Ramani. 2011. Technology & Innovation in China: A Case Study of Single Crystal Superalloy Development for Aircraft Turbine Blades, R4–11. ISSSP National Institute of Advanced Studies, Bangalore. http://isssp.in/wp-content/uploads/2013/01/Technology-and-Innovation-in-China-A-case-Study-of-Single-Crystal4.pdf; and Dillon Zhou, “China J-15 Fighter Jet: Chinese Officials Defend New Fighter As Chinese Original, but Questions Remain,” Mic, December 16, 2012, https://mic.com/articles/20270/china-j-15-fighter-jet-chinese-officials-defend-new-fighter-[permanent dead link] as-chinese-original-but-questions-remain
  36. Andrea Gilli and Mauro Gilli, "Why China Has Not Caught Up Yet: Military-Technological Superiority and the Limits of Imitation, Reverse Engineering, and Cyber Espionage, International Security 43:3 (2019 141-189, https://doi.org/10.1162/isec_a_00337.
  37. Giorgi, Federico M. (2020). "जीन नेटवर्क रिवर्स इंजीनियरिंग: द नेक्स्ट जनरेशन". Biochimica et Biophysica Acta (BBA) - Gene Regulatory Mechanisms. 1863 (6): 194523. doi:10.1016/j.bbagrm.2020.194523. ISSN 1874-9399. PMID 32145356. S2CID 212629142.
  38. Friedel, Swetlana; Usadel, Björn; von Wirén, Nicolaus; Sreenivasulu, Nese (2012). "रिवर्स इंजीनियरिंग: वैश्विक अजैविक तनाव क्रॉस-टॉक को उजागर करने के लिए सिस्टम बायोलॉजी का एक प्रमुख घटक". Frontiers in Plant Science. 3: 294. doi:10.3389/fpls.2012.00294. ISSN 1664-462X. PMC 3533172. PMID 23293646.
  39. Lefebvre, Celine; Rieckhof, Gabrielle; Califano, Andrea (2012). "रिवर्स-इंजीनियरिंग मानव नियामक नेटवर्क". Wiley Interdisciplinary Reviews: Systems Biology and Medicine. 4 (4): 311–325. doi:10.1002/wsbm.1159. ISSN 1939-5094. PMC 4128340. PMID 22246697.
  40. "Trade Secrets 101", Feature Article, March 2011. ASME. Retrieved on 2013-10-31.
  41. Baystate v. Bowers Discussion. Utsystem.edu. Retrieved on 2011-05-29.
  42. Gross, Grant. (2003-06-26) Contract case could hurt reverse engineering | Developer World. InfoWorld. Retrieved on 2011-05-29.
  43. The section states:
    (f) Reverse Engineering.—
    (1) Notwithstanding the provisions of subsection (a)(1)(A), a person who has lawfully obtained the right to use a copy of a computer program may circumvent a technological measure that effectively controls access to a particular portion of that program for the sole purpose of identifying and analyzing those elements of the program that are necessary to achieve interoperability of an independently created computer program with other programs, and that have not previously been readily available to the person engaging in the circumvention, to the extent any such acts of identification and analysis do not constitute infringement under this title.
    (2) Notwithstanding the provisions of subsections (a)(2) and (b), a person may develop and employ technological means to circumvent a technological measure, or to circumvent protection afforded by a technological measure, in order to enable the identification and analysis under paragraph (1), or for the purpose of enabling interoperability of an independently created computer program with other programs, if such means are necessary to achieve such interoperability, to the extent that doing so does not constitute infringement under this title.
    (3) The information acquired through the acts permitted under paragraph (1), and the means permitted under paragraph (2), may be made available to others if the person referred to in paragraph (1) or (2), as the case may be, provides such information or means solely for the purpose of enabling interoperability of an independently created computer program with other programs, and to the extent that doing so does not constitute infringement under this title or violate applicable law other than this section.
    (4) For purposes of this subsection, the term 「interoperability」 means the ability of computer programs to exchange information, and of such programs mutually to use the information which has been exchanged.
  44. Council Directive 91/250/EEC of 14 May 1991 on the legal protection of computer programs. Eur-lex.europa.eu. Retrieved on 2011-05-29.
  45. DIRECTIVE 2009/24/EC OF THE EUROPEAN PARLIAMENT AND OF THE COUNCIL of 23 April 2009 on the legal protection of computer programs
  46. The directive states:

    The unauthorised reproduction, translation, adaptation or transformation of the form of the code in which a copy of a computer program has been made available constitutes an infringement of the exclusive rights of the author. Nevertheless, circumstances may exist when such a reproduction of the code and translation of its form are indispensable to obtain the necessary information to achieve the interoperability of an independently created program with other programs. It has therefore to be considered that, in these limited circumstances only, performance of the acts of reproduction and translation by or on behalf of a person having a right to use a copy of the program is legitimate and compatible with fair practice and must therefore be deemed not to require the authorisation of the rightholder. An objective of this exception is to make it possible to connect all components of a computer system, including those of different manufacturers, so that they can work together. Such an exception to the author's exclusive rights may not be used in a way which prejudices the legitimate interests of the rightholder or which conflicts with a normal exploitation of the program.


स्रोत


श्रेणी:रिवर्स अभियांत्रिकी श्रेणी:कंप्यूटर सुरक्षा श्रेणी:जासूसी श्रेणी:पेटेंट कानून श्रेणी:औद्योगिक अभियांत्रिकी श्रेणी:तकनीकी बुद्धि श्रेणी:तकनीकी दौड़