2011-12-05 15 views
8

के साथ डीएल पर हस्ताक्षर करने का लाभ मेरे पास एक सी # समाधान है जिसमें एकाधिक सी # कक्षा पुस्तकालय शामिल हैं। मैं हाल ही में कुछ शोध कर रहा हूं और यह सुझाव दिया जाता है कि मेरे पुस्तकालयों से उत्पन्न असेंबली पर हस्ताक्षर किए जाने चाहिए, जिससे उन्हें मजबूत नाम से हस्ताक्षर किया जा सके। सबसे पहले मैं सोच रहा हूं कि क्या यह सर्वोत्तम है कि मैं इस तरह से प्रगति करता हूं? इन कक्षा पुस्तकालयों से उत्पन्न पुस्तकालयों को कई अन्य परियोजनाओं में उपयोग किया जाता है।मजबूत नाम

यदि यह मेरे पिछले प्रश्न से सलाह दी जाती है कि हाँ मुझे अपने डीएलएस पर हस्ताक्षर करना चाहिए, मैं जिस एसएसके का उपयोग करता हूं, क्या इसका उपयोग समाधान में प्रत्येक कक्षा पुस्तकालयों के लिए किया जा सकता है? या यह कक्षा प्रति पुस्तकालय एक कुंजी होना चाहिए?

+1

अपने पहले प्रश्न के लिए, http://stackoverflow.com/questions/1197133/anything-wrong-with-not-igning-a-net-assembly और http://stackoverflow.com/questions/721340/strong देखें -signed-संयोजनों – Otiel

उत्तर

3

कभी-कभी एक असेंबली पर हस्ताक्षर करना एक आवश्यकता है। यह सच है यदि आप GAC अपनी असेंबली चाहते हैं, या यदि कोई हस्ताक्षरित असेंबली किसी अन्य असेंबली को संदर्भित करना चाहता है।

आप उसी .snk फ़ाइल का पुन: उपयोग कर सकते हैं, और ऐसा करने से सभी असेंबली के लिए एक ही सार्वजनिक कुंजी टोकन हो जाएगी।

1

यदि आप बड़ी संख्या में असेंबली द्वारा उपयोग के लिए जीएसी में असेंबली डालना चाहते हैं तो यह आवश्यक है।

यह फायदेमंद है कि आप उपयोगकर्ताओं को अपने आप को स्थापित करने के बजाय उपयोग करने के लिए इसे देने जा रहे हैं, क्योंकि यह आश्वासन प्रदान करता है कि यह वास्तव में वह फ़ाइल है जिसे आपने कहा था कि आप उन्हें एक छेड़छाड़ के बजाए दे रहे थे।

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

संबंधित मुद्दे