2013-03-27 7 views
5

हमारी कंपनी को PHP विकास के लिए हमें भेजने से पहले गोपनीय डेटा को पहले ही स्कैबल करने की आवश्यकता है। वे हमसे पूछ रहे हैं कि इस तरह की स्थिति के लिए सबसे अच्छा तरीका क्या है।मौजूदा MySQL डेटाबेस को एन्क्रिप्ट कैसे करें?

आवश्यकता यह है कि डेटा को डिक्रिप्ट किया जाना चाहिए।

क्या ऐसा करने के लिए कोई मुफ्त/वाणिज्यिक उपकरण है या यह केवल PHP या लिनक्स कमांड द्वारा किया जा सकता है?

+1

एसएसएच या एसएसएल पर डेटा स्थानांतरित करें, या इसे पीजीपी के साथ एन्क्रिप्ट करें और इसे किसी भी कनेक्शन पर भेजें। –

+0

मैं केवल कुछ तालिकाओं में कुछ फ़ील्ड एन्क्रिप्ट करना चाहता हूं, जिसमें इसे डिक्रिप्ट करने की क्षमता है। धन्यवाद। मैं पीजीपी एन्क्रिप्शन के बारे में देखूंगा। – marknt15

+0

यह मानते हुए कि आप एक स्थान से दूसरे स्थान पर डेटाबेस स्थानांतरित कर रहे हैं, पूरी चीज़ को एन्क्रिप्ट करना आसान है। और ** बेशक ** आपके पास इसे डिक्रिप्ट करने की क्षमता होगी, अगर आपने नहीं किया है, तो यह एन्क्रिप्शन नहीं है, यह विनाश है। –

उत्तर

6

MySQL में पहले से ही encryption functions, जैसे AES_ENCRYPT() शामिल है।

आप निम्नलिखित तरीके से एक कॉलम-दर-स्तंभ के आधार पर संवेदनशील डेटा हाथापाई कर सकते हैं:

UPDATE SomeTable SET sensitive_column = AES_ENCRYPT(sensitive_column, 'password'); 

यह कम से कम स्ट्रिंग डेटा के लिए काम करता है।

+0

एईएस का उपयोग करके एन्क्रिप्ट करने का विचार अभी भी पासवर्ड की कमजोर ताकत के साथ मनोरंजक है, लेकिन फिर भी +1 है :) – Patashu

+4

@ पतरशु, यह सिर्फ एक उदाहरण था, मैं सचमुच पासवर्ड 'पासवर्ड' का उपयोग करने का सुझाव नहीं देता हूं। इसी प्रकार मुझे लगता है कि तालिका को शाब्दिक रूप से 'कुछटेबल' नाम नहीं दिया गया है। :-) –

+1

धन्यवाद। यह काम करता हैं। हमें एन्क्रिप्टेड भेजने से पहले उन्हें अपने गोपनीय डेटा के लिए मैन्युअल रूप से ऐसा करना होगा। उन्हें उन आईडी को एन्क्रिप्ट नहीं करना चाहिए जो डेटाटेबल को कनेक्ट करने के लिए उपयोग किए जा रहे हैं :) – marknt15

0

उन आवश्यकताओं के आधार पर मुझे लगता है जो वास्तव में डेटा प्रति एन्क्रिप्ट करना नहीं चाहते हैं। एक संभवतः डेटा मास्क करना चाहता है, जिसका अर्थ है उदाहरण के लिए। विकास और अनुप्रयोग परीक्षण के उद्देश्य के लिए वास्तविक नाम, पता, फोन नंबर से तालिकाओं में मूल्यों को एक नए काल्पनिक मूल्य में बदलना। http://en.wikipedia.org/wiki/Data_masking

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