2009-09-09 14 views
9

यदि मैं एक साझा होस्टिंग कंपनी पर एसवीएन में अपना स्रोत कोड संग्रहीत कर रहा हूं, तो क्या सामग्री को एन्क्रिप्ट करना संभव होगा, भले ही किसी को रेपो तक पहुंच हो, तो वे सादे दृश्य में स्रोत नहीं देख सकते हैं?क्या एसवीएन में संग्रहीत सामग्री को एन्क्रिप्ट करना संभव है?

क्या इसके लिए कोई प्लगइन है? अन्यथा मैं कल्पना करता हूं कि यह खुद को लागू करने में पागल हो जाएगा!

+0

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

उत्तर

6

सही जवाब यहाँ है या तो:

  1. एक होस्टिंग प्रदाता तुम पर भरोसा है (या एक है कि शिकायत है अगर नियामक मुद्दा समस्या है)
  2. यह होस्ट खुद
का पता लगाएं

यदि मुख्य चिंता में एक सुरक्षित ऑफसाइट बैकअप है, तो अपने आप को संग्रहित करें और बैकअप को संभालने के लिए rsync.net जैसे किसी स्थान का उपयोग करें (वे SOX/HIPAA अनुपालनशील हैं)। एक क्रॉन नौकरी जो हर 15 मिनट में सब कुछ rsyncs पर्याप्त होना चाहिए। क्रॉन जॉब इसे धक्का देने से पहले आपके बैकअप को एन्क्रिप्ट कर सकता है। बस चाबियाँ/पासवर्ड न खोएं।

इस तरह सबवर्सन को आपकी एन्क्रिप्शन योजना के बारे में कुछ भी जानने की आवश्यकता नहीं है, और आप उत्पादकता के रास्ते में पायरानिया के बारे में चिंता किए बिना अपने काम के बारे में जा सकते हैं।

अनुशेष:

जब से तुम साझा मेजबानी कर रहे हैं, और साझा मेजबान बेकार होते हैं: एक समर्पित स्रोत नियंत्रण मेजबान प्राप्त करें। कभी स्रोत नियंत्रण के लिए साझा होस्ट का उपयोग न करें। साझा मेजबान डेटा खोने और डेटा सुरक्षा और बैकअप के बारे में झूठे दावों के लिए कुख्यात हैं।समर्पित स्रोत नियंत्रण होस्ट के अच्छे उदाहरण: CVSDude, Beanstalk, GitHub

+3

+1 - यदि आप अपने मेजबान पर भरोसा नहीं करते हैं, ** एक नया खोजें! ** –

+0

मैं यह भी जोड़ूंगा कि वितरित संस्करण नियंत्रण के अच्छे दुष्प्रभावों में से एक यह है कि भंडार के प्रत्येक क्लोन अनिवार्य रूप से * है * एक बैकअप। इसके अलावा, मैं गिटहब पर भरोसा करता हूं कि मैं वास्तव में जो कुछ भी लिखता हूं उसके साथ। यह भी देखें: http://svnhub.com/ –

+0

क्या जिथब एन्क्रिप्टेड रिपोज़ को अनुमति देता है? –

0

मैथ्यू का पोस्ट एक एन्क्रिप्टेड फाइल सिस्टम के लिए है जो होस्टिंग प्रदाता को प्रदान करना होगा। यह शायद ऐसा करने का एकमात्र आसान तरीका है।

+0

यह केवल इतना नहीं है - यह रिपोजिटरी में एन्क्रिप्टेड ब्लॉब्स को भी संग्रहीत कर रहा है, प्रक्रिया में सभी उपयोगी संस्करण ट्रैकिंग को खो रहा है। –

+0

उर्ग आप सही हैं मैंने इतना विस्तार नहीं पढ़ा था। –

0

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

इसका मतलब है कि भले ही आप एक समाधान होगा:

  • यह प्रदर्शन के मामले में एक आपदा है, दोनों गणना समय और भंडारण स्थान की आवश्यकताओं और नेटवर्क बैंडविड्थ उपयोग होगा, और
  • सुविधा में एक आपदा हानि: उदाहरण के लिए सर्वर साइड डिफ को तोड़ा जाएगा, आपको क्लाइंट साइड पर पूरी तरह से डिक्रिप्ट की गई फ़ाइलों पर सभी परिचालन करना होगा।

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

मुझे उम्मीद है कि यह साबित करता है कि इस तरह से चलना किसी भी संभावित व्यावहारिक समाधान की ओर अग्रसर नहीं है। हो सकता है कि मुझसे कुछ छूट रहा हो। मैं अपने जवाब पर दिलचस्प टिप्पणियां पढ़ने की उम्मीद कर रहा हूं! :-)

1

यह पुराना है लेकिन मुझे इसके लिए अन्य समाधान मिल रहा है और दूसरों की मदद कर सकता है।

आज आप कुछ वर्चुअल प्रोवेट सर्वर (वीपीएस) बहुत सस्ते प्राप्त कर सकते हैं। ($ 5/माह)

वीपीएस क्यों? आप जो चाहते हैं उसे इंस्टॉल कर सकते हैं!

  1. TrueCrypt या अन्य एन्क्रिप्शन सिस्टम स्थापित करें।
  2. SVN
  3. स्थापित TrueCrypt ड्राइव में SVN भंडार/फ़ाइल बनाएं
  4. कॉन्फ़िगर SVN एक SSH या अन्य सुरक्षित डाटा ट्रांसफर विधि का उपयोग करने के लिए।

मैं इस लेख के साथ सब कुछ कॉन्फ़िगर करें: http://cinserely.blogspot.com.br/2010/10/creating-encrypted-subversion.html

कैसे करें (4.) http://tortoisesvn.net/sasl_howto.html

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