2010-04-29 10 views
5

मेरे पास कुछ ड्राइवर हैं जो मूल रूप से LibUSB-Win32 हैं जो एक नई .inf फ़ाइल के साथ उत्पाद/विक्रेता आईडी और स्ट्रिंग का वर्णन करने के लिए हैं जो मेरे हार्डवेयर का वर्णन करते हैं। यह 32 बिट विंडोज़ के लिए ठीक काम करता है, लेकिन 64 बिट संस्करणों में समस्याएं हैं; अर्थात् माइक्रोसॉफ्ट को उनके ज्ञान में सभी ड्राइवरों को डिजिटल हस्ताक्षर करने की आवश्यकता होती है।मुझे क्या करना है और Windows Vista/7 (32 और 64 बिट) के लिए डिवाइस ड्राइवर को प्राप्त करने के लिए कितना खर्च होता है?

तो मेरे सवालों का इस प्रकार हैं:

  1. वहाँ libusb-Win32 ड्राइवरों जो पहले से ही प्रवेश किया हुआ है मैं इस्तेमाल कर सकते हैं का एक संस्करण है?
  2. यदि पहले से ही कुछ हस्ताक्षरित नहीं हैं तो मैं canibalise कर सकते हैं, मेरे ड्राइवरों को हस्ताक्षर करने के लिए मुझे वास्तव में क्या करना है।
  3. क्या मुझे 64 और 32 बिट संस्करणों को अलग से हस्ताक्षर करने की आवश्यकता है और क्या इससे अधिक लागत आएगी?
  4. this उन्हें हस्ताक्षर करने के लिए एक नि: शुल्क विकल्प है?
  5. क्या कोई अन्य विकल्प है जिन पर मुझे विचार करना चाहिए कि मेरे ग्राहकों को boot into test mode प्रत्येक बार जब वे अपनी मशीनें शुरू करते हैं (एक विकल्प नहीं जिसे मैं मानता हूं)।
  6. क्या Verisign से अलग कोड हस्ताक्षर के लिए कोई अन्य विकल्प हैं? जाहिर है OpenID तरह कोई खाली/ओपन सोर्स पहल भयानक ;-)

उत्तर

2

आप this tutorial कि अहस्ताक्षरित चालकों पर ध्यान नहीं देता उपयोग कर सकते हैं होगा। मुझे नहीं लगता कि आप भुगतान करना चाहते हैं क्योंकि यह $ 400 अमरीकी डालर की तरह कुछ खर्च करता है!

Here is an other tutorial

तुम भी व्यवस्थापक के रूप में अध्यक्ष एवं प्रबंध निदेशक चलाने के लिए और निम्नलिखित चला सकते हैं:

bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS 
bcdedit.exe -set TESTSIGNING ON 
+5

मैं निश्चित रूप से ग्राहकों को परीक्षण मोड या अक्षम हस्ताक्षर करने में बूट करने की आवश्यकता से संकोच होता। सबसे पहले, यह अपने डेस्कटॉप पर "टेस्ट मोड" टैग डालेगा जो भ्रमित हो सकता है। दूसरा, आप उन्हें ऐसी स्थिति में डाल रहे हैं जहां हस्ताक्षरित और संभावित रूप से अविश्वसनीय कर्नेल कोड उनके सिस्टम पर लोड किया जा सके। – Michael

+0

@Micheal: मैं –

+3

सहमत हूं 'bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS' को इंगित करने के लिए वर्थ Vista Vista RTM के बाद काम नहीं करता है। – tyranid

2

आप libusb जो मौजूदा से ज्यादातर को लागू करने की कोशिश करता है की libusb-winusb संस्करण की कोशिश कर के साथ भाग प्राप्त करने में सक्षम हो सकता है Winusb ड्राइवर के आसपास कार्यक्षमता (जो एक हस्ताक्षरित एमएस बाइनरी है इसलिए आपको इसे स्वयं करने की आवश्यकता नहीं है)। हालांकि Winusb के रूप में वाईएमएमवी libusb में आवश्यक सभी कार्यक्षमताओं के लिए 100% नक्शा नहीं है।

2

वहाँ हाथ में दो अलग-अलग मुद्दे हैं:

  1. छवि फ़ाइल (यानी driver.sys फ़ाइल) पर हस्ताक्षर करना कर्नेल मोड संहिता पर हस्ताक्षर करना (KMCS)
  2. चालक पैकेज पर हस्ताक्षर करना चालक स्थापना को पूरा करने के पूरा करने के (यानी driver.cat फ़ाइल)।

यदि आप किसी अन्य इकाई द्वारा हस्ताक्षरित मौजूदा ड्राइवर लेते हैं (चाहे यह माइक्रोसॉफ्ट के WinUSB या libusb-win32 हो), जो केएमसीएस को संतुष्ट करेगा।

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

एक कोड हस्ताक्षर प्रमाणपत्र (सुनिश्चित करें कि यह केएमसीएस का समर्थन करता है!) आपको सैकड़ों अमरीकी डालर खर्च होंगे, आपके द्वारा चुने गए सीए पर निर्भर करता है। कुछ में ऐसी योजनाएं हो सकती हैं जो आपको प्रति वर्ष वैश्विक स्तर पर प्रति हस्ताक्षर कार्यक्रम का भुगतान करने की अनुमति देती हैं।यदि आपको कई संस्करणों को रिलीज़ करने की आवश्यकता नहीं है, तो यह आपके लिए सस्ता हो सकता है।

+2

विंडोज 8 में शुरू, मुझे लगता है कि आईएनएफ फाइलों पर भी हस्ताक्षर किए जाने की आवश्यकता है। विंडोज 8 से पहले, आप सही थे; बिना हस्ताक्षर किए गए ड्राइवरों को रिलीज़ करना संभव था जो WinUSB या usbser.sys का उपयोग केवल एक चेतावनी के साथ करते हैं कि प्रकाशक को सत्यापित नहीं किया जा सका। –

+2

@ डेविड ग्रेसन, आईएनएफ फ़ाइल को विंडोज 7 पर भी हस्ताक्षर किया जाना चाहिए, बस एक प्रसिद्ध सीए से एक प्रमाणीकरण प्रमाण पत्र के साथ जरूरी नहीं है। क्या यह नीति बदल गई? क्या आप मुझे किसी भी एमएसडीएन दस्तावेज़ या ब्लॉग पर इंगित कर सकते हैं? – Ilya

+0

क्षमा करें, मेरे पास आपको इंगित करने के लिए एक एमएसडीएन दस्तावेज़ नहीं है, लेकिन मेरे पास XP/Vista/7 का उपयोग करने वाले हजारों ग्राहकों को पूरी तरह से हस्ताक्षरित ड्राइवरों को सफलतापूर्वक वितरित करने का अनुभव है। विंडोज विस्टा/7 में इस संवाद का अस्तित्व भी आपको बहुत ही भरोसेमंद होना चाहिए: http://a.pololu-files.com/picture/0J1348.600.png?717531f0f7c9a7c090f22a2939a61e70 –

0

मेरे शोध के मुताबिक, डिवाइस चालक के हस्ताक्षर के लिए यूएस $ 266 जितना कम खर्च हो सकता है। मेरी समझ यह है कि केवल एक कंपनी चालक को हस्ताक्षर कर सकती है। वे व्यक्तियों के लिए ऐसा नहीं करेंगे।

रेफरी .: CERTUM Code Signing Certificates

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